<?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>215810</bug_id>
          
          <creation_ts>2020-08-25 08:48:41 -0700</creation_ts>
          <short_desc>IIRFilterNode interface is not supported</short_desc>
          <delta_ts>2020-08-26 13:40:34 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Audio</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>https://www.w3.org/TR/webaudio/#iirfilternode</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>212611</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>alecflett</cc>
    
    <cc>annulen</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jsbell</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mifenton</cc>
    
    <cc>mkwst</cc>
    
    <cc>philipj</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>tommyw</cc>
    
    <cc>toyoshim</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit.org</cc>
    
    <cc>youennf</cc>
    
    <cc>yutak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1682657</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-25 08:48:41 -0700</bug_when>
    <thetext>IIRFilterNode interface is not supported:
- https://www.w3.org/TR/webaudio/#iirfilternode</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682772</commentid>
    <comment_count>1</comment_count>
      <attachid>407224</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-25 13:34:52 -0700</bug_when>
    <thetext>Created attachment 407224
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682776</commentid>
    <comment_count>2</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-25 13:38:48 -0700</bug_when>
    <thetext>*** Bug 181195 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682784</commentid>
    <comment_count>3</comment_count>
      <attachid>407228</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-25 13:56:35 -0700</bug_when>
    <thetext>Created attachment 407228
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682791</commentid>
    <comment_count>4</comment_count>
      <attachid>407228</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-25 14:22:10 -0700</bug_when>
    <thetext>Comment on attachment 407228
Patch

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

&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:37
&gt; +    m_tailTime = m_iirFilter.tailTime(processor.sampleRate(), processor.isFilterStable());

Why not use construction syntax for this?

&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:46
&gt; +    Vector&lt;float&gt; frequency(length);

Inline capacity for better performance? How long are these likely to be?

&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.h:45
&gt; +    // AudioDSPKernel
&gt; +    void process(const float* source, float* destination, size_t framesToProcess) final;
&gt; +    double tailTime() const final { return m_tailTime; }
&gt; +    double latencyTime() const final { return 0; }
&gt; +    void reset() final;

Make these private?

&gt; Source/WebCore/platform/audio/IIRFilter.cpp:37
&gt; +const size_t IIRFilter::maxOrder = 20;
&gt; +const unsigned iirRenderingQuantum = 128;

constexpr

&gt; Source/WebCore/platform/audio/IIRFilter.cpp:41
&gt; +const int bufferLength = 32;

constexpr

&gt; Source/WebCore/platform/audio/IIRFilter.cpp:148
&gt; +            std::complex&lt;double&gt; zRecip = std::complex&lt;double&gt;(cos(omega), sin(omega));

auto

&gt; Source/WebCore/platform/audio/IIRFilter.cpp:152
&gt; +            std::complex&lt;double&gt; numerator = evaluatePolynomial(m_feedforward.data(), zRecip, m_feedforward.size() - 1);
&gt; +            std::complex&lt;double&gt; denominator = evaluatePolynomial(m_feedback.data(), zRecip, m_feedback.size() - 1);
&gt; +            std::complex&lt;double&gt; response = numerator / denominator;

auto

&gt; Source/WebCore/platform/audio/IIRFilter.cpp:164
&gt; +    const double maxTailTime = 10;

constexpr

&gt; Source/WebCore/platform/audio/IIRFilter.cpp:169
&gt; +    const float maxTailAmplitude = 1 / 32768.0;

constexpr

&gt; Source/WebCore/platform/audio/IIRFilter.h:65
&gt; +    const Vector&lt;double&gt;&amp; m_feedforward;
&gt; +    const Vector&lt;double&gt;&amp; m_feedback;

Seems like a dangerous design. What guarantees the lifetime fo the vectors?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682893</commentid>
    <comment_count>5</comment_count>
      <attachid>407264</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-25 20:00:49 -0700</bug_when>
    <thetext>Created attachment 407264
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682988</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 09:01:17 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #4)
&gt; Comment on attachment 407228 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=407228&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:37
&gt; &gt; +    m_tailTime = m_iirFilter.tailTime(processor.sampleRate(), processor.isFilterStable());
&gt; 
&gt; Why not use construction syntax for this?
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:46
&gt; &gt; +    Vector&lt;float&gt; frequency(length);
&gt; 
&gt; Inline capacity for better performance? How long are these likely to be?
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.h:45
&gt; &gt; +    // AudioDSPKernel
&gt; &gt; +    void process(const float* source, float* destination, size_t framesToProcess) final;
&gt; &gt; +    double tailTime() const final { return m_tailTime; }
&gt; &gt; +    double latencyTime() const final { return 0; }
&gt; &gt; +    void reset() final;
&gt; 
&gt; Make these private?
&gt; 
&gt; &gt; Source/WebCore/platform/audio/IIRFilter.cpp:37
&gt; &gt; +const size_t IIRFilter::maxOrder = 20;
&gt; &gt; +const unsigned iirRenderingQuantum = 128;
&gt; 
&gt; constexpr
&gt; 
&gt; &gt; Source/WebCore/platform/audio/IIRFilter.cpp:41
&gt; &gt; +const int bufferLength = 32;
&gt; 
&gt; constexpr
&gt; 
&gt; &gt; Source/WebCore/platform/audio/IIRFilter.cpp:148
&gt; &gt; +            std::complex&lt;double&gt; zRecip = std::complex&lt;double&gt;(cos(omega), sin(omega));
&gt; 
&gt; auto
&gt; 
&gt; &gt; Source/WebCore/platform/audio/IIRFilter.cpp:152
&gt; &gt; +            std::complex&lt;double&gt; numerator = evaluatePolynomial(m_feedforward.data(), zRecip, m_feedforward.size() - 1);
&gt; &gt; +            std::complex&lt;double&gt; denominator = evaluatePolynomial(m_feedback.data(), zRecip, m_feedback.size() - 1);
&gt; &gt; +            std::complex&lt;double&gt; response = numerator / denominator;
&gt; 
&gt; auto
&gt; 
&gt; &gt; Source/WebCore/platform/audio/IIRFilter.cpp:164
&gt; &gt; +    const double maxTailTime = 10;
&gt; 
&gt; constexpr
&gt; 
&gt; &gt; Source/WebCore/platform/audio/IIRFilter.cpp:169
&gt; &gt; +    const float maxTailAmplitude = 1 / 32768.0;
&gt; 
&gt; constexpr
&gt; 
&gt; &gt; Source/WebCore/platform/audio/IIRFilter.h:65
&gt; &gt; +    const Vector&lt;double&gt;&amp; m_feedforward;
&gt; &gt; +    const Vector&lt;double&gt;&amp; m_feedback;
&gt; 
&gt; Seems like a dangerous design. What guarantees the lifetime fo the vectors?

I agree it is a little dangerous. It is a memory optimization. The IIRProcessor owns those vectors. The IIRProcessor also owns the IIRDSPKernel objects, each of which has an internal IIRFilter. Those objects are not refcounted. Therefore, the IIRFilter cannot outlive its IIRDSPKernel, which cannot outlive its IIRFilter. The patch is safe as it is and avoids having multiple copies of the Vector in each kernel/filter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682989</commentid>
    <comment_count>7</comment_count>
      <attachid>407228</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 09:03:35 -0700</bug_when>
    <thetext>Comment on attachment 407228
Patch

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

&gt;&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:46
&gt;&gt; +    Vector&lt;float&gt; frequency(length);
&gt; 
&gt; Inline capacity for better performance? How long are these likely to be?

anywhere between 1 and 20 entries per vector.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682994</commentid>
    <comment_count>8</comment_count>
      <attachid>407228</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 09:14:31 -0700</bug_when>
    <thetext>Comment on attachment 407228
Patch

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

&gt;&gt;&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:46
&gt;&gt;&gt; +    Vector&lt;float&gt; frequency(length);
&gt;&gt; 
&gt;&gt; Inline capacity for better performance? How long are these likely to be?
&gt; 
&gt; anywhere between 1 and 20 entries per vector.

Do you think the following would be better?
Vector&lt;float, 20&gt; frequency(length);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682996</commentid>
    <comment_count>9</comment_count>
      <attachid>407302</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 09:16:13 -0700</bug_when>
    <thetext>Created attachment 407302
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682999</commentid>
    <comment_count>10</comment_count>
      <attachid>407303</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 09:23:36 -0700</bug_when>
    <thetext>Created attachment 407303
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683011</commentid>
    <comment_count>11</comment_count>
      <attachid>407307</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 09:52:43 -0700</bug_when>
    <thetext>Created attachment 407307
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683020</commentid>
    <comment_count>12</comment_count>
      <attachid>407228</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-26 10:20:16 -0700</bug_when>
    <thetext>Comment on attachment 407228
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:46
&gt;&gt;&gt;&gt; +    Vector&lt;float&gt; frequency(length);
&gt;&gt;&gt; 
&gt;&gt;&gt; Inline capacity for better performance? How long are these likely to be?
&gt;&gt; 
&gt;&gt; anywhere between 1 and 20 entries per vector.
&gt; 
&gt; Do you think the following would be better?
&gt; Vector&lt;float, 20&gt; frequency(length);

Yes, much better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683026</commentid>
    <comment_count>13</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 10:29:25 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #12)
&gt; Comment on attachment 407228 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=407228&amp;action=review
&gt; 
&gt; &gt;&gt;&gt;&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:46
&gt; &gt;&gt;&gt;&gt; +    Vector&lt;float&gt; frequency(length);
&gt; &gt;&gt;&gt; 
&gt; &gt;&gt;&gt; Inline capacity for better performance? How long are these likely to be?
&gt; &gt;&gt; 
&gt; &gt;&gt; anywhere between 1 and 20 entries per vector.
&gt; &gt; 
&gt; &gt; Do you think the following would be better?
&gt; &gt; Vector&lt;float, 20&gt; frequency(length);
&gt; 
&gt; Yes, much better.

Actually, my bad. I got confused with feedforward and feedback array. This one is provided by script and may be of ANY side. It is the input array and we need to compute the frequency response for each value in the array. As a result, I don&apos;t think we should use inline capacity here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683027</commentid>
    <comment_count>14</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 10:29:59 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #13)
&gt; (In reply to Darin Adler from comment #12)
&gt; &gt; Comment on attachment 407228 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=407228&amp;action=review
&gt; &gt; 
&gt; &gt; &gt;&gt;&gt;&gt; Source/WebCore/Modules/webaudio/IIRDSPKernel.cpp:46
&gt; &gt; &gt;&gt;&gt;&gt; +    Vector&lt;float&gt; frequency(length);
&gt; &gt; &gt;&gt;&gt; 
&gt; &gt; &gt;&gt;&gt; Inline capacity for better performance? How long are these likely to be?
&gt; &gt; &gt;&gt; 
&gt; &gt; &gt;&gt; anywhere between 1 and 20 entries per vector.
&gt; &gt; &gt; 
&gt; &gt; &gt; Do you think the following would be better?
&gt; &gt; &gt; Vector&lt;float, 20&gt; frequency(length);
&gt; &gt; 
&gt; &gt; Yes, much better.
&gt; 
&gt; Actually, my bad. I got confused with feedforward and feedback array. This
&gt; one is provided by script and may be of ANY side. It is the input array and

any *size*.

&gt; we need to compute the frequency response for each value in the array. As a
&gt; result, I don&apos;t think we should use inline capacity here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683033</commentid>
    <comment_count>15</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-08-26 10:40:55 -0700</bug_when>
    <thetext>Sure, I assumed it might be of any size. I was asking what it is *likely* to be.

Inline capacity is designed so that it can be used even when the input can be of any size. It saves allocation/deallocation any time the size is small enough, and heap is still used any time the size is higher. It does cost greater stack depth, and the memory use is greater when the stack is wasted, but that’s really the only tradeoff other than it being costly to move such vectors around.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683035</commentid>
    <comment_count>16</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 10:42:25 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #15)
&gt; Sure, I assumed it might be of any size. I was asking what it is *likely* to
&gt; be.
&gt; 
&gt; Inline capacity is designed so that it can be used even when the input can
&gt; be of any size. It saves allocation/deallocation any time the size is small
&gt; enough, and heap is still used any time the size is higher. It does cost
&gt; greater stack depth, and the memory use is greater when the stack is wasted,
&gt; but that’s really the only tradeoff other than it being costly to move such
&gt; vectors around.

Understood. However, I am more convinced it is more likely to be any given size, at least not to my knowledge.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683039</commentid>
    <comment_count>17</comment_count>
      <attachid>407311</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 10:52:11 -0700</bug_when>
    <thetext>Created attachment 407311
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683040</commentid>
    <comment_count>18</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 10:53:14 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #17)
&gt; Created attachment 407311 [details]
&gt; Patch

Trying to get build fixed on Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683062</commentid>
    <comment_count>19</comment_count>
      <attachid>407315</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-26 11:43:37 -0700</bug_when>
    <thetext>Created attachment 407315
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683091</commentid>
    <comment_count>20</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-26 13:09:44 -0700</bug_when>
    <thetext>Committed r266186: &lt;https://trac.webkit.org/changeset/266186&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 407315.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683108</commentid>
    <comment_count>21</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-26 13:40:34 -0700</bug_when>
    <thetext>&lt;rdar://problem/67826590&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407224</attachid>
            <date>2020-08-25 13:34:52 -0700</date>
            <delta_ts>2020-08-25 13:56:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200825133451.patch</filename>
            <type>text/plain</type>
            <size>124773</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uYjFmMzJhYTM2YTI5MGNkNWUyYzI3ZmViMDc4MmFj
ZmFmMzhkMDA4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTA4LTI1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgor
ICAgICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQor
CisgICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2Zp
bGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9B
dWRpb05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJp
bmcpOgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNz
YXJ5KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAq
IE1vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpCYXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8v
QmFzZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BL
ZXJuZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQ
S2VybmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAg
ICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8v
SUlSRmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFi
bGUpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVs
ZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRp
by9JSVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRp
by9JSVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nv
cjo6SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlBy
b2Nlc3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6
CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2Vi
Q29yZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9k
dWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50
eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRl
UG9seW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJ
UkZpbHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1
ZW5jeVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgor
ICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3Mg
R2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5p
dGlhbGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRp
YWxpemF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJkNGY4YmU3NmQ1MzFkMDMyNjNjMTYw
MjY0MjYzOGU4YWYxMzNhNTkuLjI5ZjExN2ZjOWVjOWU5YWUwOTk2Y2JlMmMyNzA2YzQ4M2NjZWRk
MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00ODgsNiArNDg4LDggQEAgc2V0KFdlYkNvcmVf
Tk9OX1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nv
ck9wdGlvbnMuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICAgICBNb2R1
bGVzL3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbAorICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmls
dGVyTm9kZS5pZGwKKyAgICBNb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsCiAg
ICAgTW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBi
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMjU0
MmVmMWM1Y2FhOGQ3MGY4MTAzNzRiMmIwYzJhOWI3YTAwOTU4Mi4uMjVkYzcwYzEwMGZmZmFjNGQy
ZjgyNjI5NWQyNWM1NjhiNTA4YzU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0zMzksNiArMzM5LDggQEAgJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAogJChQUk9KRUNUX0RJ
UikvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbAogJChQUk9K
RUNUX0RJUikvTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01v
ZHVsZXMvd2ViYXVkaW8vR2Fpbk9wdGlvbnMuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL01l
ZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2Vi
YXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Qg
Yi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAy
NzkxZTRkMTk5YzM1MmMxOGY0NTI0NzEwMDAxOWE4MGFjNTE3MmE4Li5hNTYwMDM0MzNkOTU1NjE2
MTMwODJhNDliMjMxYmYwY2YzZTkyNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtOTgyLDYgKzk4MiwxMCBAQCAkKEJVSUxUX1BS
T0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lEQlRyYW5zYWN0aW9uTW9kZS5j
cHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJh
bnNhY3Rpb25Nb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaAorJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2RlLmNwcAor
JChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJO
b2RlLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSUlS
RmlsdGVyT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9X
ZWJDb3JlL0pTSUlSRmlsdGVyT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0lkbGVEZWFkbGluZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZURlYWRsaW5lLmgKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJhMTA3OTI1MzRiYjNmMmQ1N2U2MjIx
MWQ2MDMxNjYzN2Y2ZTY5MmQuLmUyZmI4YTkyNTU4NGYzMTAyZmRhY2I0NDdkMmU3NDNmM2ZkNTQz
OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDIwLDYgKzQyMCw4IEBAIEpT
X0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1p
Y3NDb21wcmVzc29yT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRp
by9HYWluTm9kZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9HYWluT3B0
aW9ucy5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2Rl
LmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMu
aWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9T
b3VyY2VOb2RlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxl
bWVudEF1ZGlvU291cmNlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJh
dWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCBcCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKaW5kZXggNDFkZDEzZGVhN2U3Y2E3
NDc0NmI2NjQ1OThkMDNkMDBkYjQxZjVhOS4uYmIyYWU5MGU0ZGIyYTcwYzU1ZDc0MDM0N2I5MGY0
MGQ3NjFhZjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9B
dWRpb05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9O
b2RlLmNwcApAQCAtOTQsNyArOTQsOCBAQCBTdHJpbmcgY29udmVydEVudW1lcmF0aW9uVG9TdHJp
bmcoQXVkaW9Ob2RlOjpOb2RlVHlwZSBlbnVtZXJhdGlvblZhbHVlKQogICAgIHN0YXRpY19hc3Nl
cnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlQmFzaWNJbnNwZWN0b3Ip
ID09IDE4LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUJhc2ljSW5zcGVjdG9yIGlzIG5vdCAxOCBhcyBl
eHBlY3RlZCIpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05v
ZGU6Ok5vZGVUeXBlQ29uc3RhbnQpID09IDE5LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCBpcyBu
b3QgMTkgYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVf
dD4oQXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbykgPT0gMjAsICJBdWRpb05vZGU6Ok5vZGVUeXBl
U3RlcmVvIGlzIG5vdCAyMCBhcyBleHBlY3RlZCIpOwotICAgIHN0YXRpY19hc3NlcnQoc3RhdGlj
X2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlRW5kKSA9PSAyMSwgIkF1ZGlvTm9kZTo6
Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNz
ZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlcikgPT0g
MjEsICJBdWRpb05vZGU6Ok5vZGVUeXBlSUlSRmlsdGVyIGlzIG5vdCAyMSBhcyBleHBlY3RlZCIp
OworICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVU
eXBlRW5kKSA9PSAyMiwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjIgYXMg
ZXhwZWN0ZWQiKTsKIAogICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9u
VmFsdWUpIDwgV1RGX0FSUkFZX0xFTkdUSCh2YWx1ZXMpKTsKICAgICAKQEAgLTU1Myw3ICs1NTQs
NyBAQCB2b2lkIEF1ZGlvTm9kZTo6ZGlzYWJsZU91dHB1dHNJZk5lY2Vzc2FyeSgpCiAgICAgICAg
IC8vIGxvbmdlciBhbnkgYWN0aXZlIGNvbm5lY3Rpb25zLgogICAgICAgICAvLyBBbHNvLCBXYXZl
U2hhcGVyTm9kZSBtYXkgcHJvZHVjZSBub24tc2lsZW5jZSBldmVuIHdoZW4gaXQgbm8gbG9uZ2Vy
IGhhcyBhbnkgb3V0cHV0LiBGb3IgdGhpcyByZWFzb24sIHdlIGNhbm5vdAogICAgICAgICAvLyBk
aXNhYmxlIGl0IGVpdGhlci4KLSAgICAgICAgaWYgKG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVDb252
b2x2ZXIgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZURlbGF5ICYmIG5vZGVUeXBlKCkgIT0gTm9k
ZVR5cGVXYXZlU2hhcGVyKSB7CisgICAgICAgIGlmIChub2RlVHlwZSgpICE9IE5vZGVUeXBlQ29u
dm9sdmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxheSAmJiBub2RlVHlwZSgpICE9IE5v
ZGVUeXBlV2F2ZVNoYXBlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlSUlSRmlsdGVyKSB7CiAg
ICAgICAgICAgICBtX2lzRGlzYWJsZWQgPSB0cnVlOwogICAgICAgICAgICAgZm9yIChhdXRvJiBv
dXRwdXQgOiBtX291dHB1dHMpCiAgICAgICAgICAgICAgICAgb3V0cHV0LT5kaXNhYmxlKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAppbmRleCA3MWJjYmRj
NWM2NGNiYTE1MWE4YzdlYzU1YWFjM2Q4ZDExYWVjN2M3Li5mOTY1ZWEwNTJkZDk5OTYxN2EwMzYw
YjM3ZGI5ZmE0OWZjYjBmYzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0F1ZGlvTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
QXVkaW9Ob2RlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBOb2RlVHlwZUJh
c2ljSW5zcGVjdG9yLAogICAgICAgICBOb2RlVHlwZUNvbnN0YW50LAogICAgICAgICBOb2RlVHlw
ZVN0ZXJlbywKKyAgICAgICAgTm9kZVR5cGVJSVJGaWx0ZXIsCiAgICAgICAgIE5vZGVUeXBlRW5k
CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9C
YXNlQXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5jcHAKaW5kZXggODI1NDRjNmE2NGMyOWUzZDk0NTE2YTMzZjdmNzQzMWI4
MWRlZWVlYi4uMjNlNzZkOGYxNTE0YWJlMDg1M2Y3Y2Y1MzE4N2JhY2I0ZTcxMzg2MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQu
Y3BwCkBAIC02MCw2ICs2MCw4IEBACiAjaW5jbHVkZSAiR2VuZXJpY0V2ZW50UXVldWUuaCIKICNp
bmNsdWRlICJIUlRGRGF0YWJhc2VMb2FkZXIuaCIKICNpbmNsdWRlICJIUlRGUGFubmVyLmgiCisj
aW5jbHVkZSAiSUlSRmlsdGVyTm9kZS5oIgorI2luY2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIK
ICNpbmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJy
ZWQuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC02MzAsNiArNjMyLDE3IEBAIEV4Y2VwdGlv
bk9yPFJlZjxTdGVyZW9QYW5uZXJOb2RlPj4gQmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlU3RlcmVv
UGFubmVyKCkKICAgICByZXR1cm4gU3RlcmVvUGFubmVyTm9kZTo6Y3JlYXRlKCp0aGlzKTsKIH0K
IAorRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5vZGU+PiBCYXNlQXVkaW9Db250ZXh0OjpjcmVh
dGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkZm9yd2FyZCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkYmFj
aykKK3sKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOworCisgICAgQVNTRVJUKGlzTWFp
blRocmVhZCgpKTsKKyAgICBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnM7CisgICAgb3B0aW9ucy5m
ZWVkZm9yd2FyZCA9IFdURk1vdmUoZmVlZGZvcndhcmQpOworICAgIG9wdGlvbnMuZmVlZGJhY2sg
PSBXVEZNb3ZlKGZlZWRiYWNrKTsKKyAgICByZXR1cm4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsICp0aGlzLCBXVEZNb3ZlKG9wdGlvbnMpKTsKK30KKwogdm9p
ZCBCYXNlQXVkaW9Db250ZXh0Ojpub3RpZnlOb2RlRmluaXNoZWRQcm9jZXNzaW5nKEF1ZGlvTm9k
ZSogbm9kZSkKIHsKICAgICBBU1NFUlQoaXNBdWRpb1RocmVhZCgpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggNDRjMmNl
NzZlMGRjNjU3MGI1ZmYxYTU5NDhiOTBlYmIxZGFiYjkzZi4uNjdmMzQ5MjQ5NzAxZWMwM2I2ODgw
OTQxZjgxZjliODc1YmZjODllMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTcwLDYgKzcwLDcgQEAgY2xhc3MgRG9jdW1l
bnQ7CiBjbGFzcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlOwogY2xhc3MgR2Fpbk5vZGU7CiBjbGFz
cyBIVE1MTWVkaWFFbGVtZW50OworY2xhc3MgSUlSRmlsdGVyTm9kZTsKIGNsYXNzIE1haW5UaHJl
YWRHZW5lcmljRXZlbnRRdWV1ZTsKIGNsYXNzIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZTsK
IGNsYXNzIE1lZGlhU3RyZWFtOwpAQCAtNzgsNiArNzksNyBAQCBjbGFzcyBNZWRpYVN0cmVhbUF1
ZGlvU291cmNlTm9kZTsKIGNsYXNzIE9zY2lsbGF0b3JOb2RlOwogY2xhc3MgUGFubmVyTm9kZTsK
IGNsYXNzIFBlcmlvZGljV2F2ZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFz
cyBTY3JpcHRQcm9jZXNzb3JOb2RlOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTdGVy
ZW9QYW5uZXJOb2RlOwpAQCAtMTY0LDYgKzE2Niw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25P
cjxSZWY8UGVyaW9kaWNXYXZlPj4gY3JlYXRlUGVyaW9kaWNXYXZlKFZlY3RvcjxmbG9hdD4mJiBy
ZWFsLCBWZWN0b3I8ZmxvYXQ+JiYgaW1hZ2luYXJ5LCBjb25zdCBQZXJpb2RpY1dhdmVDb25zdHJh
aW50cyYgPSB7IH0pOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxDb25zdGFudFNvdXJjZU5vZGU+PiBj
cmVhdGVDb25zdGFudFNvdXJjZSgpOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxTdGVyZW9QYW5uZXJO
b2RlPj4gY3JlYXRlU3RlcmVvUGFubmVyKCk7CisgICAgRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRl
ck5vZGU+PiBjcmVhdGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFZlY3Rvcjxk
b3VibGU+JiYgZmVlZGZvcndhcmQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spOwogCiAgICAg
Ly8gV2hlbiBhIHNvdXJjZSBub2RlIGhhcyBubyBtb3JlIHByb2Nlc3NpbmcgdG8gZG8gKGhhcyBm
aW5pc2hlZCBwbGF5aW5nKSwgdGhlbiBpdCB0ZWxscyB0aGUgY29udGV4dCB0byBkZXJlZmVyZW5j
ZSBpdC4KICAgICB2b2lkIG5vdGlmeU5vZGVGaW5pc2hlZFByb2Nlc3NpbmcoQXVkaW9Ob2RlKik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0Nv
bnRleHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250
ZXh0LmlkbAppbmRleCBjNjVjYjE5NmI3MzYxZjk3ZjBmOTljMDVmN2E5ZTEwNmIwYjQxY2FhLi4z
MWYwMWJiZWU0NzFmZDQ2ZWQwYWM1ODQ1ODU2NGVjMzVlMDI2YTljIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTY2
LDYgKzY2LDcgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIFBlcmlvZGljV2F2ZSBjcmVhdGVQ
ZXJpb2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+IHJlYWwsIHNlcXVlbmNlPGZsb2F0PiBpbWFnLCBv
cHRpb25hbCBQZXJpb2RpY1dhdmVPcHRpb25zIG9wdGlvbnMpOwogICAgIFtNYXlUaHJvd0V4Y2Vw
dGlvbl0gQ29uc3RhbnRTb3VyY2VOb2RlIGNyZWF0ZUNvbnN0YW50U291cmNlKCk7CiAgICAgW01h
eVRocm93RXhjZXB0aW9uXSBTdGVyZW9QYW5uZXJOb2RlIGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOwor
ICAgIFtNYXlUaHJvd0V4Y2VwdGlvbiwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0g
SUlSRmlsdGVyTm9kZSBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiBmZWVkZm9yd2Fy
ZCwgc2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFjayk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGlu
ZyBhbmQgbWVyZ2luZwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gQ2hhbm5lbFNwbGl0dGVyTm9k
ZSBjcmVhdGVDaGFubmVsU3BsaXR0ZXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBudW1iZXJPZk91
dHB1dHMgPSA2KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSRFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQ
S2VybmVsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NDZmMTdhMTNmYzI1ZmRkOWZlNzdiNzM5NTM1MzQ1NTI5
NDY3MDY4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJEU1BLZXJuZWwuY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAx
NiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJE
U1BLZXJuZWwuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitJSVJEU1BLZXJuZWw6OklJUkRT
UEtlcm5lbChJSVJQcm9jZXNzb3ImIHByb2Nlc3NvcikKKyAgICA6IEF1ZGlvRFNQS2VybmVsKCZw
cm9jZXNzb3IpCisgICAgLCBtX2lpckZpbHRlcihwcm9jZXNzb3IuZmVlZGZvcndhcmQoKSwgcHJv
Y2Vzc29yLmZlZWRiYWNrKCkpCit7CisgICAgbV90YWlsVGltZSA9IG1faWlyRmlsdGVyLnRhaWxU
aW1lKHByb2Nlc3Nvci5zYW1wbGVSYXRlKCksIHByb2Nlc3Nvci5pc0ZpbHRlclN0YWJsZSgpKTsK
K30KKwordm9pZCBJSVJEU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxl
bmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0
KiBwaGFzZVJlc3BvbnNlKQoreworICAgIEFTU0VSVChmcmVxdWVuY3lIeik7CisgICAgQVNTRVJU
KG1hZ1Jlc3BvbnNlKTsKKyAgICBBU1NFUlQocGhhc2VSZXNwb25zZSk7CisKKyAgICBWZWN0b3I8
ZmxvYXQ+IGZyZXF1ZW5jeShsZW5ndGgpOworICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlx
dWlzdCgpOworCisgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBub3JtYWxp
emVkIGZyZXF1ZW5jeSAoMCAtPiAxKSwgd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1aXN0IGZyZXF1
ZW5jeS4KKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spCisgICAgICAg
IGZyZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKKworICAgIG1faWlyRmls
dGVyLmdldEZyZXF1ZW5jeVJlc3BvbnNlKGxlbmd0aCwgZnJlcXVlbmN5LmRhdGEoKSwgbWFnUmVz
cG9uc2UsIHBoYXNlUmVzcG9uc2UpOworfQorCit2b2lkIElJUkRTUEtlcm5lbDo6cHJvY2Vzcyhj
b25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1By
b2Nlc3MpCit7CisgICAgQVNTRVJUKHNvdXJjZSk7CisgICAgQVNTRVJUKGRlc3RpbmF0aW9uKTsK
KworICAgIG1faWlyRmlsdGVyLnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Q
cm9jZXNzKTsKK30KKwordm9pZCBJSVJEU1BLZXJuZWw6OnJlc2V0KCkKK3sKKyAgICBtX2lpckZp
bHRlci5yZXNldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBF
TkFCTEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9JSVJEU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
RFNQS2VybmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjI2MDcyZTJkZDRmOGIxZWYwMDQxMGZmZWJhZGRkYmQz
YTNhMjlhMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2
IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJh
Z21hIG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsLmgiCisjaW5jbHVkZSAiSUlSRmls
dGVyLmgiCisjaW5jbHVkZSAiSUlSUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsK
KworY2xhc3MgSUlSRFNQS2VybmVsIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsIHsKK3B1
YmxpYzoKKyAgICBleHBsaWNpdCBJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJik7CisKKyAgICAv
LyBHZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0
aGUgZ2l2ZW4gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBp
cyBpbiByYWRpYW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVu
Z3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQq
IHBoYXNlUmVzcG9uc2UpOworCisgICAgLy8gQXVkaW9EU1BLZXJuZWwKKyAgICB2b2lkIHByb2Nl
c3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0aW9uLCBzaXplX3QgZnJhbWVz
VG9Qcm9jZXNzKSBmaW5hbDsKKyAgICBkb3VibGUgdGFpbFRpbWUoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBtX3RhaWxUaW1lOyB9CisgICAgZG91YmxlIGxhdGVuY3lUaW1lKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gMDsgfQorICAgIHZvaWQgcmVzZXQoKSBmaW5hbDsKKworcHJpdmF0ZToKKyAgICBJ
SVJQcm9jZXNzb3IqIGlpclByb2Nlc3NvcigpIHsgcmV0dXJuIHN0YXRpY19jYXN0PElJUlByb2Nl
c3Nvcio+KHByb2Nlc3NvcigpKTsgfQorCisgICAgSUlSRmlsdGVyIG1faWlyRmlsdGVyOworICAg
IGRvdWJsZSBtX3RhaWxUaW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uODI5ZjE0YTFkNzc1ZmZlODMyODE5YjJlOGU4M2FlMzQ3YjQ4YTJjNwotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5j
cHAKQEAgLTAsMCArMSwxNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0g
QXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJGaWx0ZXJOb2RlLmgiCisK
KyNpbmNsdWRlICJJSVJGaWx0ZXIuaCIKKyNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBM
KElJUkZpbHRlck5vZGUpOworCisvLyBEZXRlcm1pbmUgaWYgZmlsdGVyIGlzIHN0YWJsZSBiYXNl
ZCBvbiB0aGUgZmVlZGJhY2sgY29lZmZpY2llbnRzLgorLy8gV2UgY29tcHV0ZSB0aGUgcmVmbGVj
dGlvbiBjb2VmZmljaWVudHMgZm9yIHRoZSBmaWx0ZXIuIElmLCBhdCBhbnkKKy8vIHBvaW50LCB0
aGUgbWFnbml0dWRlIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50IGlzIGdyZWF0ZXIgdGhh
bgorLy8gb3IgZXF1YWwgdG8gMSwgdGhlIGZpbHRlciBpcyBkZWNsYXJlZCB1bnN0YWJsZS4KKy8v
CisvLyBMZXQgQSh6KSBiZSB0aGUgZmVlZGJhY2sgcG9seW5vbWlhbCBnaXZlbiBieQorLy8gICBB
W25dKHopID0gMSArIGFbMV0veiArIGFbMl0vel4yICsgLi4uICsgYVtuXS96Xm4KKy8vCisvLyBU
aGUgZmlyc3QgcmVmbGVjdGlvbiBjb2VmZmljaWVudCBrW25dID0gYVtuXS4gVGhlbiwgcmVjdXJz
aXZlbHkgY29tcHV0ZQorLy8KKy8vICAgQVtuLTFdKHopID0gKEFbbl0oeikgLSBrW25dKkFbbl0o
MS96KS96Xm4pLygxLWtbbl1eMik7CisvLworLy8gc3RvcHBpbmcgYXQgQVsxXSh6KS4gSWYgYXQg
YW55IHBvaW50IHxrW25dfCA+PSAxLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlLgorc3RhdGljIGJv
b2wgaXNGaWx0ZXJTdGFibGUoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKQoreworICAg
IC8vIE1ha2UgYSBjb3B5IG9mIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMKKyAgICBWZWN0b3I8
ZG91YmxlPiBjb2VmZmljaWVudHMoZmVlZGJhY2spOworICAgIGludCBvcmRlciA9IGNvZWZmaWNp
ZW50cy5zaXplKCkgLSAxOworCisgICAgLy8gSWYgbmVjZXNzYXJ5LCBub3JtYWxpemUgZmlsdGVy
IGNvZWZmaWNpZW50cyBzbyB0aGF0IGNvbnN0YW50IHRlcm0gaXMgMS4KKyAgICBpZiAoY29lZmZp
Y2llbnRzWzBdICE9IDEpIHsKKyAgICAgICAgZm9yIChpbnQgbSA9IDE7IG0gPD0gb3JkZXI7ICsr
bSkKKyAgICAgICAgICAgIGNvZWZmaWNpZW50c1ttXSAvPSBjb2VmZmljaWVudHNbMF07CisgICAg
ICAgIGNvZWZmaWNpZW50c1swXSA9IDE7CisgICAgfQorCisgICAgLy8gQmVnaW4gcmVjdXJzaW9u
LCB1c2luZyBhIHdvcmsgYXJyYXkgdG8gaG9sZCBpbnRlcm1lZGlhdGUgcmVzdWx0cy4KKyAgICBW
ZWN0b3I8ZG91YmxlPiB3b3JrKG9yZGVyICsgMSk7CisgICAgZm9yIChpbnQgbiA9IG9yZGVyOyBu
ID49IDE7IC0tbikgeworICAgICAgICBkb3VibGUgayA9IGNvZWZmaWNpZW50c1tuXTsKKworICAg
ICAgICBpZiAoc3RkOjpmYWJzKGspID49IDEpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisK
KyAgICAgICAgLy8gTm90ZSB0aGF0IEFbbl0oMS96KS96Xm4gaXMgYmFzaWNhbGx5IHRoZSBjb2Vm
ZmljaWVudHMgb2YgQVtuXQorICAgICAgICAvLyBpbiByZXZlcnNlIG9yZGVyLgorICAgICAgICBk
b3VibGUgZmFjdG9yID0gMSAtIGsgKiBrOworICAgICAgICBmb3IgKGludCBtID0gMDsgbSA8PSBu
OyArK20pCisgICAgICAgICAgICB3b3JrW21dID0gKGNvZWZmaWNpZW50c1ttXSAtIGsgKiBjb2Vm
ZmljaWVudHNbbiAtIG1dKSAvIGZhY3RvcjsKKyAgICAgICAgY29lZmZpY2llbnRzLnN3YXAod29y
ayk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK0V4Y2VwdGlvbk9yPFJlZjxJSVJG
aWx0ZXJOb2RlPj4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQsIElJUkZp
bHRlck9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIGlmIChjb250ZXh0LmlzU3RvcHBlZCgpKQor
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKKworICAgIGNv
bnRleHQubGF6eUluaXRpYWxpemUoKTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkZm9yd2FyZC5z
aXplKCkgfHwgb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXplKCkgPiBJSVJGaWx0ZXI6Om1heE9yZGVy
KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJmZWVkZm9y
d2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCJfcyB9OworCisg
ICAgYXV0byBub25aZXJvVmFsdWVJbmRleCA9IG9wdGlvbnMuZmVlZGZvcndhcmQuZmluZE1hdGNo
aW5nKFtdKGF1dG8mIHZhbHVlKSB7IHJldHVybiAhIXZhbHVlOyB9KTsKKyAgICBpZiAobm9uWmVy
b1ZhbHVlSW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZh
bGlkU3RhdGVFcnJvciwgImZlZWRmb3J3YXJkIGFycmF5IG11c3QgY29udGFpbiBhIG5vbi16ZXJv
IHZhbHVlIl9zIH07CisKKyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpIHx8IG9wdGlv
bnMuZmVlZGJhY2suc2l6ZSgpID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiZmVlZGJhY2sgYXJyYXkgbXVzdCBoYXZl
IGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGlmICghb3B0aW9ucy5mZWVk
YmFja1swXSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAi
Zmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iX3MgfTsKKworICAg
IGJvb2wgaXNGaWx0ZXJTdGFibGUgPSBXZWJDb3JlOjppc0ZpbHRlclN0YWJsZShvcHRpb25zLmZl
ZWRiYWNrKTsKKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICBzY3JpcHRFeGVjdXRp
b25Db250ZXh0LmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2
ZWw6Oldhcm5pbmcsICJJSVJGaWx0ZXIgaXMgdW5zdGFibGUgd2l0aCBwcm92aWRlZCBmZWVkYmFj
ayBjb2VmZmljaWVudHMiX3MpOworCisgICAgYXV0byBub2RlID0gYWRvcHRSZWYoKm5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIG9wdGlvbnMuZmVlZGZvcndhcmQsIG9wdGlvbnMuZmVlZGJhY2ss
IGlzRmlsdGVyU3RhYmxlKSk7CisKKyAgICBhdXRvIHJlc3VsdCA9IG5vZGUtPmhhbmRsZUF1ZGlv
Tm9kZU9wdGlvbnMob3B0aW9ucywgeyAyLCBDaGFubmVsQ291bnRNb2RlOjpNYXgsIENoYW5uZWxJ
bnRlcnByZXRhdGlvbjo6U3BlYWtlcnMgfSk7CisgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKKyAgICByZXR1
cm4gbm9kZTsKK30KKworSUlSRmlsdGVyTm9kZTo6SUlSRmlsdGVyTm9kZShCYXNlQXVkaW9Db250
ZXh0JiBjb250ZXh0LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZl
Y3Rvcjxkb3VibGU+JiBmZWVkYmFjaywgYm9vbCBpc0ZpbHRlclN0YWJsZSkKKyAgICA6IEF1ZGlv
QmFzaWNQcm9jZXNzb3JOb2RlKGNvbnRleHQpCit7CisgICAgc2V0Tm9kZVR5cGUoTm9kZVR5cGVJ
SVJGaWx0ZXIpOworICAgIG1fcHJvY2Vzc29yID0gbWFrZVVuaXF1ZTxJSVJQcm9jZXNzb3I+KGNv
bnRleHQuc2FtcGxlUmF0ZSgpLCAxLCBmZWVkZm9yd2FyZCwgZmVlZGJhY2ssIGlzRmlsdGVyU3Rh
YmxlKTsKKworICAgIGluaXRpYWxpemUoKTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gSUlSRmls
dGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5JiBmcmVxdWVuY3lIeiwg
RmxvYXQzMkFycmF5JiBtYWdSZXNwb25zZSwgRmxvYXQzMkFycmF5JiBwaGFzZVJlc3BvbnNlKQor
eworICAgIGF1dG8gZXhwZWN0ZWRMZW5ndGggPSBmcmVxdWVuY3lIei5sZW5ndGgoKTsKKyAgICBp
ZiAobWFnUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGggfHwgcGhhc2VSZXNwb25z
ZS5sZW5ndGgoKSAhPSBleHBlY3RlZExlbmd0aCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IEludmFsaWRBY2Nlc3NFcnJvciwgIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoIl9z
IH07CisKKyAgICAvLyBOb3RoaW5nIHRvIGRvIGlmIHRoZSBsZW5ndGggaXMgMC4KKyAgICBpZiAo
ZXhwZWN0ZWRMZW5ndGggPiAwKQorICAgICAgICBpaXJQcm9jZXNzb3IoKS0+Z2V0RnJlcXVlbmN5
UmVzcG9uc2UoZXhwZWN0ZWRMZW5ndGgsIGZyZXF1ZW5jeUh6LmRhdGEoKSwgbWFnUmVzcG9uc2Uu
ZGF0YSgpLCBwaGFzZVJlc3BvbnNlLmRhdGEoKSk7CisKKyAgICByZXR1cm4geyB9OworfQorCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kNmEwNTAzNjc5YTM3MDg5N2Y3MDQ0ZGMwNDUwM2FmYjgzN2U5ZDc0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmgK
QEAgLTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1bSBBdXRo
b3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1
ZGUgIkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVyT3B0aW9u
cy5oIgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3Jl
L0Zsb2F0MzJBcnJheS5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkZpbHRl
ck5vZGUgZmluYWwgOiBwdWJsaWMgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUgeworICAgIFdURl9N
QUtFX0lTT19BTExPQ0FURUQoSUlSRmlsdGVyTm9kZSk7CitwdWJsaWM6CisgICAgc3RhdGljIEV4
Y2VwdGlvbk9yPFJlZjxJSVJGaWx0ZXJOb2RlPj4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmLCBCYXNlQXVkaW9Db250ZXh0JiwgSUlSRmlsdGVyT3B0aW9ucyYmKTsKKworICAgIEV4Y2Vw
dGlvbk9yPHZvaWQ+IGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSYgZnJlcXVlbmN5
SHosIEZsb2F0MzJBcnJheSYgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSYgcGhhc2VSZXNwb25z
ZSk7CisKK3ByaXZhdGU6CisgICAgSUlSRmlsdGVyTm9kZShCYXNlQXVkaW9Db250ZXh0JiwgY29u
c3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVl
ZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOworCisgICAgSUlSUHJvY2Vzc29yKiBpaXJQcm9j
ZXNzb3IoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxJSVJQcm9jZXNzb3IqPihwcm9jZXNzb3IoKSk7
IH0KK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkZGM1YWMzY2Yy
Nzg5YzEzNzNjZmYyMDQ2Nzc4NDE4NGNlNjRjMjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCkBAIC0wLDAgKzEsMzIg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisg
KiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMK
KyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJfQVVESU8sCisgICAgSlNHZW5l
cmF0ZVRvSlNPYmplY3QsCisgICAgRW5hYmxlZEJ5U2V0dGluZz1Nb2Rlcm5VbnByZWZpeGVkV2Vi
QXVkaW8sCitdIGludGVyZmFjZSBJSVJGaWx0ZXJOb2RlIDogQXVkaW9Ob2RlIHsKKyAgICBbTWF5
VGhyb3dFeGNlcHRpb24sIENhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVj
dG9yKEJhc2VBdWRpb0NvbnRleHQgYXVkaW9Db250ZXh0LCBJSVJGaWx0ZXJPcHRpb25zIG9wdGlv
bnMpOworICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25zZShG
bG9hdDMyQXJyYXkgZnJlcXVlbmN5SHosIEZsb2F0MzJBcnJheSBtYWdSZXNwb25zZSwgRmxvYXQz
MkFycmF5IHBoYXNlUmVzcG9uc2UpOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWIwMmY1OTc2Mzk1NGQ0
MjNmNTRiNDcyZWRmMWVmOWIwYzZmMWUzMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5oCkBAIC0wLDAgKzEsNDEgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAq
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKworI2lu
Y2x1ZGUgIkF1ZGlvTm9kZU9wdGlvbnMuaCIKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05vZGVP
cHRpb25zIHsKKyAgICBWZWN0b3I8ZG91YmxlPiBmZWVkZm9yd2FyZDsKKyAgICBWZWN0b3I8ZG91
YmxlPiBmZWVkYmFjazsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8v
IEVOQUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9JSVJGaWx0ZXJPcHRpb25zLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MWYzNDc4NzcxZWUxMjQ5MWJi
NmE1MDFlNWY4YjJlMjgyMjYxZTMxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25zLmlkbApAQCAtMCwwICsxLDMwIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElN
UExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCitbCisgICAgQ29uZGl0aW9uYWw9V0VCX0FVRElPCitdIGRpY3Rpb25hcnkgSUlS
RmlsdGVyT3B0aW9ucyA6IEF1ZGlvTm9kZU9wdGlvbnMgeworICAgIHJlcXVpcmVkIHNlcXVlbmNl
PGRvdWJsZT4gZmVlZGZvcndhcmQ7CisgICAgcmVxdWlyZWQgc2VxdWVuY2U8ZG91YmxlPiBmZWVk
YmFjazsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UlByb2Nlc3Nvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nl
c3Nvci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNjViNDI3MzA5YTM3NzEyNDJhYTAwNWRjY2JlMDU5ZmVkZWRk
YjAzMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSUHJvY2Vzc29yLmNwcApAQCAtMCwwICsxLDEwNSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2
IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoV0VCX0FVRElPKQorI2luY2x1ZGUgIklJUlBy
b2Nlc3Nvci5oIgorCisjaW5jbHVkZSAiSUlSRFNQS2VybmVsLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworSUlSUHJvY2Vzc29yOjpJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5z
aWduZWQgbnVtYmVyT2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJk
LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpCisg
ICAgOiBBdWRpb0RTUEtlcm5lbFByb2Nlc3NvcihzYW1wbGVSYXRlLCBudW1iZXJPZkNoYW5uZWxz
KQorICAgICwgbV9mZWVkZm9yd2FyZChmZWVkZm9yd2FyZCkKKyAgICAsIG1fZmVlZGJhY2soZmVl
ZGJhY2spCisgICAgLCBtX2lzRmlsdGVyU3RhYmxlKGlzRmlsdGVyU3RhYmxlKQoreworICAgIHVu
c2lnbmVkIGZlZWRiYWNrTGVuZ3RoID0gZmVlZGJhY2suc2l6ZSgpOworICAgIHVuc2lnbmVkIGZl
ZWRmb3J3YXJkTGVuZ3RoID0gZmVlZGZvcndhcmQuc2l6ZSgpOworICAgIEFTU0VSVChmZWVkYmFj
a0xlbmd0aCA+IDApOworICAgIEFTU0VSVChmZWVkZm9yd2FyZExlbmd0aCA+IDApOworCisgICAg
Ly8gTmVlZCB0byBzY2FsZSB0aGUgZmVlZGJhY2sgYW5kIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50
cyBhcHByb3ByaWF0ZWx5LgorICAgIC8vIChJdCdzIHVwIHRvIHRoZSBjYWxsZXIgdG8gZW5zdXJl
IGZlZWRiYWNrQ29lZlswXSBpcyBub3QgMC4pCisgICAgQVNTRVJUKCEhZmVlZGJhY2tbMF0pOwor
CisgICAgaWYgKGZlZWRiYWNrWzBdICE9IDEpIHsKKyAgICAgICAgLy8gVGhlIHByb3ZpZGVkIGZp
bHRlciBpczoKKyAgICAgICAgLy8KKyAgICAgICAgLy8gICBhWzBdKnkobikgKyBhWzFdKnkobi0x
KSArIC4uLiA9IGJbMF0qeChuKSArIGJbMV0qeChuLTEpICsgLi4uCisgICAgICAgIC8vCisgICAg
ICAgIC8vIFdlIHdhbnQgdGhlIGxlYWRpbmcgY29lZmZpY2llbnQgb2YgeShuKSB0byBiZSAxOgor
ICAgICAgICAvLworICAgICAgICAvLyAgIHkobikgKyBhWzFdL2FbMF0qeShuLTEpICsgLi4uID0g
YlswXS9hWzBdKngobikgKyBiWzFdL2FbMF0qeChuLTEpICsgLi4uCisgICAgICAgIC8vCisgICAg
ICAgIC8vIFRodXMsIHRoZSBmZWVkYmFjayBhbmQgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIG5l
ZWQgdG8gYmUgc2NhbGVkIGJ5IDEvYVswXS4KKyAgICAgICAgZmxvYXQgc2NhbGUgPSBmZWVkYmFj
a1swXTsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBrID0gMTsgayA8IGZlZWRiYWNrTGVuZ3RoOyAr
K2spCisgICAgICAgICAgICBtX2ZlZWRiYWNrW2tdIC89IHNjYWxlOworCisgICAgICAgIGZvciAo
dW5zaWduZWQgayA9IDA7IGsgPCBmZWVkZm9yd2FyZExlbmd0aDsgKytrKQorICAgICAgICAgICAg
bV9mZWVkZm9yd2FyZFtrXSAvPSBzY2FsZTsKKworICAgICAgICAvLyBUaGUgSUlSRmlsdGVyIGNo
ZWNrcyB0byBtYWtlIHN1cmUgdGhpcyBjb2VmZmljaWVudCBpcyAxLCBzbyBtYWtlIGl0IHNvLgor
ICAgICAgICBtX2ZlZWRiYWNrWzBdID0gMTsKKyAgICB9CisKKyAgICBtX3Jlc3BvbnNlS2VybmVs
ID0gbWFrZVVuaXF1ZTxJSVJEU1BLZXJuZWw+KCp0aGlzKTsKK30KKworSUlSUHJvY2Vzc29yOjp+
SUlSUHJvY2Vzc29yKCkKK3sKKyAgICBpZiAoaXNJbml0aWFsaXplZCgpKQorICAgICAgICB1bmlu
aXRpYWxpemUoKTsKK30KKworc3RkOjp1bmlxdWVfcHRyPEF1ZGlvRFNQS2VybmVsPiBJSVJQcm9j
ZXNzb3I6OmNyZWF0ZUtlcm5lbCgpCit7CisgICAgcmV0dXJuIG1ha2VVbmlxdWU8SUlSRFNQS2Vy
bmVsPigqdGhpcyk7Cit9CisKK3ZvaWQgSUlSUHJvY2Vzc29yOjpwcm9jZXNzKGNvbnN0IEF1ZGlv
QnVzKiBzb3VyY2UsIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2Vz
cykKK3sKKyAgICBpZiAoIWlzSW5pdGlhbGl6ZWQoKSkgeworICAgICAgICBkZXN0aW5hdGlvbi0+
emVybygpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gRm9yIGVhY2ggY2hhbm5l
bCBvZiBvdXIgaW5wdXQsIHByb2Nlc3MgdXNpbmcgdGhlIGNvcnJlc3BvbmRpbmcgSUlSRFNQS2Vy
bmVsCisgICAgLy8gaW50byB0aGUgb3V0cHV0IGNoYW5uZWwuCisgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBtX2tlcm5lbHMuc2l6ZSgpOyArK2kpCisgICAgICAgIG1fa2VybmVsc1tpXS0+cHJv
Y2Vzcyhzb3VyY2UtPmNoYW5uZWwoaSktPmRhdGEoKSwgZGVzdGluYXRpb24tPmNoYW5uZWwoaSkt
Pm11dGFibGVEYXRhKCksIGZyYW1lc1RvUHJvY2Vzcyk7Cit9CisKK3ZvaWQgSUlSUHJvY2Vzc29y
OjpnZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVx
dWVuY3lIeiwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSkKK3sKKyAg
ICBtX3Jlc3BvbnNlS2VybmVsLT5nZXRGcmVxdWVuY3lSZXNwb25zZShsZW5ndGgsIGZyZXF1ZW5j
eUh6LCBtYWdSZXNwb25zZSwgcGhhc2VSZXNwb25zZSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5oIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NGM1ZWQ5ZGY4ZTU5
YjdlNzNjMjA0ZWIwYzNhMTQyNjVjYTY0MmRkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaApAQCAtMCwwICsxLDU5IEBACisv
KgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisg
KiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMK
KyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQXVkaW9EU1BLZXJuZWxQ
cm9jZXNzb3IuaCIKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgSUlSRFNQS2VybmVsOworCitjbGFzcyBJSVJQcm9jZXNzb3IgZmluYWwgOiBw
dWJsaWMgQXVkaW9EU1BLZXJuZWxQcm9jZXNzb3IgeworcHVibGljOgorICAgIElJUlByb2Nlc3Nv
cihmbG9hdCBzYW1wbGVSYXRlLCB1bnNpZ25lZCBudW1iZXJPZkNoYW5uZWxzLCBjb25zdCBWZWN0
b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaywg
Ym9vbCBpc0ZpbHRlclN0YWJsZSk7CisgICAgfklJUlByb2Nlc3NvcigpOworCisgICAgLy8gQXVk
aW9EU1BLZXJuZWxQcm9jZXNzb3IuCisgICAgdm9pZCBwcm9jZXNzKGNvbnN0IEF1ZGlvQnVzKiBz
b3VyY2UsIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykgZmlu
YWw7CisgICAgc3RkOjp1bmlxdWVfcHRyPEF1ZGlvRFNQS2VybmVsPiBjcmVhdGVLZXJuZWwoKSBm
aW5hbDsKKworICAgIC8vIEdldCB0aGUgbWFnbml0dWRlIGFuZCBwaGFzZSByZXNwb25zZSBvZiB0
aGUgZmlsdGVyIGF0IHRoZSBnaXZlbiBzZXQgb2YgZnJlcXVlbmNpZXMgKGluIEh6KS4gVGhlIHBo
YXNlIHJlc3BvbnNlIGlzIGluIHJhZGlhbnMuCisgICAgdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25z
ZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3lIeiwgZmxvYXQqIG1hZ1Jl
c3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSk7CisKKyAgICBjb25zdCBWZWN0b3I8ZG91Ymxl
PiYgZmVlZGZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX2ZlZWRmb3J3YXJkOyB9CisgICAgY29u
c3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKCkgY29uc3QgeyByZXR1cm4gbV9mZWVkYmFjazsg
fQorICAgIGJvb2wgaXNGaWx0ZXJTdGFibGUoKSBjb25zdCB7IHJldHVybiBtX2lzRmlsdGVyU3Rh
YmxlOyB9CisKK3ByaXZhdGU6CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVkZm9yd2FyZDsKKyAg
ICBWZWN0b3I8ZG91YmxlPiBtX2ZlZWRiYWNrOworICAgIGJvb2wgbV9pc0ZpbHRlclN0YWJsZTsK
KworICAgIHN0ZDo6dW5pcXVlX3B0cjxJSVJEU1BLZXJuZWw+IG1fcmVzcG9uc2VLZXJuZWw7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGRlNDlmZDI2NmI2
YTg0YjljODUzYjZjNWQ5NGZlMzhiMjYwMzEzMzcuLjM2MjY2NWFiMTcxMzFmMmNmMzdmOGFkZjg5
MDU0MDViZjI5NzI2YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0yMjEsNiArMjIxLDkgQEAgTW9kdWxl
cy93ZWJhdWRpby9EZWxheU5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlvL0RlbGF5UHJvY2Vzc29y
LmNwcAogTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmNwcAogTW9kdWxl
cy93ZWJhdWRpby9HYWluTm9kZS5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2VybmVsLmNw
cAorTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcAorTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwCiBNb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVudEF1ZGlvU291cmNl
Tm9kZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vTWVkaWFTdHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9k
ZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAKQEAgLTE3
OTksNiArMTgwMiw3IEBAIHBsYXRmb3JtL2F1ZGlvL0hSVEZEYXRhYmFzZUxvYWRlci5jcHAKIHBs
YXRmb3JtL2F1ZGlvL0hSVEZFbGV2YXRpb24uY3BwCiBwbGF0Zm9ybS9hdWRpby9IUlRGS2VybmVs
LmNwcAogcGxhdGZvcm0vYXVkaW8vSFJURlBhbm5lci5jcHAKK3BsYXRmb3JtL2F1ZGlvL0lJUkZp
bHRlci5jcHAKIHBsYXRmb3JtL2F1ZGlvL011bHRpQ2hhbm5lbFJlc2FtcGxlci5jcHAKIHBsYXRm
b3JtL2F1ZGlvL1Bhbm5lci5jcHAKIHBsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9u
LmNwcApAQCAtMzAzNCw2ICszMDM4LDggQEAgSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCiBK
U0lkbGVEZWFkbGluZS5jcHAKIEpTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKIEpTSWRsZVJlcXVl
c3RPcHRpb25zLmNwcAorSlNJSVJGaWx0ZXJOb2RlLmNwcAorSlNJSVJGaWx0ZXJPcHRpb25zLmNw
cAogSlNJbWFnZUJpdG1hcC5jcHAKIEpTSW1hZ2VCaXRtYXBPcHRpb25zLmNwcAogSlNJbWFnZUJp
dG1hcFJlbmRlcmluZ0NvbnRleHQuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggM2EzNjFhYTk4ZTljMjdiMzlmNzJiYzI1YWY5
OGZmMDBjYTYwM2IzMC4uZGMyOTgzYmI1M2NiOTFlYTdmYmU4ODBhNWRlZDJlYTJhM2QzNjFmNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtMjQzMyw2ICsyNDMzLDcgQEAKIAkJODMwNzg0QjIxQzUyRUUyQzAwMTA0RDFEIC8qIFhN
TERvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzA3ODRCMTFDNTJFRTE5MDAxMDREMUQgLyogWE1MRG9jdW1lbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4MzBBMUM3RDI0REI3ODhCMDAy
RUNDQUQgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBBMUM3QzI0REI3ODcwMDAyRUNDQUQg
LyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggKi87IH07CiAJCTgzMEEzNkJEMURB
QzVGQUQwMDZEN0QwOSAvKiBKU01vdXNlRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBBMzZCQjFEQUM1RkE3MDA2RDdEMDkgLyogSlNN
b3VzZUV2ZW50SW5pdC5oICovOyB9OworCQk4MzBEMEI2OTI0RjU3RDY3MDA3RUQxMjIgLyogSUlS
UHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi87IH07CiAJCTgz
MEVFQUJBMjREQjZBNjQwMDlFRkJDRSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBFRUFCNzI0
REI2QTUyMDA5RUZCQ0UgLyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5oICovOyB9Owog
CQk4MzEwMkIyNzFGOUVBREQ5MDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzEwMkIyMzFG
OUVBREMyMDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi87IH07CiAJCTgz
MTFDMDAzMUZBQTJFOTUwMEUzQzhFNSAvKiBTV1NlcnZlckpvYlF1ZXVlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzExQzAwMjFGQUEyRTg5MDBFM0M4
RTUgLyogU1dTZXJ2ZXJKb2JRdWV1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CkBAIC0yNDU5LDEyICsyNDYwLDE1IEBACiAJCTgzNDhCRkFDMUI4NTcy
OTgwMDkxMkYzNiAvKiBDbGFzc0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNDhCRkFBMUI4NTcyOTUwMDkxMkYzNiAvKiBDbGFzc0Nv
bGxlY3Rpb24uaCAqLzsgfTsKIAkJODM0Q0JGQzIyNERDNzg2NzAwQzJBM0Q4IC8qIE1lZGlhU3Ry
ZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzRDQkZCRjI0REM3ODU1MDBDMkEzRDggLyogTWVkaWFTdHJlYW1BdWRp
b1NvdXJjZU9wdGlvbnMuaCAqLzsgfTsKIAkJODM0REZBRDAxRjdEQUU1RDAwQzI3MjVCIC8qIFNo
YXJlZFN0cmluZ0hhc2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM1MDUxQTQy
NEY1NzNDNDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggKi87IH07CisJCTgzNTA1MUE1MjRGNTczQzgwMDk5MTFENyAvKiBJSVJGaWx0
ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzUwNTFBMDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICovOyB9Owog
CQk4MzUyMEM3RTFBNzFCRkNDMDA2QkQyQUEgLyogQ1NTRm9udEZhbWlseS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MjBDN0QxQTcxQkZDQzAwNkJE
MkFBIC8qIENTU0ZvbnRGYW1pbHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQk4MzU2Rjk3RjI0RDlGODE4MDA2QzNFNDEgLyogV2ViS2l0QXVkaW9M
aXN0ZW5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
ODM1NkY5N0UyNEQ5RjgwOTAwNkMzRTQxIC8qIFdlYktpdEF1ZGlvTGlzdGVuZXIuaCAqLzsgfTsK
IAkJODM1OENCNzAxQzUzMjc3NTAwRTBDMkQ4IC8qIEpTWE1MRG9jdW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzRjU3MEFEMUM1MzI2OEUwMDdG
RDZDQiAvKiBKU1hNTERvY3VtZW50LmggKi87IH07CiAJCTgzNUQyRDc4MUY1RjFGQkQwMDE0MURF
RCAvKiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1RDJENzUxRjVGMUZCODAwMTQxREVEIC8qIEhUTUxJ
bnB1dEVsZW1lbnRFbnRyaWVzQVBJLmggKi87IH07CiAJCTgzNUQzNjM3MTlGRjYxOTMwMDRDOTNB
QiAvKiBTdHlsZUJ1aWxkZXJDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDgzNUQzNjM2MTlGRjYxOTMwMDRDOTNBQiAvKiBTdHlsZUJ1aWxkZXJD
dXN0b20uaCAqLzsgfTsKIAkJODM1RDU0QzUxRjRERTUzODAwRTYwNjcxIC8qIERpcmVjdG9yeUZp
bGVMaXN0Q3JlYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODM1RDU0QzIxRjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRv
ci5oICovOyB9OworCQk4MzVEQTkwMjI0RjU4MjY1MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEQTkwMTI0
RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggKi87IH07CiAJCTgzNjJFOEMxMjBDRUY5
Q0IwMDI0NTg4NiAvKiBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjJFOEJGMjBDRUY5Q0IwMDI0NTg4
NiAvKiBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4MzY1ODlERTFGNTRBNzY5MDBEQzMxRjQgLyog
SlNGaWxlU3lzdGVtRGlyZWN0b3J5UmVhZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4MzY1ODlEOTFGNTRBNzYyMDBEQzMxRjQgLyogSlNGaWxlU3lz
dGVtRGlyZWN0b3J5UmVhZGVyLmggKi87IH07CiAJCTgzNjU4OUUwMUY1NEE3NkUwMERDMzFGNCAv
KiBKU0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjU4OUQ4MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVT
eXN0ZW1FbnRyaWVzQ2FsbGJhY2suaCAqLzsgfTsKQEAgLTI1MDQsNiArMjUwOCw3IEBACiAJCTgz
OTk0NzEwMUY1MEI2RkEwMEU5RDg2QiAvKiBKU0RPTUZpbGVTeXN0ZW0uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOTk0NzBFMUY1MEI2RjMwMEU5RDg2
QiAvKiBKU0RPTUZpbGVTeXN0ZW0uaCAqLzsgfTsKIAkJODM5QTJGMkUxRTIwNEE3MTAwMzkwNTdF
IC8qIFdlYkdMU3RhdGVUcmFja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzlBMkYyQzFFMjA0QTZEMDAzOTA1N0UgLyogV2ViR0xTdGF0ZVRyYWNr
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4
MzlBQUZFRDFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOUFBRkVCMUEwQzBDOEQwMDYwNUY5
OSAvKiBIVE1MV0JSRWxlbWVudC5oICovOyB9OworCQk4MzlCRTZENTI0RjU4NzYyMDA0REY1MEYg
LyogSUlSRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmlsdGVyLmggKi87IH07CiAJCTgz
QTJBQkRCMjREODZERTAwMEUyRDczRCAvKiBEZWxheU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzQTJBQkQ4MjREODZEQzYwMEUyRDczRCAv
KiBEZWxheU9wdGlvbnMuaCAqLzsgfTsKIAkJODNBOEFDNDAxRkFCQkZFNTAwMjA2NEFDIC8qIFNl
cnZpY2VXb3JrZXJJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4M0E4QUMzRTFGQUJCRkQxMDAyMDY0QUMgLyogU2VydmljZVdvcmtlcklk
ZW50aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk4M0IxQTcwMjI0OTk4NUYwMDBGRTU5NjEgLyogV2ViS2l0QXVkaW9Db250ZXh0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0IxQTZGRjI0OTk4
NUQwMDBGRTU5NjEgLyogV2ViS2l0QXVkaW9Db250ZXh0LmggKi87IH07CkBAIC0xMDQ0NSw2ICsx
MDQ1MCw4IEBACiAJCTgzMEExQzdDMjREQjc4NzAwMDJFQ0NBRCAvKiBNZWRpYUVsZW1lbnRBdWRp
b1NvdXJjZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VP
cHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEEzNkJBMURBQzVGQTcw
MDZEN0QwOSAvKiBKU01vdXNlRXZlbnRJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTW91c2VFdmVudEluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk4MzBBMzZCQjFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50SW5pdC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01vdXNlRXZlbnRJbml0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMEQwQjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQ
cm9jZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSUHJvY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTgzMEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3Iu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSUlSUHJvY2Vzc29yLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODMwRUVBQjcyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNz
Q29tcHJlc3Nvck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0RHluYW1pY3NDb21wcmVzc29y
Tm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzBFRUFCOTI0REI2QTUyMDA5
RUZCQ0UgLyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0RHlu
YW1pY3NDb21wcmVzc29yTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgz
MTAyQjIzMUY5RUFEQzIwMEU0MDRCOSAvKiBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDQ5OCw2ICsxMDUwNSwxMSBAQAogCQk4
MzRERDRGMzFCRTA4OTg5MDAyQzlDM0UgLyogUGFnZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBhZ2VNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJlZFN0cmluZ0hhc2guaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM0REZBQ0UxRjdEQUU1NzAwQzI3MjVCIC8qIFNoYXJl
ZFN0cmluZ0hhc2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2hh
cmVkU3RyaW5nSGFzaC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTA1MTlF
MjRGNTczQUQwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IElJUkZpbHRlck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFB
MDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
SVJGaWx0ZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTA1MUEx
MjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJSVJGaWx0ZXJOb2Rl
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTIyNEY1NzNBRjAwOTkx
MUQ3IC8qIElJUkZpbHRlck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSRmlsdGVyTm9kZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMzI0RjU3M0FGMDA5OTExRDcgLyog
SUlSRmlsdGVyT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVyT3B0aW9ucy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3MURBNTlCNjIwMDM1NTQyNCAvKiBTY3JvbGxM
b2dpY2FsUG9zaXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xs
TG9naWNhbFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3
MURBNTlCNjIwMDM1NTQzNSAvKiBTY3JvbGxJbnRvVmlld09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3MURBNTlCNjIwMDM1NjQyNCAvKiBTY3JvbGxCZWhh
dmlvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxCZWhhdmlvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTA1MjAsNiArMTA1MzIsOCBAQAogCQk4
MzVEMzYzNjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQnVpbGRlckN1c3RvbS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk4MzVENTRDMTFGNERFNTM0MDBFNjA2NzEgLyogRGlyZWN0b3J5
RmlsZUxpc3RDcmVhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNUQ1NEMyMUY0REU1MzQwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlyZWN0b3J5RmlsZUxpc3RDcmVh
dG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNURBOEZGMjRGNTgyNTcwMDIy
RERBNCAvKiBJSVJEU1BLZXJuZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSUlSRFNQS2VybmVs
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1REE5MDEyNEY1ODI1NzAwMjJE
REE0IC8qIElJUkRTUEtlcm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJEU1BLZXJuZWwuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1RjhCMjYxRDJEOTBCQTAwRTQwOEVDIC8qIFNs
b3RhYmxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTbG90YWJsZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNjJFOEJGMjBDRUY5Q0IwMDI0NTg4NiAvKiBTaG91bGRU
cmVhdEFzQ29udGludWluZ0xvYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNjU4OUQ4MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJh
Y2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlU3lzdGVtRW50cmll
c0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDYwNCw2ICsxMDYx
OCw4IEBACiAJCTgzOUEyRjJDMUUyMDRBNkQwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTFN0YXRlVHJhY2tlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzlBQUZFQTFBMEMwQzhEMDA2MDVGOTkgLyog
SFRNTFdCUkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SFRNTFdCUkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzlBQUZF
QjFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSFRNTFdCUkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM5QkU2RDIyNEY1ODc1NTAwNERGNTBGIC8qIElJUkZpbHRlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJODM5QkU2RDQyNEY1ODc1NTAwNERGNTBGIC8qIElJUkZpbHRlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJGaWx0ZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVsYXlPcHRp
b25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlbGF5T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk4M0EyQUJEQTI0RDg2REM3MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25zLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBEZWxheU9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4M0E0
QTlGODFDRTdGRDdFMDA3MDlCMDAgLyogSlNYTUxEb2N1bWVudEN1c3RvbS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1hNTERvY3VtZW50Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI5Njc5LDYgKzI5Njk1LDE1IEBACiAJCQkJRkQz
MTVGQzQxMkIwMjY3NTAwQzFBMzU5IC8qIEdhaW5Ob2RlLmlkbCAqLywKIAkJCQk4Mzc0NUNGRjI0
RDg5OUMyMDBGQkRDQzQgLyogR2Fpbk9wdGlvbnMuaCAqLywKIAkJCQk4Mzc0NUQwMTI0RDg5OUMy
MDBGQkRDQzQgLyogR2Fpbk9wdGlvbnMuaWRsICovLAorCQkJCTgzNURBOEZGMjRGNTgyNTcwMDIy
RERBNCAvKiBJSVJEU1BLZXJuZWwuY3BwICovLAorCQkJCTgzNURBOTAxMjRGNTgyNTcwMDIyRERB
NCAvKiBJSVJEU1BLZXJuZWwuaCAqLywKKwkJCQk4MzUwNTE5RTI0RjU3M0FEMDA5OTExRDcgLyog
SUlSRmlsdGVyTm9kZS5jcHAgKi8sCisJCQkJODM1MDUxQTIyNEY1NzNBRjAwOTkxMUQ3IC8qIElJ
UkZpbHRlck5vZGUuaCAqLywKKwkJCQk4MzUwNTFBMTI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmls
dGVyTm9kZS5pZGwgKi8sCisJCQkJODM1MDUxQTAyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRl
ck9wdGlvbnMuaCAqLywKKwkJCQk4MzUwNTFBMzI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVy
T3B0aW9ucy5pZGwgKi8sCisJCQkJODMwRDBCNjgyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nl
c3Nvci5jcHAgKi8sCisJCQkJODMwRDBCNjYyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nlc3Nv
ci5oICovLAogCQkJCUZENkYyNTI5MTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRpYUVsZW1lbnRBdWRp
b1NvdXJjZU5vZGUuY3BwICovLAogCQkJCUZENkYyNTJBMTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRp
YUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaCAqLywKIAkJCQlGRDZGMjUyQjEzRjVFRjBFMDA2NTE2
NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmlkbCAqLywKQEAgLTI5ODMyLDYgKzI5
ODU3LDggQEAKIAkJCQlGRDMxNjA2OTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURktlcm5lbC5oICov
LAogCQkJCUZEMzE2MDZBMTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGUGFubmVyLmNwcCAqLywKIAkJ
CQlGRDMxNjA2QjEyQjAyNkY3MDBDMUEzNTkgLyogSFJURlBhbm5lci5oICovLAorCQkJCTgzOUJF
NkQ0MjRGNTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovLAorCQkJCTgzOUJFNkQyMjRG
NTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLywKIAkJCQlGREIxNzAwMzE0QTJCQUIyMDBB
MkI1RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmNwcCAqLywKIAkJCQlGREIxNzAwNDE0QTJC
QUIyMDBBMkI1RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmggKi8sCiAJCQkJNDE2RkQyNUQy
NDBFRTFBRTAwNjY2MUQ4IC8qIE5vd1BsYXlpbmdJbmZvLmggKi8sCkBAIC0zMTQ1MCw2ICszMTQ3
NywxMSBAQAogCQkJCUMzQ0YxN0E3MTVCMDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdldE9ic2VydmVy
UmVnaXN0cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCThBQjRCQzc3MTI2RkRCNzEwMERFQjcyNyAv
KiBJZ25vcmVEZXN0cnVjdGl2ZVdyaXRlQ291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNDY3MzAyMDIxQzRFRkU3ODAwQkNCMzU3IC8qIElnbm9yZU9wZW5zRHVyaW5nVW5sb2Fk
Q291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1REE5MDIyNEY1ODI2NTAw
MjJEREE0IC8qIElJUkRTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM5QkU2RDUyNEY1
ODc2MjAwNERGNTBGIC8qIElJUkZpbHRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1MDUxQTQy
NEY1NzNDNDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgz
NTA1MUE1MjRGNTczQzgwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4MzBEMEI2OTI0RjU3RDY3MDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCMjc1MzU3MDBCMDUzODE0MDAyQ0U2NEYgLyogSW1hZ2UuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTU1QTMzNkY5MUQ4MjFFM0MwMDIyQzRDNyAvKiBJbWFnZUJhY2tpbmdTdG9y
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE4MTVBMzExRjlBNkM4RjAwRkNCRjg5IC8qIEltYWdl
Qml0bWFwLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dlYkNvcmVCdWlsdGluTmFtZXMuaAppbmRleCAyMjRkYmMyZTYzMzllNjRkNTA2M2ViMmNkNWI5
ODEzZmZlNzM2MmQ4Li42ZDA5ZjIxZjZkYTFkM2VjYTIxOTAxYjg2MTM4ZTAzY2U1MDBjMjU4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5o
CkBAIC0xNDMsNiArMTQzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIG1hY3JvKElEQlJl
cXVlc3QpIFwKICAgICBtYWNybyhJREJUcmFuc2FjdGlvbikgXAogICAgIG1hY3JvKElEQlZlcnNp
b25DaGFuZ2VFdmVudCkgXAorICAgIG1hY3JvKElJUkZpbHRlck5vZGUpIFwKICAgICBtYWNybyhJ
bWFnZUJpdG1hcCkgXAogICAgIG1hY3JvKEltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dCkgXAog
ICAgIG1hY3JvKElkbGVEZWFkbGluZSkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vSUlSRmlsdGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0lJUkZpbHRlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWNmNWQ3YjgxMmU3YmJjZjk5MzVjOTg0MmMxMDVh
MDUxMGQ4ZDUzMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0lJUkZpbHRlci5jcHAKQEAgLTAsMCArMSwyMzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAx
NiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIklJUkZpbHRlci5oIgorCisjaW5jbHVkZSAiVmVj
dG9yTWF0aC5oIgorI2luY2x1ZGUgPGFsZ29yaXRobT4KKyNpbmNsdWRlIDxjb21wbGV4PgorI2lu
Y2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY29uc3Qg
c2l6ZV90IElJUkZpbHRlcjo6bWF4T3JkZXIgPSAyMDsKK2NvbnN0IHVuc2lnbmVkIGlpclJlbmRl
cmluZ1F1YW50dW0gPSAxMjg7CisKKy8vIFRoZSBsZW5ndGggb2YgdGhlIG1lbW9yeSBidWZmZXJz
IGZvciB0aGUgSUlSIGZpbHRlci4gVGhpcyBNVVNUIGJlIGEgcG93ZXIgb2YKKy8vIHR3byBhbmQg
bXVzdCBiZSBncmVhdGVyIHRoYW4gdGhlIHBvc3NpYmxlIGxlbmd0aCBvZiB0aGUgZmlsdGVyIGNv
ZWZmaWNpZW50cy4KK2NvbnN0IGludCBidWZmZXJMZW5ndGggPSAzMjsKK3N0YXRpY19hc3NlcnQo
YnVmZmVyTGVuZ3RoID49IElJUkZpbHRlcjo6bWF4T3JkZXIgKyAxLCAiSW50ZXJuYWwgSUlSIGJ1
ZmZlciBsZW5ndGggbXVzdCBiZSBncmVhdGVyIHRoYW4gbWF4aW11bSBJSVIgRmlsdGVyIG9yZGVy
LiIpOworCitzdGF0aWMgc3RkOjpjb21wbGV4PGRvdWJsZT4gZXZhbHVhdGVQb2x5bm9taWFsKGNv
bnN0IGRvdWJsZSogY29lZmZpY2llbnRzLCBzdGQ6OmNvbXBsZXg8ZG91YmxlPiB6LCBpbnQgb3Jk
ZXIpCit7CisgICAgLy8gVXNlIEhvcm5lcidzIG1ldGhvZCB0byBldmFsdWF0ZSB0aGUgcG9seW5v
bWlhbCBQKHopID0gc3VtKGNvZWZba10qel5rLCBrLCAwLCBvcmRlcik7CisgICAgc3RkOjpjb21w
bGV4PGRvdWJsZT4gcmVzdWx0ID0gMDsKKyAgICBmb3IgKGludCBrID0gb3JkZXI7IGsgPj0gMDsg
LS1rKQorICAgICAgICByZXN1bHQgPSByZXN1bHQgKiB6ICsgc3RkOjpjb21wbGV4PGRvdWJsZT4o
Y29lZmZpY2llbnRzW2tdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitJSVJGaWx0ZXI6OklJ
UkZpbHRlcihjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rvcjxk
b3VibGU+JiBmZWVkYmFjaykKKyAgICA6IG1fZmVlZGZvcndhcmQoZmVlZGZvcndhcmQpCisgICAg
LCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQoreworICAgIG1feEJ1ZmZlci5maWxsKDAsIGJ1ZmZlckxl
bmd0aCk7CisgICAgbV95QnVmZmVyLmZpbGwoMCwgYnVmZmVyTGVuZ3RoKTsKK30KKwordm9pZCBJ
SVJGaWx0ZXI6OnJlc2V0KCkKK3sKKyAgICBtX3hCdWZmZXIuZmlsbCgwKTsKKyAgICBtX3lCdWZm
ZXIuZmlsbCgwKTsKKyAgICBtX2J1ZmZlckluZGV4ID0gMDsKK30KKwordm9pZCBJSVJGaWx0ZXI6
OnByb2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0aW9uLCBzaXplX3Qg
ZnJhbWVzVG9Qcm9jZXNzKQoreworICAgIC8vIENvbXB1dGUKKyAgICAvLworICAgIC8vICAgeVtu
XSA9IHN1bShiW2tdICogeFtuIC0ga10sIGsgPSAwLCBNKSAtIHN1bShhW2tdICogeVtuIC0ga10s
IGsgPSAxLCBOKQorICAgIC8vCisgICAgLy8gd2hlcmUgYltrXSBhcmUgdGhlIGZlZWRmb3J3YXJk
IGNvZWZmaWNpZW50cyBhbmQgYVtrXSBhcmUgdGhlIGZlZWRiYWNrCisgICAgLy8gY29lZmZpY2ll
bnRzIG9mIHRoZSBmaWx0ZXIuCisgICAgLy8gVGhpcyBpcyBhIERpcmVjdCBGb3JtIEkgaW1wbGVt
ZW50YXRpb24gb2YgYW4gSUlSIEZpbHRlci4gU2hvdWxkIHdlCisgICAgLy8gY29uc2lkZXIgZG9p
bmcgYSBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb24gc3VjaCBhcyBUcmFuc3Bvc2VkIERpcmVjdCBG
b3JtCisgICAgLy8gSUk/CisgICAgY29uc3QgZG91YmxlKiBmZWVkYmFjayA9IG1fZmVlZGJhY2su
ZGF0YSgpOworICAgIGNvbnN0IGRvdWJsZSogZmVlZGZvcndhcmQgPSBtX2ZlZWRmb3J3YXJkLmRh
dGEoKTsKKworICAgIEFTU0VSVChmZWVkYmFjayk7CisgICAgQVNTRVJUKGZlZWRmb3J3YXJkKTsK
KworICAgIC8vIFNhbml0eSBjaGVjayB0byBzZWUgaWYgdGhlIGZlZWRiYWNrIGNvZWZmaWNpZW50
cyBoYXZlIGJlZW4gc2NhbGVkIGFwcHJvcHJpYXRlbHkuIEl0IG11c3QgYmUgRVhBQ1RMWSAxIQor
ICAgIEFTU0VSVChmZWVkYmFja1swXSA9PSAxKTsKKworICAgIGludCBmZWVkYmFja0xlbmd0aCA9
IG1fZmVlZGJhY2suc2l6ZSgpOworICAgIGludCBmZWVkZm9yd2FyZExlbmd0aCA9IG1fZmVlZGZv
cndhcmQuc2l6ZSgpOworICAgIGludCBtaW5MZW5ndGggPSBzdGQ6Om1pbihmZWVkYmFja0xlbmd0
aCwgZmVlZGZvcndhcmRMZW5ndGgpOworCisgICAgZG91YmxlKiB4QnVmZmVyID0gbV94QnVmZmVy
LmRhdGEoKTsKKyAgICBkb3VibGUqIHlCdWZmZXIgPSBtX3lCdWZmZXIuZGF0YSgpOworCisgICAg
Zm9yIChzaXplX3QgbiA9IDA7IG4gPCBmcmFtZXNUb1Byb2Nlc3M7ICsrbikgeworICAgICAgICAv
LyBUbyBoZWxwIG1pbmltaXplIHJvdW5kb2ZmLCB3ZSBjb21wdXRlIHVzaW5nIGRvdWJsZSdzLCBl
dmVuIHRob3VnaCB0aGUKKyAgICAgICAgLy8gZmlsdGVyIGNvZWZmaWNpZW50cyBvbmx5IGhhdmUg
c2luZ2xlIHByZWNpc2lvbiB2YWx1ZXMuCisgICAgICAgIGRvdWJsZSB5biA9IGZlZWRmb3J3YXJk
WzBdICogc291cmNlW25dOworCisgICAgICAgIC8vIFJ1biBib3RoIHRoZSBmZWVkZm9yd2FyZCBh
bmQgZmVlZGJhY2sgdGVybXMgdG9nZXRoZXIsIHdoZW4gcG9zc2libGUuCisgICAgICAgIGZvciAo
aW50IGsgPSAxOyBrIDwgbWluTGVuZ3RoOyArK2spIHsKKyAgICAgICAgICAgIGludCBtID0gKG1f
YnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5ndGggLSAxKTsKKyAgICAgICAgICAgIHluICs9
IGZlZWRmb3J3YXJkW2tdICogeEJ1ZmZlclttXTsKKyAgICAgICAgICAgIHluIC09IGZlZWRiYWNr
W2tdICogeUJ1ZmZlclttXTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIEhhbmRsZSBhbnkgcmVt
YWluaW5nIGZlZWRmb3J3YXJkIG9yIGZlZWRiYWNrIHRlcm1zLgorICAgICAgICBmb3IgKGludCBr
ID0gbWluTGVuZ3RoOyBrIDwgZmVlZGZvcndhcmRMZW5ndGg7ICsraykKKyAgICAgICAgICAgIHlu
ICs9IGZlZWRmb3J3YXJkW2tdICogeEJ1ZmZlclsobV9idWZmZXJJbmRleCAtIGspICYgKGJ1ZmZl
ckxlbmd0aCAtIDEpXTsKKyAgICAgICAgZm9yIChpbnQgayA9IG1pbkxlbmd0aDsgayA8IGZlZWRi
YWNrTGVuZ3RoOyArK2spCisgICAgICAgICAgICB5biAtPSBmZWVkYmFja1trXSAqIHlCdWZmZXJb
KG1fYnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5ndGggLSAxKV07CisKKyAgICAgICAgLy8g
U2F2ZSB0aGUgY3VycmVudCBpbnB1dCBhbmQgb3V0cHV0IHZhbHVlcyBpbiB0aGUgbWVtb3J5IGJ1
ZmZlcnMgZm9yIHRoZQorICAgICAgICAvLyBuZXh0IG91dHB1dC4KKyAgICAgICAgbV94QnVmZmVy
W21fYnVmZmVySW5kZXhdID0gc291cmNlW25dOworICAgICAgICBtX3lCdWZmZXJbbV9idWZmZXJJ
bmRleF0gPSB5bjsKKworICAgICAgICBtX2J1ZmZlckluZGV4ID0gKG1fYnVmZmVySW5kZXggKyAx
KSAmIChidWZmZXJMZW5ndGggLSAxKTsKKworICAgICAgICBkZXN0aW5hdGlvbltuXSA9IHluOwor
ICAgIH0KK30KKwordm9pZCBJSVJGaWx0ZXI6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVk
IGxlbmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9h
dCogcGhhc2VSZXNwb25zZSkKK3sKKyAgICAvLyBFdmFsdWF0ZSB0aGUgei10cmFuc2Zvcm0gb2Yg
dGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4gbm9ybWFsaXplZCBmcmVxdWVuY2llcworICAgIC8vIGZy
b20gMCB0byAxLiAoT25lIGNvcnJlc3BvbmRzIHRvIHRoZSBOeXF1aXN0IGZyZXF1ZW5jeS4pCisg
ICAgLy8KKyAgICAvLyBUaGUgei10cmFuZm9ybSBvZiB0aGUgZmlsdGVyIGlzCisgICAgLy8KKyAg
ICAvLyBIKHopID0gc3VtKGJba10qel4oLWspLCBrLCAwLCBNKSAvIHN1bShhW2tdKnpeKC1rKSwg
aywgMCwgTik7CisgICAgLy8KKyAgICAvLyBUaGUgZGVzaXJlZCBmcmVxdWVuY3kgcmVzcG9uc2Ug
aXMgSChleHAoaipvbWVnYSkpLCB3aGVyZSBvbWVnYSBpcyBpbiBbMCwKKyAgICAvLyAxKS4KKyAg
ICAvLworICAgIC8vIExldCBQKHgpID0gc3VtKGNba10qeF5rLCBrLCAwLCBQKSBiZSBhIHBvbHlu
b21pYWwgb2Ygb3JkZXIgUC4gVGhlbiBlYWNoIG9mCisgICAgLy8gdGhlIHN1bXMgaW4gSCh6KSBp
cyBlcXVpdmFsZW50IHRvIGV2YWx1YXRpbmcgYSBwb2x5bm9taWFsIGF0IHRoZSBwb2ludAorICAg
IC8vIDEvei4KKworICAgIGZvciAodW5zaWduZWQgayA9IDA7IGsgPCBsZW5ndGg7ICsraykgewor
ICAgICAgICBpZiAoZnJlcXVlbmN5W2tdIDwgMCB8fCBmcmVxdWVuY3lba10gPiAxKSB7CisgICAg
ICAgICAgICAvLyBPdXQtb2YtYm91bmRzIGZyZXF1ZW5jaWVzIHNob3VsZCByZXR1cm4gTmFOLgor
ICAgICAgICAgICAgbWFnUmVzcG9uc2Vba10gPSBzdGQ6Om5hbmYoIiIpOworICAgICAgICAgICAg
cGhhc2VSZXNwb25zZVtrXSA9IHN0ZDo6bmFuZigiIik7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAvLyB6UmVjaXAgPSAxL3ogPSBleHAoLWoqZnJlcXVlbmN5KQorICAgICAgICAgICAg
ZG91YmxlIG9tZWdhID0gLXBpRG91YmxlICogZnJlcXVlbmN5W2tdOworICAgICAgICAgICAgc3Rk
Ojpjb21wbGV4PGRvdWJsZT4gelJlY2lwID0gc3RkOjpjb21wbGV4PGRvdWJsZT4oY29zKG9tZWdh
KSwgc2luKG9tZWdhKSk7CisKKyAgICAgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IG51bWVy
YXRvciA9IGV2YWx1YXRlUG9seW5vbWlhbChtX2ZlZWRmb3J3YXJkLmRhdGEoKSwgelJlY2lwLCBt
X2ZlZWRmb3J3YXJkLnNpemUoKSAtIDEpOworICAgICAgICAgICAgc3RkOjpjb21wbGV4PGRvdWJs
ZT4gZGVub21pbmF0b3IgPSBldmFsdWF0ZVBvbHlub21pYWwobV9mZWVkYmFjay5kYXRhKCksIHpS
ZWNpcCwgbV9mZWVkYmFjay5zaXplKCkgLSAxKTsKKyAgICAgICAgICAgIHN0ZDo6Y29tcGxleDxk
b3VibGU+IHJlc3BvbnNlID0gbnVtZXJhdG9yIC8gZGVub21pbmF0b3I7CisgICAgICAgICAgICBt
YWdSZXNwb25zZVtrXSA9IHN0YXRpY19jYXN0PGZsb2F0PihhYnMocmVzcG9uc2UpKTsKKyAgICAg
ICAgICAgIHBoYXNlUmVzcG9uc2Vba10gPSBzdGF0aWNfY2FzdDxmbG9hdD4oYXRhbjIoaW1hZyhy
ZXNwb25zZSksIHJlYWwocmVzcG9uc2UpKSk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK2RvdWJs
ZSBJSVJGaWx0ZXI6OnRhaWxUaW1lKGRvdWJsZSBzYW1wbGVSYXRlLCBib29sIGlzRmlsdGVyU3Rh
YmxlKQoreworICAgIC8vIFRoZSBtYXhpbXVtIHRhaWwgdGltZS4gVGhpcyBpcyBzb21ld2hhdCBh
cmJpdHJhcnksIGJ1dCB3ZSdyZSBhc3N1bWluZyB0aGF0CisgICAgLy8gbm8gb25lIGlzIGdvaW5n
IHRvIGV4cGVjdCB0aGUgSUlSRmlsdGVyIHRvIHByb2R1Y2UgYW4gb3V0cHV0IGFmdGVyIHRoaXMK
KyAgICAvLyBtdWNoIHRpbWUgYWZ0ZXIgdGhlIGlucHV0cyBoYXZlIHN0b3BwZWQuCisgICAgY29u
c3QgZG91YmxlIG1heFRhaWxUaW1lID0gMTA7CisKKyAgICAvLyBJZiB0aGUgbWF4aW11bSBhbXBs
aXR1ZGUgb2YgdGhlIGltcHVsc2UgcmVzcG9uc2UgaXMgbGVzcyB0aGFuIHRoaXMsIHdlCisgICAg
Ly8gYXNzdW1lIHRoYXQgd2UndmUgcmVhY2hlZCB0aGUgdGFpbCBvZiB0aGUgcmVzcG9uc2UuIEN1
cnJlbnRseSwgdGhpcyBtZWFucworICAgIC8vIHRoYXQgdGhlIGltcHVsc2UgaXMgbGVzcyB0aGFu
IDEgYml0IG9mIGEgMTYtYml0IFBDTSB2YWx1ZS4KKyAgICBjb25zdCBmbG9hdCBtYXhUYWlsQW1w
bGl0dWRlID0gMSAvIDMyNzY4LjA7CisKKyAgICAvLyBJZiBmaWx0ZXIgaXMgbm90IHN0YWJsZSwg
anVzdCByZXR1cm4gbWF4IHRhaWwuIFNpbmNlIHRoZSBmaWx0ZXIgaXMgbm90CisgICAgLy8gc3Rh
YmxlLCB0aGUgaW1wdWxzZSByZXNwb25zZSB3b24ndCBjb252ZXJnZSB0byB6ZXJvLCBzbyB3ZSBk
b24ndCBuZWVkIHRvCisgICAgLy8gZmluZCB0aGUgaW1wdWxzZSByZXNwb25zZSB0byBmaW5kIHRo
ZSBhY3R1YWwgdGFpbCB0aW1lLgorICAgIGlmICghaXNGaWx0ZXJTdGFibGUpCisgICAgICAgIHJl
dHVybiBtYXhUYWlsVGltZTsKKworICAgIC8vIEhvdyB0byBjb21wdXRlIHRoZSB0YWlsIHRpbWU/
IFdlJ3JlIGdvaW5nIHRvIGZpbHRlciBhbiBpbXB1bHNlCisgICAgLy8gZm9yIHxtYXhUYWlsVGlt
ZXwgc2Vjb25kcywgaW4gYmxvY2tzIG9mIGtSZW5kZXJRdWFudHVtRnJhbWVzIGF0CisgICAgLy8g
YSB0aW1lLiBUaGUgbWF4aW11bSBtYWduaXR1ZGUgb2YgdGhpcyBibG9jayBpcyBzYXZlZC4gQWZ0
ZXIgYWxsCisgICAgLy8gb2YgdGhlIHNhbXBsZXMgaGF2ZSBiZWVuIGNvbXB1dGVkLCBmaW5kIHRo
ZSBsYXN0IGJsb2NrIHdpdGggYQorICAgIC8vIG1heGltdW0gbWFnbml0dWRlIGdyZWF0ZXIgdGhh
biB8a01heFRhaWxlQW1wbGl0dWRlfC4gVGhhdCBibG9jaworICAgIC8vIGluZGV4ICsgMSB3aWxs
IGJlIHRoZSB0YWlsIHRpbWUuIFdlIGRvbid0IG5lZWQgdG8gYmUKKyAgICAvLyBzdXBlci1hY2N1
cmF0ZSBpbiBjb21wdXRpbmcgdGhlIHRhaWwgdGltZSBzaW5jZSB3ZSBwcm9jZXNzIG9uCisgICAg
Ly8gYmxvY2tzLCBibG9jayBhY2N1cmFjeSBpcyBnb29kIGVub3VnaCwgYW5kIHRoZSB2YWx1ZSBq
dXN0IG5lZWRzCisgICAgLy8gdG8gYmUgbGFyZ2VyIHRoYW4gdGhlICJyZWFsIiB0YWlsIHRpbWUs
IHNvIHdlIGRvbid0IHByZW1hdHVyZWx5CisgICAgLy8gemVybyBvdXQgdGhlIG91dHB1dCBvZiB0
aGUgbm9kZS4KKworICAgIC8vIE51bWJlciBvZiByZW5kZXIgcXVhbnRhIG5lZWRlZCB0byByZWFj
aCB0aGUgbWF4IHRhaWwgdGltZS4KKyAgICBpbnQgbnVtYmVyT2ZCbG9ja3MgPSBzdGQ6OmNlaWwo
c2FtcGxlUmF0ZSAqIG1heFRhaWxUaW1lIC8gaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisKKyAgICAv
LyBJbnB1dCBhbmQgb3V0cHV0IGJ1ZmZlcnMgZm9yIGZpbHRlcmluZy4KKyAgICBBdWRpb0Zsb2F0
QXJyYXkgaW5wdXQoaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisgICAgQXVkaW9GbG9hdEFycmF5IG91
dHB1dChpaXJSZW5kZXJpbmdRdWFudHVtKTsKKworICAgIC8vIEFycmF5IHRvIGhvbGQgdGhlIG1h
eCBtYWduaXR1ZGVzCisgICAgQXVkaW9GbG9hdEFycmF5IG1hZ25pdHVkZXMobnVtYmVyT2ZCbG9j
a3MpOworCisgICAgLy8gQ3JlYXRlIHRoZSBpbXB1bHNlIGlucHV0IHNpZ25hbC4KKyAgICBpbnB1
dFswXSA9IDE7CisKKyAgICAvLyBQcm9jZXNzIHRoZSBmaXJzdCBibG9jayBhbmQgZ2V0IHRoZSBt
YXggbWFnbml0dWRlIG9mIHRoZSBvdXRwdXQuCisgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCksIG91
dHB1dC5kYXRhKCksIGlpclJlbmRlcmluZ1F1YW50dW0pOworICAgIFZlY3Rvck1hdGg6OnZtYXht
Z3Yob3V0cHV0LmRhdGEoKSwgMSwgJm1hZ25pdHVkZXNbMF0sIGlpclJlbmRlcmluZ1F1YW50dW0p
OworCisgICAgLy8gUHJvY2VzcyB0aGUgcmVzdCBvZiB0aGUgc2lnbmFsLCBnZXR0aW5nIHRoZSBt
YXggbWFnbml0dWRlIG9mIHRoZQorICAgIC8vIG91dHB1dCBmb3IgZWFjaCBibG9jay4KKyAgICBp
bnB1dFswXSA9IDA7CisKKyAgICBmb3IgKGludCBrID0gMTsgayA8IG51bWJlck9mQmxvY2tzOyAr
K2spIHsKKyAgICAgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCksIG91dHB1dC5kYXRhKCksIGlpclJl
bmRlcmluZ1F1YW50dW0pOworICAgICAgICBWZWN0b3JNYXRoOjp2bWF4bWd2KG91dHB1dC5kYXRh
KCksIDEsICZtYWduaXR1ZGVzW2tdLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKyAgICB9CisKKyAg
ICAvLyBEb25lIGNvbXB1dGluZyB0aGUgaW1wdWxzZSByZXNwb25zZTsgcmVzZXQgdGhlIHN0YXRl
IHNvIHRoZSBhY3R1YWwgbm9kZQorICAgIC8vIHN0YXJ0cyBpbiB0aGUgZXhwZWN0ZWQgaW5pdGlh
bCBzdGF0ZS4KKyAgICByZXNldCgpOworCisgICAgLy8gRmluZCB0aGUgbGFzdCBibG9jayB3aXRo
IGFtcGxpdHVkZSBncmVhdGVyIHRoYW4gdGhlIHRocmVzaG9sZC4KKyAgICBpbnQgaW5kZXggPSBu
dW1iZXJPZkJsb2NrcyAtIDE7CisgICAgZm9yIChpbnQgayA9IGluZGV4OyBrID49IDA7IC0taykg
eworICAgICAgICBpZiAobWFnbml0dWRlc1trXSA+IG1heFRhaWxBbXBsaXR1ZGUpIHsKKyAgICAg
ICAgICAgIGluZGV4ID0gazsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQor
CisgICAgLy8gVGhlIG1hZ25pdHVkZSBmaXJzdCBiZWNvbWUgbG93ZXIgdGhhbiB0aGUgdGhyZXNo
b2xkIGF0IHRoZSBuZXh0IGJsb2NrLgorICAgIC8vIENvbXB1dGUgdGhlIGNvcnJlc3BvbmRpbmcg
dGltZSB2YWx1ZSB2YWx1ZTsgdGhhdCdzIHRoZSB0YWlsIHRpbWUuCisgICAgcmV0dXJuIChpbmRl
eCArIDEpICogaWlyUmVuZGVyaW5nUXVhbnR1bSAvIHNhbXBsZVJhdGU7Cit9CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0lJUkZpbHRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSUlSRmlsdGVyLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDJiNmEzNzcyNWM3YmU5OTU0N2MxMzRjNTg3MWQ5ODk5NDRkNmM2MwotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5o
CkBAIC0wLDAgKzEsNjggQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSUlSRmlsdGVyIHsKKyAgICBXVEZfTUFLRV9GQVNUX0FM
TE9DQVRFRDsKK3B1YmxpYzoKKyAgICBzdGF0aWMgY29uc3Qgc2l6ZV90IG1heE9yZGVyOworICAg
IElJUkZpbHRlcihjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rv
cjxkb3VibGU+JiBmZWVkYmFjayk7CisKKyAgICB2b2lkIHJlc2V0KCk7CisKKyAgICB2b2lkIHBy
b2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0aW9uLCBzaXplX3QgZnJh
bWVzVG9Qcm9jZXNzKTsKKyAgICB2b2lkIGdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxl
bmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCog
cGhhc2VSZXNwb25zZSk7CisgICAgZG91YmxlIHRhaWxUaW1lKGRvdWJsZSBzYW1wbGVSYXRlLCBi
b29sIGlzRmlsdGVyU3RhYmxlKTsKKworcHJpdmF0ZToKKyAgICAvLyBGaWx0ZXIgbWVtb3J5Cisg
ICAgLy8KKyAgICAvLyBGb3Igc2ltcGxpY2l0eSwgd2UgYXNzdW1lIHxtX3hCdWZmZXJ8IGFuZCB8
bV95QnVmZmVyfCBoYXZlIHRoZSBzYW1lIGxlbmd0aCwKKyAgICAvLyBhbmQgdGhlIGxlbmd0aCBp
cyBhIHBvd2VyIG9mIHR3by4gU2luY2UgdGhlIG51bWJlciBvZiBjb2VmZmljaWVudHMgaGFzIGEK
KyAgICAvLyBmaXhlZCB1cHBlciBsZW5ndGgsIHRoZSBzaXplIG9mIHhCdWZmZXIgYW5kIHlCdWZm
ZXIgaXMgZml4ZWQuIHxtX3hCdWZmZXJ8CisgICAgLy8gaG9sZHMgdGhlIG9sZCBpbnB1dCB2YWx1
ZXMgYW5kIHxtX3lCdWZmZXJ8IGhvbGRzIHRoZSBvbGQgb3V0cHV0IHZhbHVlcworICAgIC8vIG5l
ZWRlZCB0byBjb21wdXRlIHRoZSBuZXcgb3V0cHV0IHZhbHVlLgorICAgIC8vCisgICAgLy8gbV95
QnVmZmVyW21fYnVmZmVySW5kZXhdIGhvbGRzIHRoZSBtb3N0IHJlY2VudCBvdXRwdXQgdmFsdWUs
IHNheSwgeVtuXS4KKyAgICAvLyBUaGVuIG1feUJ1ZmZlclttX2J1ZmZlckluZGV4IC0ga10gaXMg
eVtuIC0ga10uIFNpbWlsYXJseSBmb3IgbV94QnVmZmVyLgorICAgIC8vCisgICAgLy8gVG8gbWlu
aW1pemUgcm91bmRvZmYsIHRoZXNlIGFycmF5cyBhcmUgZG91YmxlJ3MgaW5zdGVhZCBvZiBmbG9h
dHMuCisgICAgVmVjdG9yPGRvdWJsZT4gbV94QnVmZmVyOworICAgIFZlY3Rvcjxkb3VibGU+IG1f
eUJ1ZmZlcjsKKworICAgIC8vIEluZGV4IGludG8gdGhlIHhCdWZmZXIgYW5kIHlCdWZmZXIgYXJy
YXlzIHdoZXJlIHRoZSBtb3N0IGN1cnJlbnQgeCBhbmQgeQorICAgIC8vIHZhbHVlcyBzaG91bGQg
YmUgc3RvcmVkLiB4QnVmZmVyW2J1ZmZlckluZGV4XSBjb3JyZXNwb25kcyB0byB4W25dLCB0aGUK
KyAgICAvLyBjdXJyZW50IHggaW5wdXQgdmFsdWUgYW5kIHlCdWZmZXJbYnVmZmVySW5kZXhdIGlz
IHdoZXJlIHlbbl0sIHRoZSBjdXJyZW50CisgICAgLy8gb3V0cHV0IHZhbHVlLgorICAgIHNpemVf
dCBtX2J1ZmZlckluZGV4IHsgMCB9OworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIG1fZmVl
ZGZvcndhcmQ7CisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIG1fZmVlZGJhY2s7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvSW1hZ2VVdGlsaXRpZXMuaAppbmRleCA5YjE4Y2FhOGQ4NmJmOGQyNzUzYzNjYmVjYTVk
NzQ0NGZhZjk4MWQ3Li4wM2NmMTE3ZDU0ZDQxOTE4NWQ0YThmMDI0NjA0NzU0NTgwYzUxZDc3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGll
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVz
LmgKQEAgLTI1LDYgKzI1LDkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDx3dGYvRm9y
d2FyZC5oPgorI2luY2x1ZGUgPHd0Zi9Xb3JrUXVldWUuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBXRUJDT1JFX0VYUE9SVCBXb3JrUXVldWUmIHNoYXJlZEltYWdlVHJhbnNjb2RpbmdRdWV1
ZSgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNTdhNjEyNTFjYjRiMzM2ZDM5
MjJlYzUyYWJmYTliNjZjMjY0NzE4Ny4uODVhZmFmMjc3ZGViNDg4OGIzMTBhMWFlMzJjMGY0Yzk3
NjdhZGU3MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMjAtMDgtMjUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBJ
SVJGaWx0ZXJOb2RlIGludGVyZmFjZSBpcyBub3Qgc3VwcG9ydGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU4MTAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyB0aGF0
IGFyZSBub3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50
ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZh
Y2UvaWlyZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2Uv
aWlyZmlsdGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVy
LWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZh
Y2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wOC0yNCAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFVwZGF0ZSBp
T1MgbGF5b3V0IHRlc3QgcmVzdWx0cyBhZnRlciByMjY2MDg3CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3Mu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQu
dHh0CmluZGV4IDVlOTEyMzJmODdjZDdlMGEwZGFmZTI5MDE4NjU0N2IzZjNhZjY1MTguLjgxNzQ5
NDU1MTY4NDIwNGQyNWJjNDhkMTExZjRkYjJhYjBjYjRhZTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0CkBAIC0zMyw3ICszMyw3IEBAIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6
IG9wZXJhdGlvbiBjcmVhdGVDb252b2x2ZXIoKQogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVy
ZmFjZTogb3BlcmF0aW9uIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJsZSkgCiBQQVNTIEJhc2VB
dWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlRHluYW1pY3NDb21wcmVzc29y
KCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlR2Fp
bigpIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUlJ
UkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSBhc3NlcnRfb3duX3By
b3BlcnR5OiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBtaXNzaW5nIG5vbi1zdGF0aWMgb3Bl
cmF0aW9uIGV4cGVjdGVkIHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIiIG1pc3NpbmcKK1BBU1Mg
QmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVJSVJGaWx0ZXIoc2Vx
dWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQg
aW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlT3NjaWxsYXRvcigpIAogUEFTUyBCYXNlQXVkaW9D
b250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZVBhbm5lcigpIAogUEFTUyBCYXNlQXVk
aW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZVBlcmlvZGljV2F2ZShzZXF1ZW5j
ZTxmbG9hdD4sIHNlcXVlbmNlPGZsb2F0Piwgb3B0aW9uYWwgUGVyaW9kaWNXYXZlQ29uc3RyYWlu
dHMpIApAQCAtOTQsOCArOTQsOCBAQCBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBj
b250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlRGVsYXkob3B0aQogUEFTUyBCYXNl
QXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVEZWxheShvcHRpb25hbCBkb3Vi
bGUpIG9uIGNvbnRleHQgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJv
ciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjcmVhdGVEeW5hbWljc0NvbXByZXNzb3IoKSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAiY3JlYXRlR2FpbigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKLUZBSUwgQmFz
ZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJj
cmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikiIHdpdGgg
dGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRl
ciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGlu
dGVyZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVu
Y2U8ZG91YmxlPikgb24gY29udGV4dCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cg
VHlwZUVycm9yIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90
IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFj
ZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5j
ZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNT
IEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0ZUlJUkZpbHRlcihzZXF1
ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSBvbiBjb250ZXh0IHdpdGggdG9vIGZldyBh
cmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50
ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlT3NjaWxsYXRvcigp
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6
IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVQYW5uZXIoKSIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0Piwg
c2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25zdHJhaW50cykiIHdpdGgg
dGhlIHByb3BlciB0eXBlIApAQCAtMTQ3LDggKzE0Nyw4IEBAIFBBU1MgQmFzZUF1ZGlvQ29udGV4
dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBt
dXN0CiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0ZURlbGF5
KG9wdGlvbmFsIGRvdWJsZSkgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxl
X3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNT
IEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAx
LCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVEeW5hbWljc0NvbXBy
ZXNzb3IoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50
ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBp
bmhlcml0IHByb3BlcnR5ICJjcmVhdGVHYWluKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJ
TCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwg
MSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyKHNl
cXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBh
c3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIiIG5vdCBmb3VuZCBpbiBw
cm90b3R5cGUgY2hhaW4KLUZBSUwgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcg
Y3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIG9uIG5l
dyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSB3aXRoIHRvbyBmZXcgYXJn
dW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImNy
ZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBCYXNlQXVk
aW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxl
X3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRv
dWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQmFz
ZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNl
PGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIG9uIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEs
IDEsIHNhbXBsZV9yYXRlKSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVy
cm9yIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0Nv
bnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlT3Nj
aWxsYXRvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBp
bnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZVBhbm5lcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAK
IFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0
KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZVBlcmlvZGlj
V2F2ZShzZXF1ZW5jZTxmbG9hdD4sIHNlcXVlbmNlPGZsb2F0Piwgb3B0aW9uYWwgUGVyaW9kaWNX
YXZlQ29uc3RyYWludHMpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKQEAgLTc0NCw0MCArNzQ0LDQw
IEBAIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5Ob2RlKGNvbnRleHQpIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPCiBQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5l
dyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxDb3VudCIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBHYWlu
Tm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxDb3VudE1vZGUiIHdp
dGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgR2Fpbk5v
ZGUoY29udGV4dCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsSW50ZXJwcmV0YXRpb24i
IHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhp
c3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgYXNzZXJ0X293bl9wcm9w
ZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhw
ZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9k
ZSBpbnRlcmZhY2Ugb2JqZWN0IGxlbmd0aCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMg
bm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAi
SUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmpl
Y3QgbmFtZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3Bl
cnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlz
c2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0
aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNl
bGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHBy
b3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJm
YWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmpl
Y3QncyAiY29uc3RydWN0b3IiIHByb3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9l
cyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5
ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBl
eGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBA
QHVuc2NvcGFibGVzIHByb3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3Qg
aGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJG
aWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBvcGVyYXRp
b24gZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0
MzJBcnJheSkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9w
ZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1p
c3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBtdXN0IGJlIHByaW1hcnkgaW50ZXJmYWNlIG9mIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9i
amVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgU3RyaW5naWZpY2F0aW9uIG9mIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9i
amVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZh
Y2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9h
dDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9i
amVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZh
Y2U6IGNhbGxpbmcgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJy
YXksIEZsb2F0MzJBcnJheSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhy
b3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZh
bHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJy
b3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBp
bnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvTm9kZSwg
b3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykiIHdpdGggdGhl
IHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZh
bHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJy
b3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBp
bnRlcmZhY2U6IGNhbGxpbmcgY29ubmVjdChBdWRpb05vZGUsIG9wdGlvbmFsIHVuc2lnbmVkIGxv
bmcsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50
cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlv
biB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJl
ZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBB
dWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndh
cmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY29ubmVjdChB
dWRpb1BhcmFtLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
YXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVj
dCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2Fs
bGluZyBjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
d2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxz
OiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51
bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJ
SVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9k
ZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAiZGlzY29ubmVjdCgpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1
YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVy
Tm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCh1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5n
IG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2Fu
J3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFj
ZTogY2FsbGluZyBkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3
IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVk
IGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBv
YmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2Rl
IgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7
ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAi
ZGlzY29ubmVjdChBdWRpb05vZGUpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxz
OiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51
bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJ
SVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5l
Y3QoQXVkaW9Ob2RlKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6
IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBU
eXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0
aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjog
Q2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVy
ZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1
bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBl
Y3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBn
b3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVy
Tm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlv
Tm9kZSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRm
b3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3Qg
dGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4g
ZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNl
RXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlv
Tm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBl
IGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmpl
Y3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZp
bmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNh
bGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcp
IG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtKSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0
aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjog
Q2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVy
ZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0pIG9uIG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3
IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVk
IGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBv
YmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2Rl
IgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7
ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAi
ZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9i
amVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTog
Y2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0
aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiY29udGV4dCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5l
eHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1
dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmls
dGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgIm51bWJlck9mSW5wdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxz
OiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51
bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJ
SVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9k
ZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAibnVtYmVyT2ZPdXRwdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRf
ZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVj
dGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmls
dGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9i
amVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTog
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBl
dmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VF
cnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKK1BBU1MgSUlSRmlsdGVy
Tm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2Jq
ZWN0IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIAorUEFTUyBJ
SVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbmFtZSAKK1BBU1MgSUlSRmlsdGVyTm9kZSBp
bnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBl
IG9iamVjdCAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJv
cGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJv
cGVydHkgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3Bl
cnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3Bl
cnR5IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogb3BlcmF0aW9uIGdldEZyZXF1ZW5j
eVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXkpIAorUEFT
UyBJSVJGaWx0ZXJOb2RlIG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSAKK1BBU1Mg
U3RyaW5naWZpY2F0aW9uIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFy
cmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkiIHdpdGggdGhlIHByb3BlciB0eXBlIAor
UEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogY2FsbGluZyBnZXRGcmVxdWVuY3lSZXNwb25z
ZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSBvbiBuZXcgSUlSRmls
dGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGgg
dG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBp
bnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvTm9kZSwg
b3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykiIHdpdGggdGhl
IHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3Qo
QXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25n
KSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQ
QVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25u
ZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBjb25uZWN0KEF1ZGlvUGFy
YW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50
cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBt
dXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
CitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtm
ZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJk
aXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVk
aW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIG9uIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVk
aW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3Qo
QXVkaW9Ob2RlKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZh
Y2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFy
Z3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTog
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25l
ZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6
IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0
aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2Rl
IGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9O
b2RlLCB1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
CitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUs
IHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRl
eHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3Vt
ZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3
IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19
KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkiIHdpdGggdGhl
IHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5l
Y3QoQXVkaW9QYXJhbSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cg
VHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVj
dChBdWRpb1BhcmFtLCB1bnNpZ25lZCBsb25nKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVu
dHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb250ZXh0IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BB
U1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRm
b3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJl
ck9mSW5wdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFj
ZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNr
OiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJlck9mT3V0cHV0cyIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjaGFubmVsQ291bnQiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRp
b05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6
IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50
TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsSW50ZXJwcmV0YXRpb24iIHdpdGggdGhl
IHByb3BlciB0eXBlIAogUEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUgaW50ZXJmYWNl
OiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdCAKIFBBU1MgTWVk
aWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIAogUEFTUyBN
ZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUgaW50ZXJmYWNlIG9iamVjdCBuYW1lIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9jdG9yLWlpcmZpbHRl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0
b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAppbmRleCBlOTAxYTJjNDQzMTYwMzA2Mjk2ZGQwNzM0
MTMxMTE3NTdlZjczOTAyLi43YWU3N2MxYzIyOTFkODEwODIyNTQ1ZjI0Mzc3MmFhOWFkOGY2MjA5
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3It
aWlyZmlsdGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUt
aW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dApAQCAtMiwyNyArMiw1NiBAQAog
UEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgImluaXRp
YWxpemUiIAogUEFTUyBFeGVjdXRpbmcgImludmFsaWQgY29uc3RydWN0b3IiIAotRkFJTCBFeGVj
dXRpbmcgImRlZmF1bHQgY29uc3RydWN0b3IiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogUmlnaHQgaGFuZCBzaWRlIG9mIGlu
c3RhbmNlb2YgaXMgbm90IGFuIG9iamVjdCIKLUZBSUwgRXhlY3V0aW5nICJ0ZXN0IEF1ZGlvTm9k
ZU9wdGlvbnMiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J25vZGUuY2hhbm5lbENvdW50JykiCitQQVNTIEV4ZWN1dGluZyAiZGVmYXVsdCBjb25zdHJ1Y3Rv
ciIgCitQQVNTIEV4ZWN1dGluZyAidGVzdCBBdWRpb05vZGVPcHRpb25zIiAKIFBBU1MgRXhlY3V0
aW5nICJjb25zdHJ1Y3RvciBvcHRpb25zIiAKLUZBSUwgRXhlY3V0aW5nICJmdW5jdGlvbmFsaXR5
IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKK1BBU1Mg
RXhlY3V0aW5nICJmdW5jdGlvbmFsaXR5IiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtp
bml0aWFsaXplXSAgCiBQQVNTICAgY29udGV4dCA9IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KC4u
LikgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyA8IFtpbml0aWFsaXplXSBBbGwg
YXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFtpbnZhbGlk
IGNvbnN0cnVjdG9yXSAgCi1QQVNTICAgbmV3IElJUkZpbHRlck5vZGUoKSB0aHJldyBUeXBlRXJy
b3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5k
b3dbbmFtZV0oKScpIi4gCi1QQVNTICAgbmV3IElJUkZpbHRlck5vZGUoMSkgdGhyZXcgVHlwZUVy
cm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9yIChldmFsdWF0aW5nICduZXcgd2lu
ZG93W25hbWVdKDEpJykiLiAKLVBBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCA0Mikg
dGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9yIChldmFsdWF0
aW5nICduZXcgd2luZG93W25hbWVdKGNvbnRleHQsIDQyKScpIi4gCitQQVNTICAgbmV3IElJUkZp
bHRlck5vZGUoKSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5vdWdoIGFyZ3VtZW50cyIuIAorUEFT
UyAgIG5ldyBJSVJGaWx0ZXJOb2RlKDEpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJn
dW1lbnRzIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwgNDIpIHRocmV3IFR5
cGVFcnJvcjogIlR5cGUgZXJyb3IiLiAKIFBBU1MgPCBbaW52YWxpZCBjb25zdHJ1Y3Rvcl0gQWxs
IGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMyBhc3NlcnRpb25zKSAKIFBBU1MgPiBbZGVmYXVs
dCBjb25zdHJ1Y3Rvcl0gIAotRkFJTCBYIG5vZGUwID0gbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJmZWVkYmFjayI6WzEsLTAuOV19KSBpbmNvcnJlY3RseSB0
aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRp
bmcgJ25ldyB3aW5kb3dbbmFtZV0oY29udGV4dCwgb3B0aW9ucy5jb25zdHJ1Y3Rvck9wdGlvbnMp
JykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBub2RlMCA9
IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHsiZmVlZGZvcndhcmQiOlsxXSwiZmVlZGJhY2si
OlsxLC0wLjldfSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUwIGlu
c3RhbmNlb2YgSUlSRmlsdGVyTm9kZSBpcyBlcXVhbCB0byB0cnVlLiAKK1BBU1MgICBub2RlMC5u
dW1iZXJPZklucHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBub2RlMC5udW1iZXJPZk91dHB1
dHMgaXMgZXF1YWwgdG8gMS4gCitQQVNTICAgbm9kZTAuY2hhbm5lbENvdW50IGlzIGVxdWFsIHRv
IDIuIAorUEFTUyAgIG5vZGUwLmNoYW5uZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BB
U1MgICBub2RlMC5jaGFubmVsSW50ZXJwcmV0YXRpb24gaXMgZXF1YWwgdG8gc3BlYWtlcnMuIAor
UEFTUyA8IFtkZWZhdWx0IGNvbnN0cnVjdG9yXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCA3IGFzc2VydGlvbnMpIAogUEFTUyA+IFt0ZXN0IEF1ZGlvTm9kZU9wdGlvbnNdICAKLUZBSUwg
WCBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50OiAxN30pIGluY29ycmVjdGx5IHRo
cmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGlu
ZyAnbmV3IHdpbmRvd1tub2RlTmFtZV0nKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnQ6IDE3fSkg
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50IGlz
IGVxdWFsIHRvIDE3LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50
OiAwfSkgdGhyZXcgSW52YWxpZFN0YXRlRXJyb3I6ICJUaGUgb2JqZWN0IGlzIGluIGFuIGludmFs
aWQgc3RhdGUuIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudDog
OTl9KSB0aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogIlRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxp
ZCBzdGF0ZS4iLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50TW9k
ZTogIm1heCJ9IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5u
ZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShj
LCB7Y2hhbm5lbENvdW50TW9kZTogIm1heCJ9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVyIHZhbGlkIHNldHRlciBpcyBlcXVh
bCB0byBtYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2Rl
OiAiY2xhbXBlZC1tYXgifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5v
ZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciB2YWxpZCBzZXR0ZXIgaXMgZXF1YWwgdG8gY2xhbXBl
ZC1tYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAi
ZXhwbGljaXQifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hh
bm5lbENvdW50TW9kZSBhZnRlciB2YWxpZCBzZXR0ZXIgaXMgZXF1YWwgdG8gZXhwbGljaXQuIAor
UEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAiZm9vYmFyIn0g
dGhyZXcgVHlwZUVycm9yOiAiVHlwZSBlcnJvciIuIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50
TW9kZSBhZnRlciBpbnZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBleHBsaWNpdC4gCitQQVNTICAg
bmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnByZXRhdGlvbjogInNwZWFrZXJzIn0p
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRlcnBy
ZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUo
Yywge2NoYW5uZWxJbnRlcnByZXRhdGlvbjogImRpc2NyZXRlIn0pIGRpZCBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0
byBkaXNjcmV0ZS4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnBy
ZXRhdGlvbjogImZvb2JhciJ9KSB0aHJldyBUeXBlRXJyb3I6ICJUeXBlIGVycm9yIi4gCitQQVNT
ICAgbm9kZS5jaGFubmVsSW50ZXJwcmV0YXRpb24gYWZ0ZXIgaW52YWxpZCBzZXR0ZXIgaXMgZXF1
YWwgdG8gZGlzY3JldGUuIAorUEFTUyA8IFt0ZXN0IEF1ZGlvTm9kZU9wdGlvbnNdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDIwIGFzc2VydGlvbnMpIAogUEFTUyA+IFtjb25zdHJ1Y3Rv
ciBvcHRpb25zXSAgCi1GQUlMIFggbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKCwgeyJmZWVkYmFj
ayI6WzEsMC41XX0pIHRocmV3ICJSZWZlcmVuY2VFcnJvciIgaW5zdGVhZCBvZiBFY21hU2NyaXB0
IGVycm9yIFR5cGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1G
QUlMIFggbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHsiZmVlZGZvcndhcmQiOlsxLDAuNV19
KSB0aHJldyAiUmVmZXJlbmNlRXJyb3IiIGluc3RlYWQgb2YgRWNtYVNjcmlwdCBlcnJvciBUeXBl
RXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtjb25z
dHJ1Y3RvciBvcHRpb25zXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5vZGUgPSBuZXcgSUlSRmls
dGVyTm9kZSgsIHsiZmVlZGJhY2siOlsxLDAuNV19KSB0aHJldyBUeXBlRXJyb3I6ICJNZW1iZXIg
SUlSRmlsdGVyT3B0aW9ucy5mZWVkZm9yd2FyZCBpcyByZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBp
bnN0YW5jZSBvZiBzZXF1ZW5jZSIuIAorUEFTUyAgIG5vZGUgPSBuZXcgSUlSRmlsdGVyTm9kZShj
LCB7ImZlZWRmb3J3YXJkIjpbMSwwLjVdfSkgdGhyZXcgVHlwZUVycm9yOiAiTWVtYmVyIElJUkZp
bHRlck9wdGlvbnMuZmVlZGJhY2sgaXMgcmVxdWlyZWQgYW5kIG11c3QgYmUgYW4gaW5zdGFuY2Ug
b2Ygc2VxdWVuY2UiLiAKK1BBU1MgPCBbY29uc3RydWN0b3Igb3B0aW9uc10gQWxsIGFzc2VydGlv
bnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbZnVuY3Rpb25hbGl0eV0g
IAotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAzIG91dCBvZiA2IHRhc2tzIHdl
cmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBP
dXRwdXQgb2YgZmlsdGVyIHVzaW5nIG5ldyBJSVJGaWx0ZXIoLi4uKSBpcyBpZGVudGljYWwgdG8g
dGhlIGFycmF5IFswLDAuMDU3NTY0MDM1MDU4MDIxNTQ1LDAuMTQzNzE5MTk2MzE5NTgwMDgsMC4y
MTUwMDY2MzQ1OTMwMDk5NSwwLjI5Mjc3NjU4NDYyNTI0NDE0LDAuMzY1OTc3NzkzOTMxOTYxMDYs
MC40Mzk3NjQyMzE0NDM0MDUxNSwwLjUxMTE5MjczOTAwOTg1NzIsMC41ODEzNzU1OTg5MDc0NzA3
LDAuNjQ5NDA1ODM3MDU5MDIxLDAuNzE1Mzk0NDk2OTE3NzI0NiwwLjc3ODk1NDU2NTUyNTA1NDks
MC44Mzk5NTk1MDIyMjAxNTM4LDAuODk4MTY0Njg5NTQwODYzLDAuOTUzMzk4NDA2NTA1NTg0Nywx
LjAwNTQ2NjY5OTYwMDIxOTcuLi5dLiAKK1BBU1MgPCBbZnVuY3Rpb25hbGl0eV0gQWxsIGFzc2Vy
dGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKK1BBU1MgIyBBVURJVCBUQVNLIFJV
Tk5FUiBGSU5JU0hFRDogNiB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0
ZXItYmFzaWMtZXhwZWN0ZWQudHh0CmluZGV4IDQ1MzRjODNmZDQ1ZjhkMGNlMjI2NDY2YWQ3MWNm
MjYyZTljZjU0NTIuLjViOTM3NGI5OWQyMDRkNjRjZjg3YTYxOTkzOWNjM2U4NmJiMTYzMWUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVy
LWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50
ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQKQEAgLTIsMzMgKzIsNDQgQEAKIFBB
U1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJpbml0aWFs
aXplIiAKIFBBU1MgRXhlY3V0aW5nICJleGlzdGVuY2UiIAotRkFJTCBFeGVjdXRpbmcgInBhcmFt
ZXRlcnMiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmpl
Y3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoY29lZiwgY29lZiknLCAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCitQQVNTIEV4ZWN1dGluZyAicGFyYW1ldGVycyIg
CiBQQVNTIEV4ZWN1dGluZyAiZXhjZXB0aW9ucy1jcmVhdGVJSVJGaWx0ZXIiIAotRkFJTCBFeGVj
dXRpbmcgImV4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
cihjb2VmLCBjb2VmKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIK
K1BBU1MgRXhlY3V0aW5nICJleGNlcHRpb25zLWdldEZyZXF1ZW5jeURhdGEiIAogUEFTUyBBdWRp
dCByZXBvcnQgCiBQQVNTID4gW2luaXRpYWxpemVdICAKIFBBU1MgICBJbml0aWFsaXplIGNvbnRl
eHQgZm9yIHRlc3RpbmcgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyA8IFtpbml0
aWFsaXplXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFT
UyA+IFtleGlzdGVuY2VdICAKLUZBSUwgWCBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBkb2VzIG5v
dCBleGlzdC4gR290IHVuZGVmaW5lZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCi1GQUlMIDwgW2V4aXN0ZW5jZV0gMSBvdXQgb2YgMSBhc3NlcnRpb25zIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlciBkb2VzIGV4aXN0LiAKK1BBU1MgPCBbZXhpc3RlbmNlXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFtwYXJhbWV0ZXJzXSAg
CitQQVNTICAgbnVtYmVyT2ZJbnB1dHMgaXMgZXF1YWwgdG8gMS4gCitQQVNTICAgbnVtYmVyT2ZP
dXRwdXRzIGlzIGVxdWFsIHRvIDEuIAorUEFTUyAgIGNoYW5uZWxDb3VudE1vZGUgaXMgZXF1YWwg
dG8gbWF4LiAKK1BBU1MgICBjaGFubmVsSW50ZXJwcmV0YXRpb24gaXMgZXF1YWwgdG8gc3BlYWtl
cnMuIAorUEFTUyA8IFtwYXJhbWV0ZXJzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA0
IGFzc2VydGlvbnMpIAogUEFTUyA+IFtleGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlcl0gIAotUEFT
UyAgIGNyZWF0ZUlJUkZpbHRlcigpIHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlS
RmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKCkn
LCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVh
dGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxKSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxKSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIn
IGlzIHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIobnVsbCwgbnVsbCkgdGhy
ZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIobnVsbCwgbnVsbCknLCAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoW10s
IFtdKSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIo
WzFdLCBbXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmls
dGVyKFtdLCBbMV0pIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJy
b3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJ
UkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIwKSwgbmV3IEZsb2F0MzJBcnJheSgyMCkpIGluY29y
cmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGZiLCBmYiknLCAnY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgy
MSksIFsxXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmls
dGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyMSkpIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQg
b2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbMV0sIG5ldyBGbG9hdDMyQXJyYXkoMikpIHRocmV3
ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgSW52YWxpZFN0YXRlRXJyb3IuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQz
MkFycmF5KDEwKSwgWzFdKSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIEludmFsaWRTdGF0
ZUVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLVBBU1MgICBjcmVh
dGVJSVJGaWx0ZXIoWzFdLCBbMSwgTmFOLCBJbmZpbml0eV0pIHRocmV3IFR5cGVFcnJvcjogImNv
bnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyKFsxXSwgWzEsIEluZmluaXR5LCBOYU5dKScsICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMSwgTmFO
LCBJbmZpbml0eV0sIFsxXSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzEsIElu
ZmluaXR5LCBOYU5dLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmlu
ZWQpIi4gCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCAnYWJjJywgW11dLCBbMV0pIHRocmV3
IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxLCAnYWJjJywgW11dLCBbMV0pJywgJ2NvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gCi1GQUlMIDwgW2V4Y2VwdGlvbnMt
Y3JlYXRlSUlSRmlsdGVyXSA4IG91dCBvZiAxNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIo
KSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5vdWdoIGFyZ3VtZW50cyIuIAorUEFTUyAgIGNyZWF0
ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5v
dWdoIGFyZ3VtZW50cyIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihudWxsLCBudWxsKSB0aHJl
dyBUeXBlRXJyb3I6ICJWYWx1ZSBpcyBub3QgYSBzZXF1ZW5jZSIuIAorUEFTUyAgIGNyZWF0ZUlJ
UkZpbHRlcihbXSwgW10pIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJy
YXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJ
SVJGaWx0ZXIoWzFdLCBbXSkgdGhyZXcgTm90U3VwcG9ydGVkRXJyb3I6ICJmZWVkYmFjayBhcnJh
eSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0ZUlJ
UkZpbHRlcihbXSwgWzFdKSB0aHJldyBOb3RTdXBwb3J0ZWRFcnJvcjogImZlZWRmb3J3YXJkIGFy
cmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAgY3JlYXRl
SUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMjApLCBuZXcgRmxvYXQzMkFycmF5KDIwKSkgZGlk
IG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxv
YXQzMkFycmF5KDIxKSwgWzFdKSB0aHJldyBOb3RTdXBwb3J0ZWRFcnJvcjogImZlZWRmb3J3YXJk
IGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAgY3Jl
YXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyMSkpIHRocmV3IE5vdFN1cHBvcnRl
ZEVycm9yOiAiZmVlZGJhY2sgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQg
MjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBuZXcgRmxvYXQzMkFycmF5KDIpKSB0
aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogImZpcnN0IHZhbHVlIG9mIGZlZWRiYWNrIGFycmF5IGNh
bm5vdCBiZSB6ZXJvIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXko
MTApLCBbMV0pIHRocmV3IEludmFsaWRTdGF0ZUVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVz
dCBjb250YWluIGEgbm9uLXplcm8gdmFsdWUiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFd
LCBbMSwgTmFOLCBJbmZpbml0eV0pIHRocmV3IFR5cGVFcnJvcjogIlRoZSBwcm92aWRlZCB2YWx1
ZSBpcyBub24tZmluaXRlIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCBOYU4sIEluZmlu
aXR5XSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJUaGUgcHJvdmlkZWQgdmFsdWUgaXMgbm9uLWZp
bml0ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMSwgJ2FiYycsIFtdXSwgWzFdKSB0aHJl
dyBUeXBlRXJyb3I6ICJUaGUgcHJvdmlkZWQgdmFsdWUgaXMgbm9uLWZpbml0ZSIuIAorUEFTUyA8
IFtleGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgMTQgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YV0g
IAotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAyIG91dCBvZiA1IHRhc2tzIHdl
cmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBn
ZXRGcmVxdWVuY3lSZXNwb25zZShudWxsLCBuZXcgRmxvYXQzMkFycmF5KDEpLCBuZXcgRmxvYXQz
MkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJBcmd1bWVudCAxICgnZnJlcXVlbmN5SHonKSB0
byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4gaW5zdGFuY2Ug
b2YgRmxvYXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2UobmV3IEZsb2F0
MzJBcnJheSgxKSwgbnVsbCwgbmV3IEZsb2F0MzJBcnJheSgxKSkgdGhyZXcgVHlwZUVycm9yOiAi
QXJndW1lbnQgMiAoJ21hZ1Jlc3BvbnNlJykgdG8gSUlSRmlsdGVyTm9kZS5nZXRGcmVxdWVuY3lS
ZXNwb25zZSBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIEZsb2F0MzJBcnJheSIuIAorUEFTUyAgIGdl
dEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXko
MSksIG51bGwpIHRocmV3IFR5cGVFcnJvcjogIkFyZ3VtZW50IDMgKCdwaGFzZVJlc3BvbnNlJykg
dG8gSUlSRmlsdGVyTm9kZS5nZXRGcmVxdWVuY3lSZXNwb25zZSBtdXN0IGJlIGFuIGluc3RhbmNl
IG9mIEZsb2F0MzJBcnJheSIuIAorUEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9h
dDMyQXJyYXkoMTApLCBuZXcgRmxvYXQzMkFycmF5KDEpLCBuZXcgRmxvYXQzMkFycmF5KDIwKSkg
dGhyZXcgSW52YWxpZEFjY2Vzc0Vycm9yOiAiQXJyYXlzIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5n
dGgiLiAKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShuZXcgRmxvYXQzMkFycmF5KDEwKSwg
bmV3IEZsb2F0MzJBcnJheSgyMCksIG5ldyBGbG9hdDMyQXJyYXkoMSkpIHRocmV3IEludmFsaWRB
Y2Nlc3NFcnJvcjogIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoIi4gCitQQVNTIDwg
W2V4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgNSBhc3NlcnRpb25zKSAKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogNSB0
YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJm
aWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0ZWQudHh0CmluZGV4IGRl
YmRiN2UyZWU0NThiOWMyMTU5ZGU2ODdmZWEwOWFmNzMyY2MzN2YuLmJlZmIzYmE1YTFiYjM5YjI4
MTY1ODM1NjkyY2FhMmI5NzU4YTVjMTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmls
dGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQKQEAgLTEs
NDEgKzEsNzAgQEAKIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAotRkFJTCBF
eGVjdXRpbmcgImNvZWZmaWNpZW50LW5vcm1hbGl6YXRpb24iIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogVHlwZSBlcnJvciIK
LUZBSUwgRXhlY3V0aW5nICJvbmUtemVybyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
ciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMC41LCAw
LjVdLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJ
TCBFeGVjdXRpbmcgIm9uZS1wb2xlIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEsIGNd
KScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0
aW5nICIwOiBsb3dwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBb
Y29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiMTog
aGlnaHBhc3MiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIw
LCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICIyOiBiYW5kcGFz
cyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYu
YjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlS
RmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjM6IG5vdGNoIiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5i
Ml0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNDogYWxscGFzcyIgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwg
Y29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmlu
ZWQpIgotRkFJTCBFeGVjdXRpbmcgIjU6IGxvd3NoZWxmIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRl
SUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
KAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmEx
LCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1G
QUlMIEV4ZWN1dGluZyAiNjogaGlnaHNoZWxmIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmls
dGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAg
ICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2Vm
LmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4
ZWN1dGluZyAiNzogcGVha2luZyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAg
ICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywg
J2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcg
Im11bHRpLWNoYW5uZWwiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoZmYsIGZiKScsICdjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICI0dGgtb3Jk
ZXItaWlyIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGNhc2NhZGUuZmYsIGNhc2NhZGUuZmIpJywg
J2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgorUEFTUyBFeGVjdXRpbmcg
ImNvZWZmaWNpZW50LW5vcm1hbGl6YXRpb24iIAorUEFTUyBFeGVjdXRpbmcgIm9uZS16ZXJvIiAK
K1BBU1MgRXhlY3V0aW5nICJvbmUtcG9sZSIgCitQQVNTIEV4ZWN1dGluZyAiMDogbG93cGFzcyIg
CitQQVNTIEV4ZWN1dGluZyAiMTogaGlnaHBhc3MiIAorUEFTUyBFeGVjdXRpbmcgIjI6IGJhbmRw
YXNzIiAKK1BBU1MgRXhlY3V0aW5nICIzOiBub3RjaCIgCitQQVNTIEV4ZWN1dGluZyAiNDogYWxs
cGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiNTogbG93c2hlbGYiIAorUEFTUyBFeGVjdXRpbmcgIjY6
IGhpZ2hzaGVsZiIgCitQQVNTIEV4ZWN1dGluZyAiNzogcGVha2luZyIgCitQQVNTIEV4ZWN1dGlu
ZyAibXVsdGktY2hhbm5lbCIgCitQQVNTIEV4ZWN1dGluZyAiNHRoLW9yZGVyLWlpciIgCiBQQVNT
IEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbY29lZmZpY2llbnQtbm9ybWFsaXphdGlvbl0gIAotRkFJ
TCBYIGNyZWF0ZUlJUkZpbHRlciB3aXRoIG5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGluY29ycmVj
dGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGZmLCBmYjEpJywgJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyIHdpdGggdW5ub3JtYWxpemVkIGNv
ZWZmaWNpZW50cyBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihm
ZiwgZmIyKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlciB3
aXRoIG5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAK
K1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIgd2l0aCB1bm5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBPdXRwdXQgb2YgSUlSIGZpbHRlciB3
aXRoIHVubm9ybWFsaXplZCBjb2VmZmljaWVudHMgZXF1YWxzIFsxLC0wLjg5OTk5OTk3NjE1ODE0
MjEsMC44MTAwMDAwMDIzODQxODU4LC0wLjcyODk5OTk3MjM0MzQ0NDgsMC42NTYwOTk5NzUxMDkx
MDAzLC0wLjU5MDQ4OTk4MzU1ODY1NDgsMC41MzE0NDA5NzMyODE4NjA0LC0wLjQ3ODI5NjkwNTc1
NTk5NjcsMC40MzA0NjcyMTgxNjA2MjkzLC0wLjM4NzQyMDQ3NTQ4Mjk0MDcsMC4zNDg2Nzg0Mzk4
NTU1NzU1NiwtMC4zMTM4MTA1ODY5MjkzMjEzLDAuMjgyNDI5NTQ2MTE3NzgyNiwtMC4yNTQxODY1
NzA2NDQzNzg2NiwwLjIyODc2NzkzMTQ2MTMzNDIzLC0wLjIwNTg5MTEzMjM1NDczNjMzLi4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6Mi4x
OTU4ZS0zOCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbY29lZmZpY2llbnQtbm9y
bWFsaXphdGlvbl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMyBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbb25lLXplcm9dICAKK1BBU1MgICBJSVIgMS16ZXJvIG91dHB1dCBlcXVhbHMgWzAu
NSwwLjUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQi
OjB9LiAKK1BBU1MgPCBbb25lLXplcm9dIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEg
YXNzZXJ0aW9ucykgCiBQQVNTID4gW29uZS1wb2xlXSAgCitQQVNTICAgSUlSIDEtcG9sZSBvdXRw
dXQgZXF1YWxzIFsxLC0wLjksMC44MSwtMC43MjkwMDAwMDAwMDAwMDAxLDAuNjU2MTAwMDAwMDAw
MDAwMSwtMC41OTA0OTAwMDAwMDAwMDAyLDAuNTMxNDQxMDAwMDAwMDAwMiwtMC40NzgyOTY5MDAw
MDAwMDAxNCwwLjQzMDQ2NzIxMDAwMDAwMDE2LC0wLjM4NzQyMDQ4OTAwMDAwMDE1LDAuMzQ4Njc4
NDQwMTAwMDAwMTUsLTAuMzEzODEwNTk2MDkwMDAwMTcsMC4yODI0Mjk1MzY0ODEwMDAxNywtMC4y
NTQxODY1ODI4MzI5MDAxMywwLjIyODc2NzkyNDU0OTYxMDEyLC0wLjIwNTg5MTEzMjA5NDY0OTEu
Li5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xk
IjoyLjc2NTdlLTgsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTIDwgW29uZS1wb2xlXSBB
bGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFswOiBs
b3dwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbG93cGFzcyBlcXVhbHMgWzAu
MDAyMDY3NjIyNDk1ODE1MTU4LDAuMDEwMjYyMDM4NTU4NzIxNTQyLDAuMDI2NDA4MzQ0NTA3MjE3
NDA3LDAuMDUwMTQ2MTk2MDM3NTMwOSwwLjA4MTA2MjczNDEyNzA0NDY4LDAuMTE4Njk3NTE2NjIw
MTU5MTUsMC4xNjI1NDc2NDc5NTMwMzM0NSwwLjIxMjA3MzIwNjkwMTU1MDMsMC4yNjY3MDI2ODE3
Nzk4NjE0NSwwLjMyNTgzODc0NDY0MDM1MDM0LDAuMzg4ODYzNzEyNTQ5MjA5NiwwLjQ1NTE0NTQx
ODY0Mzk1MTQsMC41MjQwNDI4NDQ3NzIzMzg5LDAuNTk0OTExNDU2MTA4MDkzMywwLjY2NzEwOTA3
MjIwODQwNDUsMC43NDAwMDA1NDU5Nzg1NDYxLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAw
MDQ5ODM0fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBsb3dwYXNzIGlz
IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS4yMjEuIAorUEFTUyA8IFswOiBsb3dwYXNzXSBB
bGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFsxOiBo
aWdocGFzc10gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIGhpZ2hwYXNzIGVxdWFscyBb
MC45ODM2NzEwMDk1NDA1NTc5LDAuOTQ3NDc4NjUyMDAwNDI3MiwwLjkwNDQ4MjQyNDI1OTE4NTgs
MC44NTUyMzIxMTk1NjAyNDE3LDAuODAwMzEzMjkzOTMzODY4NCwwLjc0MDM0MTk2MTM4MzgxOTYs
MC42NzU5NTgyMTYxOTAzMzgxLDAuNjA3ODIwMzMyMDUwMzIzNSwwLjUzNjU5ODkyMDgyMjE0MzYs
MC40NjI5NzEwMzE2NjU4MDIsMC4zODc2MTQyMjAzODA3ODMxLDAuMzExMjAxMDA2MTc0MDg3NSww
LjIzNDM5MzUzNzA0NDUyNTE1LDAuMTU3ODM4MjcwMDY4MTY4NjQsMC4wODIxNjExNjU3NzM4Njg1
NiwwLjAwNzk2MzA1NjY3NjA4OTc2NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAyOSwicmVsYXRpdmVUaHJlc2hvbGQiOjAu
MDAwMDN9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGhpZ2hwYXNzIGlz
IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMDUuNDU5LiAKK1BBU1MgPCBbMTogaGlnaHBhc3Nd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzI6
IGJhbmRwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgYmFuZHBhc3MgZXF1YWxz
IFswLjAwNDU1NDI0NDY4OTY0MzM4MywwLjAxMzU4MzIxNTg4NDg2NDMzLDAuMDIyNDE2NTAwMzc0
Njc0Nzk3LDAuMDMwOTgyMTA1MDYxNDExODU4LDAuMDM5MjEwOTMwNDY2NjUxOTE3LDAuMDQ3MDM3
MzE0NjIzNTk0Mjg0LDAuMDU0Mzk5NTYxMTM2OTYwOTgsMC4wNjEyNDA0MDg1Njk1NzQzNTYsMC4w
Njc1MDc0NjgxNjM5NjcxMywwLjA3MzE1MzYyOTg5OTAyNDk2LDAuMDc4MTM3MzgyODY0OTUyMDks
MC4wODI0MjMxNTA1MzkzOTgyLDAuMDg1OTgxNDgwNzc3MjYzNjQsMC4wODg3ODkyOTkxMzA0Mzk3
NiwwLjA5MDgyOTk2ODQ1MjQ1MzYxLDAuMDkyMDkzNDUyODExMjQxMTUuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoyZS03LCJyZWxhdGl2
ZVRocmVzaG9sZCI6MC4wMDA4N30uIAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1
YWQgYmFuZHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEwNC4wNi4gCitQQVNTIDwg
WzI6IGJhbmRwYXNzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMp
IAogUEFTUyA+IFszOiBub3RjaF0gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIG5vdGNo
IGVxdWFscyBbMC45OTU0NDU3MjgzMDIwMDIsMC45ODY0MTY3NTcxMDY3ODEsMC45Nzc1ODM1Mjc1
NjUwMDI0LDAuOTY5MDE3OTIyODc4MjY1NCwwLjk2MDc4OTA4NDQzNDUwOTMsMC45NTI5NjI2OTY1
NTIyNzY2LDAuOTQ1NjAwNDUwMDM4OTA5OSwwLjkzODc1OTU2NTM1MzM5MzYsMC45MzI0OTI1NTQx
ODc3NzQ3LDAuOTI2ODQ2Mzg1MDAyMTM2MiwwLjkyMTg2MjYwMjIzMzg4NjcsMC45MTc1NzY4NDk0
NjA2MDE4LDAuOTE0MDE4NTExNzcyMTU1OCwwLjkxMTIxMDcxNTc3MDcyMTQsMC45MDkxNzAwMzE1
NDc1NDY0LDAuOTA3OTA2NTMyMjg3NTk3Ny4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDA0
MjJ9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIG5vdGNoIGlzIGdyZWF0
ZXIgdGhhbiBvciBlcXVhbCB0byA5MS4zMTIuIAorUEFTUyA8IFszOiBub3RjaF0gQWxsIGFzc2Vy
dGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNDogYWxscGFzc10g
IAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIGFsbHBhc3MgZXF1YWxzIFswLjk5MDg5MTUx
NjIwODY0ODcsMC45NzI4MzM1NzM4MTgyMDY4LDAuOTU1MTY2OTk1NTI1MzYwMSwwLjkzODAzNTc4
NjE1MTg4NiwwLjkyMTU3ODE2ODg2OTAxODYsMC45MDU5MjUzOTMxMDQ1NTMyLDAuODkxMjAwOTAw
MDc3ODE5OCwwLjg3NzUxOTE5MDMxMTQzMTksMC44NjQ5ODUwNDg3NzA5MDQ1LDAuODUzNjkyNzcw
MDA0MjcyNSwwLjg0MzcyNTIwNDQ2Nzc3MzQsMC44MzUxNTM2OTg5MjEyMDM2LDAuODI4MDM3MDIz
NTQ0MzExNSwwLjgyMjQyMTQzMTU0MTQ0MjksMC44MTgzNDAwNjMwOTUwOTI4LDAuODE1ODEzMTI0
MTc5ODQwMS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVU
aHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDA0MzF9LiAKK1BBU1MgICBTTlIg
Zm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGFsbHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFs
IHRvIDkxLjMxOS4gCitQQVNTIDwgWzQ6IGFsbHBhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4g
KHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzU6IGxvd3NoZWxmXSAgCitQQVNTICAgSUlS
RmlsdGVyIGZvciBCaXF1YWQgbG93c2hlbGYgZXF1YWxzIFsxLjAzODQ4MDI4MTgyOTgzNCwxLjEx
NjU3MjI2MDg1NjYyODQsMS4xOTY2NDQwNjc3NjQyODIyLDEuMjc4MTUxNTEyMTQ1OTk2LDEuMzYw
NTk0NjMwMjQxMzk0LDEuNDQzNTE1NDE5OTYwMDIyLDEuNTI2NDk2MTcxOTUxMjk0LDEuNjA5MTU3
NjgxNDY1MTQ5LDEuNjkxMTU3MTAyNTg0ODM4OSwxLjc3MjE4NjYzNjkyNDc0MzcsMS44NTE5NzA5
MTEwMjYwMDEsMS45MzAyNjYyNjExMDA3NjksMi4wMDY4NTc4NzIwMDkyNzczLDIuMDgxNTU4NDY1
OTU3NjQxNiwyLjE1NDIwNjk5MTE5NTY3ODcsMi4yMjQ2NjYxMTg2MjE4MjYuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2
ZVRocmVzaG9sZCI6MC4wMDAwMjk4fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJp
cXVhZCBsb3dzaGVsZiBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gOTAuNjA5LiAKK1BBU1Mg
PCBbNTogbG93c2hlbGZdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9u
cykgCiBQQVNTID4gWzY6IGhpZ2hzaGVsZl0gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFk
IGhpZ2hzaGVsZiBlcXVhbHMgWzMuMDQ1MTAxNDA0MTkwMDYzNSwyLjgxNjExNDY2NDA3Nzc1OSwy
LjU5ODU0MjQ1MTg1ODUyMDUsMi4zOTM1NTc3ODY5NDE1MjgzLDIuMjAxOTc1MzQ1NjExNTcyMywy
LjAyNDI5Njk5ODk3NzY2MSwxLjg2MDc1Mzc3NDY0Mjk0NDMsMS43MTEzNDY2MjYyODE3MzgzLDEu
NTc1ODgyMzE1NjM1NjgxMiwxLjQ1NDAwNzAyOTUzMzM4NjIsMS4zNDUyMzY4OTc0Njg1NjcsMS4y
NDg5ODQ4MTM2OTAxODU1LDEuMTY0NTg1MzUxOTQzOTY5NywxLjA5MTMxNTc0NjMwNzM3MywxLjAy
ODQxNTY3OTkzMTY0MDYsMC45NzUxMDI5NjEwNjMzODUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6
MC4wMDAwMTI0fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBoaWdoc2hl
bGYgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEwMy4xNTkuIAorUEFTUyA8IFs2OiBoaWdo
c2hlbGZdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gWzc6IHBlYWtpbmddICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBwZWFraW5nIGVx
dWFscyBbMS4wMDU1NDg3MTU1OTE0MzA3LDEuMDE2NTcxMjgzMzQwNDU0LDEuMDI3Mzk4NTg2Mjcz
MTkzNCwxLjAzNzk0MTA5ODIxMzE5NTgsMS4wNDgxMTE5MTU1ODgzNzksMS4wNTc4Mjc5NDk1MjM5
MjU4LDEuMDY3MDEwMTY0MjYwODY0MywxLjA3NTU4NDQxMTYyMTA5MzgsMS4wODM0ODIxNDYyNjMx
MjI2LDEuMDkwNjQwNzgzMzA5OTM2NSwxLjA5NzAwNDA1NTk3Njg2NzcsMS4xMDI1MjI5NjkyNDU5
MTA2LDEuMTA3MTU1NDQyMjM3ODU0LDEuMTEwODY3NTAwMzA1MTc1OCwxLjExMzYzMjY3ODk4NTU5
NTcsMS4xMTU0MzI3MzkyNTc4MTI1Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ug
b2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDUwNX0u
IAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgcGVha2luZyBpcyBncmVhdGVy
IHRoYW4gb3IgZXF1YWwgdG8gOTEuNTA0LiAKK1BBU1MgPCBbNzogcGVha2luZ10gQWxsIGFzc2Vy
dGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbbXVsdGktY2hhbm5l
bF0gIAorUEFTUyAgIE1heCBkaWZmZXJlbmNlIGJldHdlZW4gSUlSIGFuZCBCaXF1YWQgb24gY2hh
bm5lbCAwIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAwLjAwMDAzNzY3MS4gCitQQVNTICAgTWF4
IGRpZmZlcmVuY2UgYmV0d2VlbiBJSVIgYW5kIEJpcXVhZCBvbiBjaGFubmVsIDEgaXMgbGVzcyB0
aGFuIG9yIGVxdWFsIHRvIDAuMDAwMDMwMDcxLiAKK1BBU1MgICBNYXggZGlmZmVyZW5jZSBiZXR3
ZWVuIElJUiBhbmQgQmlxdWFkIG9uIGNoYW5uZWwgMiBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8g
MC4wMDAwMjYyNDEuIAorUEFTUyA8IFttdWx0aS1jaGFubmVsXSBBbGwgYXNzZXJ0aW9ucyBwYXNz
ZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFs0dGgtb3JkZXItaWlyXSAgCi1GQUlM
ICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDEzIHRhc2tzIHdlcmUgZmFp
bGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICA0LXRoIG9y
ZGVyIElJUkZpbHRlciAoYmlxdWFkIHJlZikgZXF1YWxzIFswLjAwMDAwNDE4MTcxOTMwNTA1MTk1
NiwwLjAwMDAzMjk2NTc5NTk4MDk5OTI0NiwwLjAwMDEyOTM5NzY4MjAzMDY4NTI1LDAuMDAwMzQ3
NzM2NTgyNjI1NjU3MywwLjAwMDczODcyNzI3ODA3NjExMjMsMC4wMDEzNDQ2ODk3NTAxMTI1OTMy
LDAuMDAyMTk5Mzc2MjM0Nzg0NzIyMywwLjAwMzMyNzk1NTk1NzUwMjEyNjcsMC4wMDQ3NDcxMTY5
MzgyMzMzNzU1LDAuMDA2NDY1MjgxODI1NTEyNjQ4LDAuMDA4NDgyOTIyNzk5ODg1MjczLDAuMDEw
NzkyOTcwNjU3MzQ4NjMzLDAuMDEzMzgxMzAzMjg4MDQyNTQ1LDAuMDE2MjI3MzEyMzg2MDM1OTIs
MC4wMTkzMDQ1MTk1MTkyMDk4NjIsMC4wMjI1ODEyNTEzMzgxMjQyNzUuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxLjU5ZS03LCJyZWxh
dGl2ZVRocmVzaG9sZCI6MC4wMDAwMjExfS4gCitQQVNTICAgU05SIG9mIDQtdGggb3JkZXIgSUlS
RmlsdGVyIChiaXF1YWQgcmVmKSBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTA4Ljk0Ny4g
CitQQVNTIDwgWzR0aC1vcmRlci1paXJdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIg
YXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEzIHRhc2tz
IHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRl
cm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRG
cmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50eHQKaW5kZXggYzFjMTZiNDU2Yjc0M2VjNjdkYmQ2
YWQwZGNiMjQzZDc3ZTRhZTJjYS4uODNjNGQ4NGI1NTkzNWVhMjZjODM5MTE0YmVjOWNmMTBhNjNl
NjVlMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9p
aXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVzcG9uc2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWdldEZyZXF1ZW5jeVJlc3Bv
bnNlLWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwyMiBAQAogCiBQQVNTICMgQVVESVQgVEFTSyBS
VU5ORVIgU1RBUlRFRC4gCi1GQUlMIEV4ZWN1dGluZyAiMS1wb2xlIElJUiIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlcihbMV0sIFsxLCAtMC45XSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiY29tcGFyZSBJSVIgYW5kIGJpcXVhZCIgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2Vm
LmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicg
aXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICJnZXRGcmVxdWVuY3lSZXNwb25zZSIgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUmVmZXJl
bmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCitQQVNTIEV4ZWN1
dGluZyAiMS1wb2xlIElJUiIgCitQQVNTIEV4ZWN1dGluZyAiY29tcGFyZSBJSVIgYW5kIGJpcXVh
ZCIgCitQQVNTIEV4ZWN1dGluZyAiZ2V0RnJlcXVlbmN5UmVzcG9uc2UiIAogUEFTUyBBdWRpdCBy
ZXBvcnQgCiBQQVNTID4gWzEtcG9sZSBJSVJdICAKK1BBU1MgICAxLXBvbGUgSUlSIE1hZ25pdHVk
ZSBSZXNwb25zZSBlcXVhbHMgWzEwLDkuOTk1NTYxNTk5NzMxNDQ1LDkuOTgyMjgxNjg0ODc1NDg4
LDkuOTYwMjY2MTEzMjgxMjUsOS45Mjk2ODg0NTM2NzQzMTYsOS44OTA3ODUyMTcyODUxNTYsOS44
NDM4NTIwNDMxNTE4NTUsOS43ODkyMzg5Mjk3NDg1MzUsOS43MjczNDE2NTE5MTY1MDQsOS42NTg1
OTIyMjQxMjEwOTQsOS41ODM0NTUwODU3NTQzOTUsOS41MDI0MTg1MTgwNjY0MDYsOS40MTU5ODMy
MDAwNzMyNDIsOS4zMjQ2NTkzNDc1MzQxOCw5LjIyODk1ODEyOTg4MjgxMiw5LjEyOTM4NDA0MDgz
MjUyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MC4wMDAwMDI4NjExLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIDEtcG9s
ZSBJSVIgUGhhc2UgUmVzcG9uc2UgZXF1YWxzIFswLC0wLjAyODI2NTUwMjMwMzgzODczLC0wLjA1
NjQ3ODEyNDExMTg5MDc5LC0wLjA4NDU4NTU0NzQ0NzIwNDU5LC0wLjExMjUzNjU1NzAxODc1Njg3
LC0wLjE0MDI4MTU3MjkzNzk2NTQsLTAuMTY3NzczMDk3NzUzNTI0NzgsLTAuMTk0OTY2MTY3MjEx
NTMyNiwtMC4yMjE4MTg2ODU1MzE2MTYyLC0wLjI0ODI5MTc3NTU4NDIyMDksLTAuMjc0MzQ5OTU3
NzA0NTQ0MDcsLTAuMjk5OTYxMjM5MDk5NTAyNTYsLTAuMzI1MDk3NDQxNjczMjc4OCwtMC4zNDk3
MzM4ODkxMDI5MzU4LC0wLjM3Mzg0OTcxOTc2MjgwMjEsLTAuMzk3NDI3NDY5NDkxOTU4Ni4uLl0g
d2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEu
Nzg4MmUtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbMS1wb2xlIElJUl0gQWxs
IGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbY29tcGFy
ZSBJSVIgYW5kIGJpcXVhZF0gIAorUEFTUyAgIElJUiBNYWduaXR1ZGUgUmVzcG9uc2UgZXF1YWxz
IFsxLDEuMDAyODM0NTU4NDg2OTM4NSwxLjAxMTM0Nzg4OTkwMDIwNzUsMS4wMjU1NTQ4OTU0MDEw
MDEsMS4wNDU0MjgyNzYwNjIwMTE3LDEuMDcwODA1MzExMjAzMDAzLDEuMTAxMjI1NDk1MzM4NDQs
MS4xMzU2NzE5NzMyMjg0NTQ2LDEuMTcyMTk1MDc2OTQyNDQzOCwxLjIwNzQ1NDMyMzc2ODYxNTcs
MS4yMzYzNTYzNzc2MDE2MjM1LDEuMjUyMjA5NzgyNjAwNDAyOCwxLjI0Nzk2MjIzNjQwNDQxOSwx
LjIxODY0NDYxODk4ODAzNywxLjE2MzkwNTg1ODk5MzUzMDMsMS4wODg2NjQ4ODkzMzU2MzIzLi4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MC4wMDAwMjc0MTksInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgSUlSIFBoYXNlIFJl
c3BvbnNlIGVxdWFscyBbMCwtMC4wNjEzMTUzMjQxNTc0NzY0MjUsLTAuMTIzOTExMzczMzE3MjQx
NjcsLTAuMTg5MTIyMjQ0NzE1NjkwNiwtMC4yNTgzODY5Mzk3NjQwMjI4LC0wLjMzMzI5Mzc5NTU4
NTYzMjMsLTAuNDE1NjA3MDY0OTYyMzg3MSwtMC41MDcyNTAyNDkzODU4MzM3LC0wLjYxMDIwMjU1
MDg4ODA2MTUsLTAuNzI2MjQwMDM4ODcxNzY1MSwtMC44NTY0NDkxODY4MDE5MTA0LC0xLjAwMDUw
NjE2MjY0MzQzMjYsLTEuMTU1OTI3MzAwNDUzMTg2LC0xLjMxNzc4MDk3MTUyNzA5OTYsLTEuNDc5
Mzg5NTQ4MzAxNjk2OCwtMS42MzM5NTk3NzAyMDI2MzY3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMjc2NTcsInJlbGF0aXZl
VGhyZXNob2xkIjowfS4gCitQQVNTIDwgW2NvbXBhcmUgSUlSIGFuZCBiaXF1YWRdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2dldEZyZXF1ZW5j
eVJlc3BvbnNlXSBUZXN0IG91dC1vZi1ib3VuZHMgZnJlcXVlbmN5IHZhbHVlcyAKK1BBU1MgICBN
YWduaXR1ZGUgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IC0xIGlzIE5hTi4gCitQQVNTICAgTWFnbml0
dWRlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAyNDAwMSBpcyBOYU4uIAorUEFTUyAgIFBoYXNlIHJl
c3BvbnNlIGF0IGZyZXF1ZW5jeSAtMSBpcyBOYU4uIAorUEFTUyAgIFBoYXNlIHJlc3BvbnNlIGF0
IGZyZXF1ZW5jeSAyNDAwMSBpcyBOYU4uIAorUEFTUyA8IFtnZXRGcmVxdWVuY3lSZXNwb25zZV0g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNCBhc3NlcnRpb25zKSAKIFBBU1MgIyBBVURJ
VCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMyB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZp
bHRlcm5vZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVy
ZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0CmluZGV4IGJmNmRmY2Y4NmFmY2Zh
NTFmZWFhYjA1YWYwYmYwMGUxNjlhMTg4MDIuLjEyZTcxNzAyMTAyZDdjYzUzYTFkNjI0ZDIxY2Y1
ZGE2NmE4NDE2ZGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRl
cmZhY2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50eHQK
QEAgLTEsMjIgKzEsMTAgQEAKIAogUEFTUyBJSVJGaWx0ZXJOb2RlIGNvZWZmaWNpZW50cyBhcmUg
Y2hlY2tlZCBwcm9wZXJseSAKLUZBSUwgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBub3Qg
YmUgZW1wdHkgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7Ci0gICAg
ICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQotICAgICAgfSIgdGhyZXcgb2JqZWN0
ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdh
Yy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMuY3JlYXRlSUlSRmlsdGVyJyBpcyB1
bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb3RTdXBwb3J0ZWRFcnJvcjog
cHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgOQotRkFJTCBm
ZWVkYmFjayBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0eSBhc3NlcnRfdGhyb3dzX2RvbTog
ZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEs
IGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmls
dGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcy
KScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9N
RXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8g
dW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIG1vcmUgdGhhbiAyMCBmZWVkZm9yd2FyZCBjb2Vm
ZmljaWVudHMgY2FuIG5vdCBiZSB1c2VkIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiZnVu
Y3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAgICAg
IH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNyZWF0
ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gTm90
U3VwcG9ydGVkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4
cGVjdGVkIDkKLUZBSUwgbW9yZSB0aGFuIDIwIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90
IGJlIHVzZWQgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7Ci0gICAg
ICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQotICAgICAgfSIgdGhyZXcgb2JqZWN0
ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdh
Yy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMuY3JlYXRlSUlSRmlsdGVyJyBpcyB1
bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb3RTdXBwb3J0ZWRFcnJvcjog
cHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgOQotRkFJTCBh
dCBsZWFzdCBvbmUgZmVlZGZvcndhcmQgY29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyBhc3Nl
cnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRl
SUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjog
YWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZp
bHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRo
YXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yOiBwcm9wZXJ0eSAiY29k
ZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAxMQotRkFJTCB0aGUgZmlyc3QgZmVl
ZGJhY2sgY29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyBhc3NlcnRfdGhyb3dzX2RvbTogZnVu
Y3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFy
ZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVy
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScs
ICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhj
ZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5k
ZWZpbmVkLCBleHBlY3RlZCAxMQotRkFJTCBJSVJGaWx0ZXJOb2RlIGdldEZyZXF1ZW5jeVJlc3Bv
bnNlIGhhbmRsZXMgaW52YWxpZCBmcmVxdWVuY2llcyBwcm9wZXJseSBhYy5jcmVhdGVJSVJGaWx0
ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKFswLjUsIDAuNV0s
IFsxLjBdKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkKK1BBU1MgZmVlZGZv
cndhcmQgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgZW1wdHkgCitQQVNTIGZlZWRiYWNrIGNvZWZm
aWNpZW50cyBjYW4gbm90IGJlIGVtcHR5IAorUEFTUyBtb3JlIHRoYW4gMjAgZmVlZGZvcndhcmQg
Y29lZmZpY2llbnRzIGNhbiBub3QgYmUgdXNlZCAKK1BBU1MgbW9yZSB0aGFuIDIwIGZlZWRiYWNr
IGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIHVzZWQgCitQQVNTIGF0IGxlYXN0IG9uZSBmZWVkZm9y
d2FyZCBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIAorUEFTUyB0aGUgZmlyc3QgZmVlZGJh
Y2sgY29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyAKK1BBU1MgSUlSRmlsdGVyTm9kZSBnZXRG
cmVxdWVuY3lSZXNwb25zZSBoYW5kbGVzIGludmFsaWQgZnJlcXVlbmNpZXMgcHJvcGVybHkgCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407228</attachid>
            <date>2020-08-25 13:56:35 -0700</date>
            <delta_ts>2020-08-26 09:16:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200825135634.patch</filename>
            <type>text/plain</type>
            <size>125706</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uYjFmMzJhYTM2YTI5MGNkNWUyYzI3ZmViMDc4MmFj
ZmFmMzhkMDA4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTA4LTI1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgor
ICAgICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQor
CisgICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAg
ICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2Zp
bGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAg
ICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9B
dWRpb05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJp
bmcpOgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNz
YXJ5KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAq
IE1vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpCYXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8v
QmFzZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BL
ZXJuZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQ
S2VybmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAg
ICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8v
SUlSRmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFi
bGUpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVs
ZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRp
by9JSVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRp
by9JSVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nv
cjo6SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlBy
b2Nlc3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6
CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2Vi
Q29yZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9k
dWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50
eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRl
UG9seW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJ
UkZpbHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1
ZW5jeVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgor
ICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3Mg
R2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5p
dGlhbGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRp
YWxpemF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1Nv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJkNGY4YmU3NmQ1MzFkMDMyNjNjMTYw
MjY0MjYzOGU4YWYxMzNhNTkuLjI5ZjExN2ZjOWVjOWU5YWUwOTk2Y2JlMmMyNzA2YzQ4M2NjZWRk
MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00ODgsNiArNDg4LDggQEAgc2V0KFdlYkNvcmVf
Tk9OX1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nv
ck9wdGlvbnMuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICAgICBNb2R1
bGVzL3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbAorICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmls
dGVyTm9kZS5pZGwKKyAgICBNb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsCiAg
ICAgTW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBi
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMjU0
MmVmMWM1Y2FhOGQ3MGY4MTAzNzRiMmIwYzJhOWI3YTAwOTU4Mi4uMjVkYzcwYzEwMGZmZmFjNGQy
ZjgyNjI5NWQyNWM1NjhiNTA4YzU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZl
ZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0zMzksNiArMzM5LDggQEAgJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAogJChQUk9KRUNUX0RJ
UikvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbAogJChQUk9K
RUNUX0RJUikvTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01v
ZHVsZXMvd2ViYXVkaW8vR2Fpbk9wdGlvbnMuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL01l
ZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2Vi
YXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3Qg
Yi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAy
NzkxZTRkMTk5YzM1MmMxOGY0NTI0NzEwMDAxOWE4MGFjNTE3MmE4Li5hNTYwMDM0MzNkOTU1NjE2
MTMwODJhNDliMjMxYmYwY2YzZTkyNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtOTgyLDYgKzk4MiwxMCBAQCAkKEJVSUxUX1BS
T0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lEQlRyYW5zYWN0aW9uTW9kZS5j
cHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJh
bnNhY3Rpb25Nb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaAorJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2RlLmNwcAor
JChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJO
b2RlLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSUlS
RmlsdGVyT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9X
ZWJDb3JlL0pTSUlSRmlsdGVyT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0lkbGVEZWFkbGluZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZURlYWRsaW5lLmgKICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJhMTA3OTI1MzRiYjNmMmQ1N2U2MjIx
MWQ2MDMxNjYzN2Y2ZTY5MmQuLmUyZmI4YTkyNTU4NGYzMTAyZmRhY2I0NDdkMmU3NDNmM2ZkNTQz
OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDIwLDYgKzQyMCw4IEBAIEpT
X0JJTkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1p
Y3NDb21wcmVzc29yT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRp
by9HYWluTm9kZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9HYWluT3B0
aW9ucy5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2Rl
LmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMu
aWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9T
b3VyY2VOb2RlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxl
bWVudEF1ZGlvU291cmNlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJh
dWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCBcCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKaW5kZXggNDFkZDEzZGVhN2U3Y2E3
NDc0NmI2NjQ1OThkMDNkMDBkYjQxZjVhOS4uYmIyYWU5MGU0ZGIyYTcwYzU1ZDc0MDM0N2I5MGY0
MGQ3NjFhZjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9B
dWRpb05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9O
b2RlLmNwcApAQCAtOTQsNyArOTQsOCBAQCBTdHJpbmcgY29udmVydEVudW1lcmF0aW9uVG9TdHJp
bmcoQXVkaW9Ob2RlOjpOb2RlVHlwZSBlbnVtZXJhdGlvblZhbHVlKQogICAgIHN0YXRpY19hc3Nl
cnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlQmFzaWNJbnNwZWN0b3Ip
ID09IDE4LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUJhc2ljSW5zcGVjdG9yIGlzIG5vdCAxOCBhcyBl
eHBlY3RlZCIpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05v
ZGU6Ok5vZGVUeXBlQ29uc3RhbnQpID09IDE5LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCBpcyBu
b3QgMTkgYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVf
dD4oQXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbykgPT0gMjAsICJBdWRpb05vZGU6Ok5vZGVUeXBl
U3RlcmVvIGlzIG5vdCAyMCBhcyBleHBlY3RlZCIpOwotICAgIHN0YXRpY19hc3NlcnQoc3RhdGlj
X2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlRW5kKSA9PSAyMSwgIkF1ZGlvTm9kZTo6
Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNz
ZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlcikgPT0g
MjEsICJBdWRpb05vZGU6Ok5vZGVUeXBlSUlSRmlsdGVyIGlzIG5vdCAyMSBhcyBleHBlY3RlZCIp
OworICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVU
eXBlRW5kKSA9PSAyMiwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjIgYXMg
ZXhwZWN0ZWQiKTsKIAogICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9u
VmFsdWUpIDwgV1RGX0FSUkFZX0xFTkdUSCh2YWx1ZXMpKTsKICAgICAKQEAgLTU1Myw3ICs1NTQs
NyBAQCB2b2lkIEF1ZGlvTm9kZTo6ZGlzYWJsZU91dHB1dHNJZk5lY2Vzc2FyeSgpCiAgICAgICAg
IC8vIGxvbmdlciBhbnkgYWN0aXZlIGNvbm5lY3Rpb25zLgogICAgICAgICAvLyBBbHNvLCBXYXZl
U2hhcGVyTm9kZSBtYXkgcHJvZHVjZSBub24tc2lsZW5jZSBldmVuIHdoZW4gaXQgbm8gbG9uZ2Vy
IGhhcyBhbnkgb3V0cHV0LiBGb3IgdGhpcyByZWFzb24sIHdlIGNhbm5vdAogICAgICAgICAvLyBk
aXNhYmxlIGl0IGVpdGhlci4KLSAgICAgICAgaWYgKG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVDb252
b2x2ZXIgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZURlbGF5ICYmIG5vZGVUeXBlKCkgIT0gTm9k
ZVR5cGVXYXZlU2hhcGVyKSB7CisgICAgICAgIGlmIChub2RlVHlwZSgpICE9IE5vZGVUeXBlQ29u
dm9sdmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxheSAmJiBub2RlVHlwZSgpICE9IE5v
ZGVUeXBlV2F2ZVNoYXBlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlSUlSRmlsdGVyKSB7CiAg
ICAgICAgICAgICBtX2lzRGlzYWJsZWQgPSB0cnVlOwogICAgICAgICAgICAgZm9yIChhdXRvJiBv
dXRwdXQgOiBtX291dHB1dHMpCiAgICAgICAgICAgICAgICAgb3V0cHV0LT5kaXNhYmxlKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAppbmRleCA3MWJjYmRj
NWM2NGNiYTE1MWE4YzdlYzU1YWFjM2Q4ZDExYWVjN2M3Li5mOTY1ZWEwNTJkZDk5OTYxN2EwMzYw
YjM3ZGI5ZmE0OWZjYjBmYzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0F1ZGlvTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
QXVkaW9Ob2RlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBOb2RlVHlwZUJh
c2ljSW5zcGVjdG9yLAogICAgICAgICBOb2RlVHlwZUNvbnN0YW50LAogICAgICAgICBOb2RlVHlw
ZVN0ZXJlbywKKyAgICAgICAgTm9kZVR5cGVJSVJGaWx0ZXIsCiAgICAgICAgIE5vZGVUeXBlRW5k
CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9C
YXNlQXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5jcHAKaW5kZXggODI1NDRjNmE2NGMyOWUzZDk0NTE2YTMzZjdmNzQzMWI4
MWRlZWVlYi4uMjNlNzZkOGYxNTE0YWJlMDg1M2Y3Y2Y1MzE4N2JhY2I0ZTcxMzg2MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQu
Y3BwCkBAIC02MCw2ICs2MCw4IEBACiAjaW5jbHVkZSAiR2VuZXJpY0V2ZW50UXVldWUuaCIKICNp
bmNsdWRlICJIUlRGRGF0YWJhc2VMb2FkZXIuaCIKICNpbmNsdWRlICJIUlRGUGFubmVyLmgiCisj
aW5jbHVkZSAiSUlSRmlsdGVyTm9kZS5oIgorI2luY2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIK
ICNpbmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJy
ZWQuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC02MzAsNiArNjMyLDE3IEBAIEV4Y2VwdGlv
bk9yPFJlZjxTdGVyZW9QYW5uZXJOb2RlPj4gQmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlU3RlcmVv
UGFubmVyKCkKICAgICByZXR1cm4gU3RlcmVvUGFubmVyTm9kZTo6Y3JlYXRlKCp0aGlzKTsKIH0K
IAorRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5vZGU+PiBCYXNlQXVkaW9Db250ZXh0OjpjcmVh
dGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkZm9yd2FyZCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkYmFj
aykKK3sKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOworCisgICAgQVNTRVJUKGlzTWFp
blRocmVhZCgpKTsKKyAgICBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnM7CisgICAgb3B0aW9ucy5m
ZWVkZm9yd2FyZCA9IFdURk1vdmUoZmVlZGZvcndhcmQpOworICAgIG9wdGlvbnMuZmVlZGJhY2sg
PSBXVEZNb3ZlKGZlZWRiYWNrKTsKKyAgICByZXR1cm4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsICp0aGlzLCBXVEZNb3ZlKG9wdGlvbnMpKTsKK30KKwogdm9p
ZCBCYXNlQXVkaW9Db250ZXh0Ojpub3RpZnlOb2RlRmluaXNoZWRQcm9jZXNzaW5nKEF1ZGlvTm9k
ZSogbm9kZSkKIHsKICAgICBBU1NFUlQoaXNBdWRpb1RocmVhZCgpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggNDRjMmNl
NzZlMGRjNjU3MGI1ZmYxYTU5NDhiOTBlYmIxZGFiYjkzZi4uNjdmMzQ5MjQ5NzAxZWMwM2I2ODgw
OTQxZjgxZjliODc1YmZjODllMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTcwLDYgKzcwLDcgQEAgY2xhc3MgRG9jdW1l
bnQ7CiBjbGFzcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlOwogY2xhc3MgR2Fpbk5vZGU7CiBjbGFz
cyBIVE1MTWVkaWFFbGVtZW50OworY2xhc3MgSUlSRmlsdGVyTm9kZTsKIGNsYXNzIE1haW5UaHJl
YWRHZW5lcmljRXZlbnRRdWV1ZTsKIGNsYXNzIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZTsK
IGNsYXNzIE1lZGlhU3RyZWFtOwpAQCAtNzgsNiArNzksNyBAQCBjbGFzcyBNZWRpYVN0cmVhbUF1
ZGlvU291cmNlTm9kZTsKIGNsYXNzIE9zY2lsbGF0b3JOb2RlOwogY2xhc3MgUGFubmVyTm9kZTsK
IGNsYXNzIFBlcmlvZGljV2F2ZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFz
cyBTY3JpcHRQcm9jZXNzb3JOb2RlOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTdGVy
ZW9QYW5uZXJOb2RlOwpAQCAtMTY0LDYgKzE2Niw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25P
cjxSZWY8UGVyaW9kaWNXYXZlPj4gY3JlYXRlUGVyaW9kaWNXYXZlKFZlY3RvcjxmbG9hdD4mJiBy
ZWFsLCBWZWN0b3I8ZmxvYXQ+JiYgaW1hZ2luYXJ5LCBjb25zdCBQZXJpb2RpY1dhdmVDb25zdHJh
aW50cyYgPSB7IH0pOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxDb25zdGFudFNvdXJjZU5vZGU+PiBj
cmVhdGVDb25zdGFudFNvdXJjZSgpOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxTdGVyZW9QYW5uZXJO
b2RlPj4gY3JlYXRlU3RlcmVvUGFubmVyKCk7CisgICAgRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRl
ck5vZGU+PiBjcmVhdGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFZlY3Rvcjxk
b3VibGU+JiYgZmVlZGZvcndhcmQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spOwogCiAgICAg
Ly8gV2hlbiBhIHNvdXJjZSBub2RlIGhhcyBubyBtb3JlIHByb2Nlc3NpbmcgdG8gZG8gKGhhcyBm
aW5pc2hlZCBwbGF5aW5nKSwgdGhlbiBpdCB0ZWxscyB0aGUgY29udGV4dCB0byBkZXJlZmVyZW5j
ZSBpdC4KICAgICB2b2lkIG5vdGlmeU5vZGVGaW5pc2hlZFByb2Nlc3NpbmcoQXVkaW9Ob2RlKik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0Nv
bnRleHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250
ZXh0LmlkbAppbmRleCBjNjVjYjE5NmI3MzYxZjk3ZjBmOTljMDVmN2E5ZTEwNmIwYjQxY2FhLi4z
MWYwMWJiZWU0NzFmZDQ2ZWQwYWM1ODQ1ODU2NGVjMzVlMDI2YTljIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTY2
LDYgKzY2LDcgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIFBlcmlvZGljV2F2ZSBjcmVhdGVQ
ZXJpb2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+IHJlYWwsIHNlcXVlbmNlPGZsb2F0PiBpbWFnLCBv
cHRpb25hbCBQZXJpb2RpY1dhdmVPcHRpb25zIG9wdGlvbnMpOwogICAgIFtNYXlUaHJvd0V4Y2Vw
dGlvbl0gQ29uc3RhbnRTb3VyY2VOb2RlIGNyZWF0ZUNvbnN0YW50U291cmNlKCk7CiAgICAgW01h
eVRocm93RXhjZXB0aW9uXSBTdGVyZW9QYW5uZXJOb2RlIGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOwor
ICAgIFtNYXlUaHJvd0V4Y2VwdGlvbiwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0g
SUlSRmlsdGVyTm9kZSBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiBmZWVkZm9yd2Fy
ZCwgc2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFjayk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGlu
ZyBhbmQgbWVyZ2luZwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gQ2hhbm5lbFNwbGl0dGVyTm9k
ZSBjcmVhdGVDaGFubmVsU3BsaXR0ZXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBudW1iZXJPZk91
dHB1dHMgPSA2KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSRFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQ
S2VybmVsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NDZmMTdhMTNmYzI1ZmRkOWZlNzdiNzM5NTM1MzQ1NTI5
NDY3MDY4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJEU1BLZXJuZWwuY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAx
NiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJE
U1BLZXJuZWwuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitJSVJEU1BLZXJuZWw6OklJUkRT
UEtlcm5lbChJSVJQcm9jZXNzb3ImIHByb2Nlc3NvcikKKyAgICA6IEF1ZGlvRFNQS2VybmVsKCZw
cm9jZXNzb3IpCisgICAgLCBtX2lpckZpbHRlcihwcm9jZXNzb3IuZmVlZGZvcndhcmQoKSwgcHJv
Y2Vzc29yLmZlZWRiYWNrKCkpCit7CisgICAgbV90YWlsVGltZSA9IG1faWlyRmlsdGVyLnRhaWxU
aW1lKHByb2Nlc3Nvci5zYW1wbGVSYXRlKCksIHByb2Nlc3Nvci5pc0ZpbHRlclN0YWJsZSgpKTsK
K30KKwordm9pZCBJSVJEU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxl
bmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0
KiBwaGFzZVJlc3BvbnNlKQoreworICAgIEFTU0VSVChmcmVxdWVuY3lIeik7CisgICAgQVNTRVJU
KG1hZ1Jlc3BvbnNlKTsKKyAgICBBU1NFUlQocGhhc2VSZXNwb25zZSk7CisKKyAgICBWZWN0b3I8
ZmxvYXQ+IGZyZXF1ZW5jeShsZW5ndGgpOworICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlx
dWlzdCgpOworCisgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBub3JtYWxp
emVkIGZyZXF1ZW5jeSAoMCAtPiAxKSwgd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1aXN0IGZyZXF1
ZW5jeS4KKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spCisgICAgICAg
IGZyZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKKworICAgIG1faWlyRmls
dGVyLmdldEZyZXF1ZW5jeVJlc3BvbnNlKGxlbmd0aCwgZnJlcXVlbmN5LmRhdGEoKSwgbWFnUmVz
cG9uc2UsIHBoYXNlUmVzcG9uc2UpOworfQorCit2b2lkIElJUkRTUEtlcm5lbDo6cHJvY2Vzcyhj
b25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1By
b2Nlc3MpCit7CisgICAgQVNTRVJUKHNvdXJjZSk7CisgICAgQVNTRVJUKGRlc3RpbmF0aW9uKTsK
KworICAgIG1faWlyRmlsdGVyLnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Q
cm9jZXNzKTsKK30KKwordm9pZCBJSVJEU1BLZXJuZWw6OnJlc2V0KCkKK3sKKyAgICBtX2lpckZp
bHRlci5yZXNldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBF
TkFCTEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9JSVJEU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
RFNQS2VybmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjI2MDcyZTJkZDRmOGIxZWYwMDQxMGZmZWJhZGRkYmQz
YTNhMjlhMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2
IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJh
Z21hIG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsLmgiCisjaW5jbHVkZSAiSUlSRmls
dGVyLmgiCisjaW5jbHVkZSAiSUlSUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsK
KworY2xhc3MgSUlSRFNQS2VybmVsIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsIHsKK3B1
YmxpYzoKKyAgICBleHBsaWNpdCBJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJik7CisKKyAgICAv
LyBHZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0
aGUgZ2l2ZW4gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBp
cyBpbiByYWRpYW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVu
Z3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQq
IHBoYXNlUmVzcG9uc2UpOworCisgICAgLy8gQXVkaW9EU1BLZXJuZWwKKyAgICB2b2lkIHByb2Nl
c3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0aW9uLCBzaXplX3QgZnJhbWVz
VG9Qcm9jZXNzKSBmaW5hbDsKKyAgICBkb3VibGUgdGFpbFRpbWUoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBtX3RhaWxUaW1lOyB9CisgICAgZG91YmxlIGxhdGVuY3lUaW1lKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gMDsgfQorICAgIHZvaWQgcmVzZXQoKSBmaW5hbDsKKworcHJpdmF0ZToKKyAgICBJ
SVJQcm9jZXNzb3IqIGlpclByb2Nlc3NvcigpIHsgcmV0dXJuIHN0YXRpY19jYXN0PElJUlByb2Nl
c3Nvcio+KHByb2Nlc3NvcigpKTsgfQorCisgICAgSUlSRmlsdGVyIG1faWlyRmlsdGVyOworICAg
IGRvdWJsZSBtX3RhaWxUaW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uODI5ZjE0YTFkNzc1ZmZlODMyODE5YjJlOGU4M2FlMzQ3YjQ4YTJjNwotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5j
cHAKQEAgLTAsMCArMSwxNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0g
QXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJGaWx0ZXJOb2RlLmgiCisK
KyNpbmNsdWRlICJJSVJGaWx0ZXIuaCIKKyNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBM
KElJUkZpbHRlck5vZGUpOworCisvLyBEZXRlcm1pbmUgaWYgZmlsdGVyIGlzIHN0YWJsZSBiYXNl
ZCBvbiB0aGUgZmVlZGJhY2sgY29lZmZpY2llbnRzLgorLy8gV2UgY29tcHV0ZSB0aGUgcmVmbGVj
dGlvbiBjb2VmZmljaWVudHMgZm9yIHRoZSBmaWx0ZXIuIElmLCBhdCBhbnkKKy8vIHBvaW50LCB0
aGUgbWFnbml0dWRlIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50IGlzIGdyZWF0ZXIgdGhh
bgorLy8gb3IgZXF1YWwgdG8gMSwgdGhlIGZpbHRlciBpcyBkZWNsYXJlZCB1bnN0YWJsZS4KKy8v
CisvLyBMZXQgQSh6KSBiZSB0aGUgZmVlZGJhY2sgcG9seW5vbWlhbCBnaXZlbiBieQorLy8gICBB
W25dKHopID0gMSArIGFbMV0veiArIGFbMl0vel4yICsgLi4uICsgYVtuXS96Xm4KKy8vCisvLyBU
aGUgZmlyc3QgcmVmbGVjdGlvbiBjb2VmZmljaWVudCBrW25dID0gYVtuXS4gVGhlbiwgcmVjdXJz
aXZlbHkgY29tcHV0ZQorLy8KKy8vICAgQVtuLTFdKHopID0gKEFbbl0oeikgLSBrW25dKkFbbl0o
MS96KS96Xm4pLygxLWtbbl1eMik7CisvLworLy8gc3RvcHBpbmcgYXQgQVsxXSh6KS4gSWYgYXQg
YW55IHBvaW50IHxrW25dfCA+PSAxLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlLgorc3RhdGljIGJv
b2wgaXNGaWx0ZXJTdGFibGUoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKQoreworICAg
IC8vIE1ha2UgYSBjb3B5IG9mIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMKKyAgICBWZWN0b3I8
ZG91YmxlPiBjb2VmZmljaWVudHMoZmVlZGJhY2spOworICAgIGludCBvcmRlciA9IGNvZWZmaWNp
ZW50cy5zaXplKCkgLSAxOworCisgICAgLy8gSWYgbmVjZXNzYXJ5LCBub3JtYWxpemUgZmlsdGVy
IGNvZWZmaWNpZW50cyBzbyB0aGF0IGNvbnN0YW50IHRlcm0gaXMgMS4KKyAgICBpZiAoY29lZmZp
Y2llbnRzWzBdICE9IDEpIHsKKyAgICAgICAgZm9yIChpbnQgbSA9IDE7IG0gPD0gb3JkZXI7ICsr
bSkKKyAgICAgICAgICAgIGNvZWZmaWNpZW50c1ttXSAvPSBjb2VmZmljaWVudHNbMF07CisgICAg
ICAgIGNvZWZmaWNpZW50c1swXSA9IDE7CisgICAgfQorCisgICAgLy8gQmVnaW4gcmVjdXJzaW9u
LCB1c2luZyBhIHdvcmsgYXJyYXkgdG8gaG9sZCBpbnRlcm1lZGlhdGUgcmVzdWx0cy4KKyAgICBW
ZWN0b3I8ZG91YmxlPiB3b3JrKG9yZGVyICsgMSk7CisgICAgZm9yIChpbnQgbiA9IG9yZGVyOyBu
ID49IDE7IC0tbikgeworICAgICAgICBkb3VibGUgayA9IGNvZWZmaWNpZW50c1tuXTsKKworICAg
ICAgICBpZiAoc3RkOjpmYWJzKGspID49IDEpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisK
KyAgICAgICAgLy8gTm90ZSB0aGF0IEFbbl0oMS96KS96Xm4gaXMgYmFzaWNhbGx5IHRoZSBjb2Vm
ZmljaWVudHMgb2YgQVtuXQorICAgICAgICAvLyBpbiByZXZlcnNlIG9yZGVyLgorICAgICAgICBk
b3VibGUgZmFjdG9yID0gMSAtIGsgKiBrOworICAgICAgICBmb3IgKGludCBtID0gMDsgbSA8PSBu
OyArK20pCisgICAgICAgICAgICB3b3JrW21dID0gKGNvZWZmaWNpZW50c1ttXSAtIGsgKiBjb2Vm
ZmljaWVudHNbbiAtIG1dKSAvIGZhY3RvcjsKKyAgICAgICAgY29lZmZpY2llbnRzLnN3YXAod29y
ayk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK0V4Y2VwdGlvbk9yPFJlZjxJSVJG
aWx0ZXJOb2RlPj4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQsIElJUkZp
bHRlck9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIGlmIChjb250ZXh0LmlzU3RvcHBlZCgpKQor
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKKworICAgIGNv
bnRleHQubGF6eUluaXRpYWxpemUoKTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkZm9yd2FyZC5z
aXplKCkgfHwgb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXplKCkgPiBJSVJGaWx0ZXI6Om1heE9yZGVy
KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJmZWVkZm9y
d2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCJfcyB9OworCisg
ICAgYXV0byBub25aZXJvVmFsdWVJbmRleCA9IG9wdGlvbnMuZmVlZGZvcndhcmQuZmluZE1hdGNo
aW5nKFtdKGF1dG8mIHZhbHVlKSB7IHJldHVybiAhIXZhbHVlOyB9KTsKKyAgICBpZiAobm9uWmVy
b1ZhbHVlSW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZh
bGlkU3RhdGVFcnJvciwgImZlZWRmb3J3YXJkIGFycmF5IG11c3QgY29udGFpbiBhIG5vbi16ZXJv
IHZhbHVlIl9zIH07CisKKyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpIHx8IG9wdGlv
bnMuZmVlZGJhY2suc2l6ZSgpID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiZmVlZGJhY2sgYXJyYXkgbXVzdCBoYXZl
IGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGlmICghb3B0aW9ucy5mZWVk
YmFja1swXSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAi
Zmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iX3MgfTsKKworICAg
IGJvb2wgaXNGaWx0ZXJTdGFibGUgPSBXZWJDb3JlOjppc0ZpbHRlclN0YWJsZShvcHRpb25zLmZl
ZWRiYWNrKTsKKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICBzY3JpcHRFeGVjdXRp
b25Db250ZXh0LmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2
ZWw6Oldhcm5pbmcsICJJSVJGaWx0ZXIgaXMgdW5zdGFibGUgd2l0aCBwcm92aWRlZCBmZWVkYmFj
ayBjb2VmZmljaWVudHMiX3MpOworCisgICAgYXV0byBub2RlID0gYWRvcHRSZWYoKm5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIG9wdGlvbnMuZmVlZGZvcndhcmQsIG9wdGlvbnMuZmVlZGJhY2ss
IGlzRmlsdGVyU3RhYmxlKSk7CisKKyAgICBhdXRvIHJlc3VsdCA9IG5vZGUtPmhhbmRsZUF1ZGlv
Tm9kZU9wdGlvbnMob3B0aW9ucywgeyAyLCBDaGFubmVsQ291bnRNb2RlOjpNYXgsIENoYW5uZWxJ
bnRlcnByZXRhdGlvbjo6U3BlYWtlcnMgfSk7CisgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24o
KSkKKyAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKKyAgICByZXR1
cm4gbm9kZTsKK30KKworSUlSRmlsdGVyTm9kZTo6SUlSRmlsdGVyTm9kZShCYXNlQXVkaW9Db250
ZXh0JiBjb250ZXh0LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZl
Y3Rvcjxkb3VibGU+JiBmZWVkYmFjaywgYm9vbCBpc0ZpbHRlclN0YWJsZSkKKyAgICA6IEF1ZGlv
QmFzaWNQcm9jZXNzb3JOb2RlKGNvbnRleHQpCit7CisgICAgc2V0Tm9kZVR5cGUoTm9kZVR5cGVJ
SVJGaWx0ZXIpOworICAgIG1fcHJvY2Vzc29yID0gbWFrZVVuaXF1ZTxJSVJQcm9jZXNzb3I+KGNv
bnRleHQuc2FtcGxlUmF0ZSgpLCAxLCBmZWVkZm9yd2FyZCwgZmVlZGJhY2ssIGlzRmlsdGVyU3Rh
YmxlKTsKKworICAgIGluaXRpYWxpemUoKTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gSUlSRmls
dGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5JiBmcmVxdWVuY3lIeiwg
RmxvYXQzMkFycmF5JiBtYWdSZXNwb25zZSwgRmxvYXQzMkFycmF5JiBwaGFzZVJlc3BvbnNlKQor
eworICAgIGF1dG8gZXhwZWN0ZWRMZW5ndGggPSBmcmVxdWVuY3lIei5sZW5ndGgoKTsKKyAgICBp
ZiAobWFnUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGggfHwgcGhhc2VSZXNwb25z
ZS5sZW5ndGgoKSAhPSBleHBlY3RlZExlbmd0aCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IEludmFsaWRBY2Nlc3NFcnJvciwgIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoIl9z
IH07CisKKyAgICAvLyBOb3RoaW5nIHRvIGRvIGlmIHRoZSBsZW5ndGggaXMgMC4KKyAgICBpZiAo
ZXhwZWN0ZWRMZW5ndGggPiAwKQorICAgICAgICBpaXJQcm9jZXNzb3IoKS0+Z2V0RnJlcXVlbmN5
UmVzcG9uc2UoZXhwZWN0ZWRMZW5ndGgsIGZyZXF1ZW5jeUh6LmRhdGEoKSwgbWFnUmVzcG9uc2Uu
ZGF0YSgpLCBwaGFzZVJlc3BvbnNlLmRhdGEoKSk7CisKKyAgICByZXR1cm4geyB9OworfQorCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kNmEwNTAzNjc5YTM3MDg5N2Y3MDQ0ZGMwNDUwM2FmYjgzN2U5ZDc0Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmgK
QEAgLTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1bSBBdXRo
b3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1
ZGUgIkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVyT3B0aW9u
cy5oIgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3Jl
L0Zsb2F0MzJBcnJheS5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkZpbHRl
ck5vZGUgZmluYWwgOiBwdWJsaWMgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUgeworICAgIFdURl9N
QUtFX0lTT19BTExPQ0FURUQoSUlSRmlsdGVyTm9kZSk7CitwdWJsaWM6CisgICAgc3RhdGljIEV4
Y2VwdGlvbk9yPFJlZjxJSVJGaWx0ZXJOb2RlPj4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmLCBCYXNlQXVkaW9Db250ZXh0JiwgSUlSRmlsdGVyT3B0aW9ucyYmKTsKKworICAgIEV4Y2Vw
dGlvbk9yPHZvaWQ+IGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSYgZnJlcXVlbmN5
SHosIEZsb2F0MzJBcnJheSYgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSYgcGhhc2VSZXNwb25z
ZSk7CisKK3ByaXZhdGU6CisgICAgSUlSRmlsdGVyTm9kZShCYXNlQXVkaW9Db250ZXh0JiwgY29u
c3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVl
ZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOworCisgICAgSUlSUHJvY2Vzc29yKiBpaXJQcm9j
ZXNzb3IoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxJSVJQcm9jZXNzb3IqPihwcm9jZXNzb3IoKSk7
IH0KK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkZGM1YWMzY2Yy
Nzg5YzEzNzNjZmYyMDQ2Nzc4NDE4NGNlNjRjMjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCkBAIC0wLDAgKzEsMzIg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisg
KiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMK
KyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJfQVVESU8sCisgICAgSlNHZW5l
cmF0ZVRvSlNPYmplY3QsCisgICAgRW5hYmxlZEJ5U2V0dGluZz1Nb2Rlcm5VbnByZWZpeGVkV2Vi
QXVkaW8sCitdIGludGVyZmFjZSBJSVJGaWx0ZXJOb2RlIDogQXVkaW9Ob2RlIHsKKyAgICBbTWF5
VGhyb3dFeGNlcHRpb24sIENhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVj
dG9yKEJhc2VBdWRpb0NvbnRleHQgYXVkaW9Db250ZXh0LCBJSVJGaWx0ZXJPcHRpb25zIG9wdGlv
bnMpOworICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25zZShG
bG9hdDMyQXJyYXkgZnJlcXVlbmN5SHosIEZsb2F0MzJBcnJheSBtYWdSZXNwb25zZSwgRmxvYXQz
MkFycmF5IHBoYXNlUmVzcG9uc2UpOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWIwMmY1OTc2Mzk1NGQ0
MjNmNTRiNDcyZWRmMWVmOWIwYzZmMWUzMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5oCkBAIC0wLDAgKzEsNDEgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAq
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKworI2lu
Y2x1ZGUgIkF1ZGlvTm9kZU9wdGlvbnMuaCIKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworc3RydWN0IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05vZGVP
cHRpb25zIHsKKyAgICBWZWN0b3I8ZG91YmxlPiBmZWVkZm9yd2FyZDsKKyAgICBWZWN0b3I8ZG91
YmxlPiBmZWVkYmFjazsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8v
IEVOQUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9JSVJGaWx0ZXJPcHRpb25zLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MWYzNDc4NzcxZWUxMjQ5MWJi
NmE1MDFlNWY4YjJlMjgyMjYxZTMxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25zLmlkbApAQCAtMCwwICsxLDMwIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElN
UExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCitbCisgICAgQ29uZGl0aW9uYWw9V0VCX0FVRElPCitdIGRpY3Rpb25hcnkgSUlS
RmlsdGVyT3B0aW9ucyA6IEF1ZGlvTm9kZU9wdGlvbnMgeworICAgIHJlcXVpcmVkIHNlcXVlbmNl
PGRvdWJsZT4gZmVlZGZvcndhcmQ7CisgICAgcmVxdWlyZWQgc2VxdWVuY2U8ZG91YmxlPiBmZWVk
YmFjazsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UlByb2Nlc3Nvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nl
c3Nvci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNjViNDI3MzA5YTM3NzEyNDJhYTAwNWRjY2JlMDU5ZmVkZWRk
YjAzMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSUHJvY2Vzc29yLmNwcApAQCAtMCwwICsxLDEwNSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2
IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0
IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoV0VCX0FVRElPKQorI2luY2x1ZGUgIklJUlBy
b2Nlc3Nvci5oIgorCisjaW5jbHVkZSAiSUlSRFNQS2VybmVsLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworSUlSUHJvY2Vzc29yOjpJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5z
aWduZWQgbnVtYmVyT2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJk
LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpCisg
ICAgOiBBdWRpb0RTUEtlcm5lbFByb2Nlc3NvcihzYW1wbGVSYXRlLCBudW1iZXJPZkNoYW5uZWxz
KQorICAgICwgbV9mZWVkZm9yd2FyZChmZWVkZm9yd2FyZCkKKyAgICAsIG1fZmVlZGJhY2soZmVl
ZGJhY2spCisgICAgLCBtX2lzRmlsdGVyU3RhYmxlKGlzRmlsdGVyU3RhYmxlKQoreworICAgIHVu
c2lnbmVkIGZlZWRiYWNrTGVuZ3RoID0gZmVlZGJhY2suc2l6ZSgpOworICAgIHVuc2lnbmVkIGZl
ZWRmb3J3YXJkTGVuZ3RoID0gZmVlZGZvcndhcmQuc2l6ZSgpOworICAgIEFTU0VSVChmZWVkYmFj
a0xlbmd0aCA+IDApOworICAgIEFTU0VSVChmZWVkZm9yd2FyZExlbmd0aCA+IDApOworCisgICAg
Ly8gTmVlZCB0byBzY2FsZSB0aGUgZmVlZGJhY2sgYW5kIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50
cyBhcHByb3ByaWF0ZWx5LgorICAgIC8vIChJdCdzIHVwIHRvIHRoZSBjYWxsZXIgdG8gZW5zdXJl
IGZlZWRiYWNrQ29lZlswXSBpcyBub3QgMC4pCisgICAgQVNTRVJUKCEhZmVlZGJhY2tbMF0pOwor
CisgICAgaWYgKGZlZWRiYWNrWzBdICE9IDEpIHsKKyAgICAgICAgLy8gVGhlIHByb3ZpZGVkIGZp
bHRlciBpczoKKyAgICAgICAgLy8KKyAgICAgICAgLy8gICBhWzBdKnkobikgKyBhWzFdKnkobi0x
KSArIC4uLiA9IGJbMF0qeChuKSArIGJbMV0qeChuLTEpICsgLi4uCisgICAgICAgIC8vCisgICAg
ICAgIC8vIFdlIHdhbnQgdGhlIGxlYWRpbmcgY29lZmZpY2llbnQgb2YgeShuKSB0byBiZSAxOgor
ICAgICAgICAvLworICAgICAgICAvLyAgIHkobikgKyBhWzFdL2FbMF0qeShuLTEpICsgLi4uID0g
YlswXS9hWzBdKngobikgKyBiWzFdL2FbMF0qeChuLTEpICsgLi4uCisgICAgICAgIC8vCisgICAg
ICAgIC8vIFRodXMsIHRoZSBmZWVkYmFjayBhbmQgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIG5l
ZWQgdG8gYmUgc2NhbGVkIGJ5IDEvYVswXS4KKyAgICAgICAgZmxvYXQgc2NhbGUgPSBmZWVkYmFj
a1swXTsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBrID0gMTsgayA8IGZlZWRiYWNrTGVuZ3RoOyAr
K2spCisgICAgICAgICAgICBtX2ZlZWRiYWNrW2tdIC89IHNjYWxlOworCisgICAgICAgIGZvciAo
dW5zaWduZWQgayA9IDA7IGsgPCBmZWVkZm9yd2FyZExlbmd0aDsgKytrKQorICAgICAgICAgICAg
bV9mZWVkZm9yd2FyZFtrXSAvPSBzY2FsZTsKKworICAgICAgICAvLyBUaGUgSUlSRmlsdGVyIGNo
ZWNrcyB0byBtYWtlIHN1cmUgdGhpcyBjb2VmZmljaWVudCBpcyAxLCBzbyBtYWtlIGl0IHNvLgor
ICAgICAgICBtX2ZlZWRiYWNrWzBdID0gMTsKKyAgICB9CisKKyAgICBtX3Jlc3BvbnNlS2VybmVs
ID0gbWFrZVVuaXF1ZTxJSVJEU1BLZXJuZWw+KCp0aGlzKTsKK30KKworSUlSUHJvY2Vzc29yOjp+
SUlSUHJvY2Vzc29yKCkKK3sKKyAgICBpZiAoaXNJbml0aWFsaXplZCgpKQorICAgICAgICB1bmlu
aXRpYWxpemUoKTsKK30KKworc3RkOjp1bmlxdWVfcHRyPEF1ZGlvRFNQS2VybmVsPiBJSVJQcm9j
ZXNzb3I6OmNyZWF0ZUtlcm5lbCgpCit7CisgICAgcmV0dXJuIG1ha2VVbmlxdWU8SUlSRFNQS2Vy
bmVsPigqdGhpcyk7Cit9CisKK3ZvaWQgSUlSUHJvY2Vzc29yOjpwcm9jZXNzKGNvbnN0IEF1ZGlv
QnVzKiBzb3VyY2UsIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2Vz
cykKK3sKKyAgICBpZiAoIWlzSW5pdGlhbGl6ZWQoKSkgeworICAgICAgICBkZXN0aW5hdGlvbi0+
emVybygpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gRm9yIGVhY2ggY2hhbm5l
bCBvZiBvdXIgaW5wdXQsIHByb2Nlc3MgdXNpbmcgdGhlIGNvcnJlc3BvbmRpbmcgSUlSRFNQS2Vy
bmVsCisgICAgLy8gaW50byB0aGUgb3V0cHV0IGNoYW5uZWwuCisgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBtX2tlcm5lbHMuc2l6ZSgpOyArK2kpCisgICAgICAgIG1fa2VybmVsc1tpXS0+cHJv
Y2Vzcyhzb3VyY2UtPmNoYW5uZWwoaSktPmRhdGEoKSwgZGVzdGluYXRpb24tPmNoYW5uZWwoaSkt
Pm11dGFibGVEYXRhKCksIGZyYW1lc1RvUHJvY2Vzcyk7Cit9CisKK3ZvaWQgSUlSUHJvY2Vzc29y
OjpnZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVx
dWVuY3lIeiwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSkKK3sKKyAg
ICBtX3Jlc3BvbnNlS2VybmVsLT5nZXRGcmVxdWVuY3lSZXNwb25zZShsZW5ndGgsIGZyZXF1ZW5j
eUh6LCBtYWdSZXNwb25zZSwgcGhhc2VSZXNwb25zZSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5oIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NGM1ZWQ5ZGY4ZTU5
YjdlNzNjMjA0ZWIwYzNhMTQyNjVjYTY0MmRkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaApAQCAtMCwwICsxLDU5IEBACisv
KgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisg
KiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMK
KyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQXVkaW9EU1BLZXJuZWxQ
cm9jZXNzb3IuaCIKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgSUlSRFNQS2VybmVsOworCitjbGFzcyBJSVJQcm9jZXNzb3IgZmluYWwgOiBw
dWJsaWMgQXVkaW9EU1BLZXJuZWxQcm9jZXNzb3IgeworcHVibGljOgorICAgIElJUlByb2Nlc3Nv
cihmbG9hdCBzYW1wbGVSYXRlLCB1bnNpZ25lZCBudW1iZXJPZkNoYW5uZWxzLCBjb25zdCBWZWN0
b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaywg
Ym9vbCBpc0ZpbHRlclN0YWJsZSk7CisgICAgfklJUlByb2Nlc3NvcigpOworCisgICAgLy8gQXVk
aW9EU1BLZXJuZWxQcm9jZXNzb3IuCisgICAgdm9pZCBwcm9jZXNzKGNvbnN0IEF1ZGlvQnVzKiBz
b3VyY2UsIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykgZmlu
YWw7CisgICAgc3RkOjp1bmlxdWVfcHRyPEF1ZGlvRFNQS2VybmVsPiBjcmVhdGVLZXJuZWwoKSBm
aW5hbDsKKworICAgIC8vIEdldCB0aGUgbWFnbml0dWRlIGFuZCBwaGFzZSByZXNwb25zZSBvZiB0
aGUgZmlsdGVyIGF0IHRoZSBnaXZlbiBzZXQgb2YgZnJlcXVlbmNpZXMgKGluIEh6KS4gVGhlIHBo
YXNlIHJlc3BvbnNlIGlzIGluIHJhZGlhbnMuCisgICAgdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25z
ZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3lIeiwgZmxvYXQqIG1hZ1Jl
c3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSk7CisKKyAgICBjb25zdCBWZWN0b3I8ZG91Ymxl
PiYgZmVlZGZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX2ZlZWRmb3J3YXJkOyB9CisgICAgY29u
c3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKCkgY29uc3QgeyByZXR1cm4gbV9mZWVkYmFjazsg
fQorICAgIGJvb2wgaXNGaWx0ZXJTdGFibGUoKSBjb25zdCB7IHJldHVybiBtX2lzRmlsdGVyU3Rh
YmxlOyB9CisKK3ByaXZhdGU6CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVkZm9yd2FyZDsKKyAg
ICBWZWN0b3I8ZG91YmxlPiBtX2ZlZWRiYWNrOworICAgIGJvb2wgbV9pc0ZpbHRlclN0YWJsZTsK
KworICAgIHN0ZDo6dW5pcXVlX3B0cjxJSVJEU1BLZXJuZWw+IG1fcmVzcG9uc2VLZXJuZWw7Cit9
OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGRlNDlmZDI2NmI2
YTg0YjljODUzYjZjNWQ5NGZlMzhiMjYwMzEzMzcuLjM2MjY2NWFiMTcxMzFmMmNmMzdmOGFkZjg5
MDU0MDViZjI5NzI2YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0yMjEsNiArMjIxLDkgQEAgTW9kdWxl
cy93ZWJhdWRpby9EZWxheU5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlvL0RlbGF5UHJvY2Vzc29y
LmNwcAogTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmNwcAogTW9kdWxl
cy93ZWJhdWRpby9HYWluTm9kZS5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2VybmVsLmNw
cAorTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcAorTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwCiBNb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVudEF1ZGlvU291cmNl
Tm9kZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vTWVkaWFTdHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9k
ZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAKQEAgLTE3
OTksNiArMTgwMiw3IEBAIHBsYXRmb3JtL2F1ZGlvL0hSVEZEYXRhYmFzZUxvYWRlci5jcHAKIHBs
YXRmb3JtL2F1ZGlvL0hSVEZFbGV2YXRpb24uY3BwCiBwbGF0Zm9ybS9hdWRpby9IUlRGS2VybmVs
LmNwcAogcGxhdGZvcm0vYXVkaW8vSFJURlBhbm5lci5jcHAKK3BsYXRmb3JtL2F1ZGlvL0lJUkZp
bHRlci5jcHAKIHBsYXRmb3JtL2F1ZGlvL011bHRpQ2hhbm5lbFJlc2FtcGxlci5jcHAKIHBsYXRm
b3JtL2F1ZGlvL1Bhbm5lci5jcHAKIHBsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9u
LmNwcApAQCAtMzAzNCw2ICszMDM4LDggQEAgSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCiBK
U0lkbGVEZWFkbGluZS5jcHAKIEpTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKIEpTSWRsZVJlcXVl
c3RPcHRpb25zLmNwcAorSlNJSVJGaWx0ZXJOb2RlLmNwcAorSlNJSVJGaWx0ZXJPcHRpb25zLmNw
cAogSlNJbWFnZUJpdG1hcC5jcHAKIEpTSW1hZ2VCaXRtYXBPcHRpb25zLmNwcAogSlNJbWFnZUJp
dG1hcFJlbmRlcmluZ0NvbnRleHQuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggM2EzNjFhYTk4ZTljMjdiMzlmNzJiYzI1YWY5
OGZmMDBjYTYwM2IzMC4uZGMyOTgzYmI1M2NiOTFlYTdmYmU4ODBhNWRlZDJlYTJhM2QzNjFmNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtMjQzMyw2ICsyNDMzLDcgQEAKIAkJODMwNzg0QjIxQzUyRUUyQzAwMTA0RDFEIC8qIFhN
TERvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzA3ODRCMTFDNTJFRTE5MDAxMDREMUQgLyogWE1MRG9jdW1lbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4MzBBMUM3RDI0REI3ODhCMDAy
RUNDQUQgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBBMUM3QzI0REI3ODcwMDAyRUNDQUQg
LyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggKi87IH07CiAJCTgzMEEzNkJEMURB
QzVGQUQwMDZEN0QwOSAvKiBKU01vdXNlRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBBMzZCQjFEQUM1RkE3MDA2RDdEMDkgLyogSlNN
b3VzZUV2ZW50SW5pdC5oICovOyB9OworCQk4MzBEMEI2OTI0RjU3RDY3MDA3RUQxMjIgLyogSUlS
UHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi87IH07CiAJCTgz
MEVFQUJBMjREQjZBNjQwMDlFRkJDRSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBFRUFCNzI0
REI2QTUyMDA5RUZCQ0UgLyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5oICovOyB9Owog
CQk4MzEwMkIyNzFGOUVBREQ5MDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzEwMkIyMzFG
OUVBREMyMDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi87IH07CiAJCTgz
MTFDMDAzMUZBQTJFOTUwMEUzQzhFNSAvKiBTV1NlcnZlckpvYlF1ZXVlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzExQzAwMjFGQUEyRTg5MDBFM0M4
RTUgLyogU1dTZXJ2ZXJKb2JRdWV1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CkBAIC0yNDU5LDEyICsyNDYwLDE1IEBACiAJCTgzNDhCRkFDMUI4NTcy
OTgwMDkxMkYzNiAvKiBDbGFzc0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNDhCRkFBMUI4NTcyOTUwMDkxMkYzNiAvKiBDbGFzc0Nv
bGxlY3Rpb24uaCAqLzsgfTsKIAkJODM0Q0JGQzIyNERDNzg2NzAwQzJBM0Q4IC8qIE1lZGlhU3Ry
ZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzRDQkZCRjI0REM3ODU1MDBDMkEzRDggLyogTWVkaWFTdHJlYW1BdWRp
b1NvdXJjZU9wdGlvbnMuaCAqLzsgfTsKIAkJODM0REZBRDAxRjdEQUU1RDAwQzI3MjVCIC8qIFNo
YXJlZFN0cmluZ0hhc2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM1MDUxQTQy
NEY1NzNDNDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggKi87IH07CisJCTgzNTA1MUE1MjRGNTczQzgwMDk5MTFENyAvKiBJSVJGaWx0
ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzUwNTFBMDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICovOyB9Owog
CQk4MzUyMEM3RTFBNzFCRkNDMDA2QkQyQUEgLyogQ1NTRm9udEZhbWlseS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MjBDN0QxQTcxQkZDQzAwNkJE
MkFBIC8qIENTU0ZvbnRGYW1pbHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQk4MzU2Rjk3RjI0RDlGODE4MDA2QzNFNDEgLyogV2ViS2l0QXVkaW9M
aXN0ZW5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
ODM1NkY5N0UyNEQ5RjgwOTAwNkMzRTQxIC8qIFdlYktpdEF1ZGlvTGlzdGVuZXIuaCAqLzsgfTsK
IAkJODM1OENCNzAxQzUzMjc3NTAwRTBDMkQ4IC8qIEpTWE1MRG9jdW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzRjU3MEFEMUM1MzI2OEUwMDdG
RDZDQiAvKiBKU1hNTERvY3VtZW50LmggKi87IH07CiAJCTgzNUQyRDc4MUY1RjFGQkQwMDE0MURF
RCAvKiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1RDJENzUxRjVGMUZCODAwMTQxREVEIC8qIEhUTUxJ
bnB1dEVsZW1lbnRFbnRyaWVzQVBJLmggKi87IH07CiAJCTgzNUQzNjM3MTlGRjYxOTMwMDRDOTNB
QiAvKiBTdHlsZUJ1aWxkZXJDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDgzNUQzNjM2MTlGRjYxOTMwMDRDOTNBQiAvKiBTdHlsZUJ1aWxkZXJD
dXN0b20uaCAqLzsgfTsKIAkJODM1RDU0QzUxRjRERTUzODAwRTYwNjcxIC8qIERpcmVjdG9yeUZp
bGVMaXN0Q3JlYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODM1RDU0QzIxRjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRv
ci5oICovOyB9OworCQk4MzVEQTkwMjI0RjU4MjY1MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEQTkwMTI0
RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggKi87IH07CiAJCTgzNjJFOEMxMjBDRUY5
Q0IwMDI0NTg4NiAvKiBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjJFOEJGMjBDRUY5Q0IwMDI0NTg4
NiAvKiBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4MzY1ODlERTFGNTRBNzY5MDBEQzMxRjQgLyog
SlNGaWxlU3lzdGVtRGlyZWN0b3J5UmVhZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4MzY1ODlEOTFGNTRBNzYyMDBEQzMxRjQgLyogSlNGaWxlU3lz
dGVtRGlyZWN0b3J5UmVhZGVyLmggKi87IH07CiAJCTgzNjU4OUUwMUY1NEE3NkUwMERDMzFGNCAv
KiBKU0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjU4OUQ4MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVT
eXN0ZW1FbnRyaWVzQ2FsbGJhY2suaCAqLzsgfTsKQEAgLTI1MDQsNiArMjUwOCw3IEBACiAJCTgz
OTk0NzEwMUY1MEI2RkEwMEU5RDg2QiAvKiBKU0RPTUZpbGVTeXN0ZW0uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOTk0NzBFMUY1MEI2RjMwMEU5RDg2
QiAvKiBKU0RPTUZpbGVTeXN0ZW0uaCAqLzsgfTsKIAkJODM5QTJGMkUxRTIwNEE3MTAwMzkwNTdF
IC8qIFdlYkdMU3RhdGVUcmFja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzlBMkYyQzFFMjA0QTZEMDAzOTA1N0UgLyogV2ViR0xTdGF0ZVRyYWNr
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4
MzlBQUZFRDFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOUFBRkVCMUEwQzBDOEQwMDYwNUY5
OSAvKiBIVE1MV0JSRWxlbWVudC5oICovOyB9OworCQk4MzlCRTZENTI0RjU4NzYyMDA0REY1MEYg
LyogSUlSRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmlsdGVyLmggKi87IH07CiAJCTgz
QTJBQkRCMjREODZERTAwMEUyRDczRCAvKiBEZWxheU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzQTJBQkQ4MjREODZEQzYwMEUyRDczRCAv
KiBEZWxheU9wdGlvbnMuaCAqLzsgfTsKIAkJODNBOEFDNDAxRkFCQkZFNTAwMjA2NEFDIC8qIFNl
cnZpY2VXb3JrZXJJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4M0E4QUMzRTFGQUJCRkQxMDAyMDY0QUMgLyogU2VydmljZVdvcmtlcklk
ZW50aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk4M0IxQTcwMjI0OTk4NUYwMDBGRTU5NjEgLyogV2ViS2l0QXVkaW9Db250ZXh0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0IxQTZGRjI0OTk4
NUQwMDBGRTU5NjEgLyogV2ViS2l0QXVkaW9Db250ZXh0LmggKi87IH07CkBAIC0xMDQ0NSw2ICsx
MDQ1MCw4IEBACiAJCTgzMEExQzdDMjREQjc4NzAwMDJFQ0NBRCAvKiBNZWRpYUVsZW1lbnRBdWRp
b1NvdXJjZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VP
cHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEEzNkJBMURBQzVGQTcw
MDZEN0QwOSAvKiBKU01vdXNlRXZlbnRJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTW91c2VFdmVudEluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk4MzBBMzZCQjFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50SW5pdC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01vdXNlRXZlbnRJbml0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMEQwQjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQ
cm9jZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSUHJvY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTgzMEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3Iu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSUlSUHJvY2Vzc29yLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODMwRUVBQjcyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNz
Q29tcHJlc3Nvck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0RHluYW1pY3NDb21wcmVzc29y
Tm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzBFRUFCOTI0REI2QTUyMDA5
RUZCQ0UgLyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0RHlu
YW1pY3NDb21wcmVzc29yTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgz
MTAyQjIzMUY5RUFEQzIwMEU0MDRCOSAvKiBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDQ5OCw2ICsxMDUwNSwxMSBAQAogCQk4
MzRERDRGMzFCRTA4OTg5MDAyQzlDM0UgLyogUGFnZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBhZ2VNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJlZFN0cmluZ0hhc2guaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM0REZBQ0UxRjdEQUU1NzAwQzI3MjVCIC8qIFNoYXJl
ZFN0cmluZ0hhc2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2hh
cmVkU3RyaW5nSGFzaC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTA1MTlF
MjRGNTczQUQwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IElJUkZpbHRlck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFB
MDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
SVJGaWx0ZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTA1MUEx
MjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJSVJGaWx0ZXJOb2Rl
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTIyNEY1NzNBRjAwOTkx
MUQ3IC8qIElJUkZpbHRlck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSRmlsdGVyTm9kZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMzI0RjU3M0FGMDA5OTExRDcgLyog
SUlSRmlsdGVyT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVyT3B0aW9ucy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3MURBNTlCNjIwMDM1NTQyNCAvKiBTY3JvbGxM
b2dpY2FsUG9zaXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xs
TG9naWNhbFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3
MURBNTlCNjIwMDM1NTQzNSAvKiBTY3JvbGxJbnRvVmlld09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3MURBNTlCNjIwMDM1NjQyNCAvKiBTY3JvbGxCZWhh
dmlvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxCZWhhdmlvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTA1MjAsNiArMTA1MzIsOCBAQAogCQk4
MzVEMzYzNjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQnVpbGRlckN1c3RvbS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk4MzVENTRDMTFGNERFNTM0MDBFNjA2NzEgLyogRGlyZWN0b3J5
RmlsZUxpc3RDcmVhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNUQ1NEMyMUY0REU1MzQwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlyZWN0b3J5RmlsZUxpc3RDcmVh
dG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNURBOEZGMjRGNTgyNTcwMDIy
RERBNCAvKiBJSVJEU1BLZXJuZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSUlSRFNQS2VybmVs
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1REE5MDEyNEY1ODI1NzAwMjJE
REE0IC8qIElJUkRTUEtlcm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJEU1BLZXJuZWwuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1RjhCMjYxRDJEOTBCQTAwRTQwOEVDIC8qIFNs
b3RhYmxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTbG90YWJsZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNjJFOEJGMjBDRUY5Q0IwMDI0NTg4NiAvKiBTaG91bGRU
cmVhdEFzQ29udGludWluZ0xvYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNjU4OUQ4MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJh
Y2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlU3lzdGVtRW50cmll
c0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDYwNCw2ICsxMDYx
OCw4IEBACiAJCTgzOUEyRjJDMUUyMDRBNkQwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTFN0YXRlVHJhY2tlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzlBQUZFQTFBMEMwQzhEMDA2MDVGOTkgLyog
SFRNTFdCUkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SFRNTFdCUkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzlBQUZF
QjFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSFRNTFdCUkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM5QkU2RDIyNEY1ODc1NTAwNERGNTBGIC8qIElJUkZpbHRlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJODM5QkU2RDQyNEY1ODc1NTAwNERGNTBGIC8qIElJUkZpbHRlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJGaWx0ZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVsYXlPcHRp
b25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlbGF5T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk4M0EyQUJEQTI0RDg2REM3MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25zLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBEZWxheU9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4M0E0
QTlGODFDRTdGRDdFMDA3MDlCMDAgLyogSlNYTUxEb2N1bWVudEN1c3RvbS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1hNTERvY3VtZW50Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI5Njc5LDYgKzI5Njk1LDE1IEBACiAJCQkJRkQz
MTVGQzQxMkIwMjY3NTAwQzFBMzU5IC8qIEdhaW5Ob2RlLmlkbCAqLywKIAkJCQk4Mzc0NUNGRjI0
RDg5OUMyMDBGQkRDQzQgLyogR2Fpbk9wdGlvbnMuaCAqLywKIAkJCQk4Mzc0NUQwMTI0RDg5OUMy
MDBGQkRDQzQgLyogR2Fpbk9wdGlvbnMuaWRsICovLAorCQkJCTgzNURBOEZGMjRGNTgyNTcwMDIy
RERBNCAvKiBJSVJEU1BLZXJuZWwuY3BwICovLAorCQkJCTgzNURBOTAxMjRGNTgyNTcwMDIyRERB
NCAvKiBJSVJEU1BLZXJuZWwuaCAqLywKKwkJCQk4MzUwNTE5RTI0RjU3M0FEMDA5OTExRDcgLyog
SUlSRmlsdGVyTm9kZS5jcHAgKi8sCisJCQkJODM1MDUxQTIyNEY1NzNBRjAwOTkxMUQ3IC8qIElJ
UkZpbHRlck5vZGUuaCAqLywKKwkJCQk4MzUwNTFBMTI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmls
dGVyTm9kZS5pZGwgKi8sCisJCQkJODM1MDUxQTAyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRl
ck9wdGlvbnMuaCAqLywKKwkJCQk4MzUwNTFBMzI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVy
T3B0aW9ucy5pZGwgKi8sCisJCQkJODMwRDBCNjgyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nl
c3Nvci5jcHAgKi8sCisJCQkJODMwRDBCNjYyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nlc3Nv
ci5oICovLAogCQkJCUZENkYyNTI5MTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRpYUVsZW1lbnRBdWRp
b1NvdXJjZU5vZGUuY3BwICovLAogCQkJCUZENkYyNTJBMTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRp
YUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaCAqLywKIAkJCQlGRDZGMjUyQjEzRjVFRjBFMDA2NTE2
NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmlkbCAqLywKQEAgLTI5ODMyLDYgKzI5
ODU3LDggQEAKIAkJCQlGRDMxNjA2OTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURktlcm5lbC5oICov
LAogCQkJCUZEMzE2MDZBMTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGUGFubmVyLmNwcCAqLywKIAkJ
CQlGRDMxNjA2QjEyQjAyNkY3MDBDMUEzNTkgLyogSFJURlBhbm5lci5oICovLAorCQkJCTgzOUJF
NkQ0MjRGNTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovLAorCQkJCTgzOUJFNkQyMjRG
NTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLywKIAkJCQlGREIxNzAwMzE0QTJCQUIyMDBB
MkI1RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmNwcCAqLywKIAkJCQlGREIxNzAwNDE0QTJC
QUIyMDBBMkI1RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmggKi8sCiAJCQkJNDE2RkQyNUQy
NDBFRTFBRTAwNjY2MUQ4IC8qIE5vd1BsYXlpbmdJbmZvLmggKi8sCkBAIC0zMTQ1MCw2ICszMTQ3
NywxMSBAQAogCQkJCUMzQ0YxN0E3MTVCMDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdldE9ic2VydmVy
UmVnaXN0cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCThBQjRCQzc3MTI2RkRCNzEwMERFQjcyNyAv
KiBJZ25vcmVEZXN0cnVjdGl2ZVdyaXRlQ291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNDY3MzAyMDIxQzRFRkU3ODAwQkNCMzU3IC8qIElnbm9yZU9wZW5zRHVyaW5nVW5sb2Fk
Q291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1REE5MDIyNEY1ODI2NTAw
MjJEREE0IC8qIElJUkRTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM5QkU2RDUyNEY1
ODc2MjAwNERGNTBGIC8qIElJUkZpbHRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1MDUxQTQy
NEY1NzNDNDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgz
NTA1MUE1MjRGNTczQzgwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4MzBEMEI2OTI0RjU3RDY3MDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCMjc1MzU3MDBCMDUzODE0MDAyQ0U2NEYgLyogSW1hZ2UuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTU1QTMzNkY5MUQ4MjFFM0MwMDIyQzRDNyAvKiBJbWFnZUJhY2tpbmdTdG9y
ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE4MTVBMzExRjlBNkM4RjAwRkNCRjg5IC8qIEltYWdl
Qml0bWFwLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L1dlYkNvcmVCdWlsdGluTmFtZXMuaAppbmRleCAyMjRkYmMyZTYzMzllNjRkNTA2M2ViMmNkNWI5
ODEzZmZlNzM2MmQ4Li42ZDA5ZjIxZjZkYTFkM2VjYTIxOTAxYjg2MTM4ZTAzY2U1MDBjMjU4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5o
CkBAIC0xNDMsNiArMTQzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIG1hY3JvKElEQlJl
cXVlc3QpIFwKICAgICBtYWNybyhJREJUcmFuc2FjdGlvbikgXAogICAgIG1hY3JvKElEQlZlcnNp
b25DaGFuZ2VFdmVudCkgXAorICAgIG1hY3JvKElJUkZpbHRlck5vZGUpIFwKICAgICBtYWNybyhJ
bWFnZUJpdG1hcCkgXAogICAgIG1hY3JvKEltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dCkgXAog
ICAgIG1hY3JvKElkbGVEZWFkbGluZSkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vSUlSRmlsdGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0lJUkZpbHRlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWNmNWQ3YjgxMmU3YmJjZjk5MzVjOTg0MmMxMDVh
MDUxMGQ4ZDUzMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0lJUkZpbHRlci5jcHAKQEAgLTAsMCArMSwyMzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAx
NiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIklJUkZpbHRlci5oIgorCisjaW5jbHVkZSAiVmVj
dG9yTWF0aC5oIgorI2luY2x1ZGUgPGFsZ29yaXRobT4KKyNpbmNsdWRlIDxjb21wbGV4PgorI2lu
Y2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY29uc3Qg
c2l6ZV90IElJUkZpbHRlcjo6bWF4T3JkZXIgPSAyMDsKK2NvbnN0IHVuc2lnbmVkIGlpclJlbmRl
cmluZ1F1YW50dW0gPSAxMjg7CisKKy8vIFRoZSBsZW5ndGggb2YgdGhlIG1lbW9yeSBidWZmZXJz
IGZvciB0aGUgSUlSIGZpbHRlci4gVGhpcyBNVVNUIGJlIGEgcG93ZXIgb2YKKy8vIHR3byBhbmQg
bXVzdCBiZSBncmVhdGVyIHRoYW4gdGhlIHBvc3NpYmxlIGxlbmd0aCBvZiB0aGUgZmlsdGVyIGNv
ZWZmaWNpZW50cy4KK2NvbnN0IGludCBidWZmZXJMZW5ndGggPSAzMjsKK3N0YXRpY19hc3NlcnQo
YnVmZmVyTGVuZ3RoID49IElJUkZpbHRlcjo6bWF4T3JkZXIgKyAxLCAiSW50ZXJuYWwgSUlSIGJ1
ZmZlciBsZW5ndGggbXVzdCBiZSBncmVhdGVyIHRoYW4gbWF4aW11bSBJSVIgRmlsdGVyIG9yZGVy
LiIpOworCitzdGF0aWMgc3RkOjpjb21wbGV4PGRvdWJsZT4gZXZhbHVhdGVQb2x5bm9taWFsKGNv
bnN0IGRvdWJsZSogY29lZmZpY2llbnRzLCBzdGQ6OmNvbXBsZXg8ZG91YmxlPiB6LCBpbnQgb3Jk
ZXIpCit7CisgICAgLy8gVXNlIEhvcm5lcidzIG1ldGhvZCB0byBldmFsdWF0ZSB0aGUgcG9seW5v
bWlhbCBQKHopID0gc3VtKGNvZWZba10qel5rLCBrLCAwLCBvcmRlcik7CisgICAgc3RkOjpjb21w
bGV4PGRvdWJsZT4gcmVzdWx0ID0gMDsKKyAgICBmb3IgKGludCBrID0gb3JkZXI7IGsgPj0gMDsg
LS1rKQorICAgICAgICByZXN1bHQgPSByZXN1bHQgKiB6ICsgc3RkOjpjb21wbGV4PGRvdWJsZT4o
Y29lZmZpY2llbnRzW2tdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitJSVJGaWx0ZXI6OklJ
UkZpbHRlcihjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rvcjxk
b3VibGU+JiBmZWVkYmFjaykKKyAgICA6IG1fZmVlZGZvcndhcmQoZmVlZGZvcndhcmQpCisgICAg
LCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQoreworICAgIG1feEJ1ZmZlci5maWxsKDAsIGJ1ZmZlckxl
bmd0aCk7CisgICAgbV95QnVmZmVyLmZpbGwoMCwgYnVmZmVyTGVuZ3RoKTsKK30KKwordm9pZCBJ
SVJGaWx0ZXI6OnJlc2V0KCkKK3sKKyAgICBtX3hCdWZmZXIuZmlsbCgwKTsKKyAgICBtX3lCdWZm
ZXIuZmlsbCgwKTsKKyAgICBtX2J1ZmZlckluZGV4ID0gMDsKK30KKwordm9pZCBJSVJGaWx0ZXI6
OnByb2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0aW9uLCBzaXplX3Qg
ZnJhbWVzVG9Qcm9jZXNzKQoreworICAgIC8vIENvbXB1dGUKKyAgICAvLworICAgIC8vICAgeVtu
XSA9IHN1bShiW2tdICogeFtuIC0ga10sIGsgPSAwLCBNKSAtIHN1bShhW2tdICogeVtuIC0ga10s
IGsgPSAxLCBOKQorICAgIC8vCisgICAgLy8gd2hlcmUgYltrXSBhcmUgdGhlIGZlZWRmb3J3YXJk
IGNvZWZmaWNpZW50cyBhbmQgYVtrXSBhcmUgdGhlIGZlZWRiYWNrCisgICAgLy8gY29lZmZpY2ll
bnRzIG9mIHRoZSBmaWx0ZXIuCisgICAgLy8gVGhpcyBpcyBhIERpcmVjdCBGb3JtIEkgaW1wbGVt
ZW50YXRpb24gb2YgYW4gSUlSIEZpbHRlci4gU2hvdWxkIHdlCisgICAgLy8gY29uc2lkZXIgZG9p
bmcgYSBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb24gc3VjaCBhcyBUcmFuc3Bvc2VkIERpcmVjdCBG
b3JtCisgICAgLy8gSUk/CisgICAgY29uc3QgZG91YmxlKiBmZWVkYmFjayA9IG1fZmVlZGJhY2su
ZGF0YSgpOworICAgIGNvbnN0IGRvdWJsZSogZmVlZGZvcndhcmQgPSBtX2ZlZWRmb3J3YXJkLmRh
dGEoKTsKKworICAgIEFTU0VSVChmZWVkYmFjayk7CisgICAgQVNTRVJUKGZlZWRmb3J3YXJkKTsK
KworICAgIC8vIFNhbml0eSBjaGVjayB0byBzZWUgaWYgdGhlIGZlZWRiYWNrIGNvZWZmaWNpZW50
cyBoYXZlIGJlZW4gc2NhbGVkIGFwcHJvcHJpYXRlbHkuIEl0IG11c3QgYmUgRVhBQ1RMWSAxIQor
ICAgIEFTU0VSVChmZWVkYmFja1swXSA9PSAxKTsKKworICAgIGludCBmZWVkYmFja0xlbmd0aCA9
IG1fZmVlZGJhY2suc2l6ZSgpOworICAgIGludCBmZWVkZm9yd2FyZExlbmd0aCA9IG1fZmVlZGZv
cndhcmQuc2l6ZSgpOworICAgIGludCBtaW5MZW5ndGggPSBzdGQ6Om1pbihmZWVkYmFja0xlbmd0
aCwgZmVlZGZvcndhcmRMZW5ndGgpOworCisgICAgZG91YmxlKiB4QnVmZmVyID0gbV94QnVmZmVy
LmRhdGEoKTsKKyAgICBkb3VibGUqIHlCdWZmZXIgPSBtX3lCdWZmZXIuZGF0YSgpOworCisgICAg
Zm9yIChzaXplX3QgbiA9IDA7IG4gPCBmcmFtZXNUb1Byb2Nlc3M7ICsrbikgeworICAgICAgICAv
LyBUbyBoZWxwIG1pbmltaXplIHJvdW5kb2ZmLCB3ZSBjb21wdXRlIHVzaW5nIGRvdWJsZSdzLCBl
dmVuIHRob3VnaCB0aGUKKyAgICAgICAgLy8gZmlsdGVyIGNvZWZmaWNpZW50cyBvbmx5IGhhdmUg
c2luZ2xlIHByZWNpc2lvbiB2YWx1ZXMuCisgICAgICAgIGRvdWJsZSB5biA9IGZlZWRmb3J3YXJk
WzBdICogc291cmNlW25dOworCisgICAgICAgIC8vIFJ1biBib3RoIHRoZSBmZWVkZm9yd2FyZCBh
bmQgZmVlZGJhY2sgdGVybXMgdG9nZXRoZXIsIHdoZW4gcG9zc2libGUuCisgICAgICAgIGZvciAo
aW50IGsgPSAxOyBrIDwgbWluTGVuZ3RoOyArK2spIHsKKyAgICAgICAgICAgIGludCBtID0gKG1f
YnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5ndGggLSAxKTsKKyAgICAgICAgICAgIHluICs9
IGZlZWRmb3J3YXJkW2tdICogeEJ1ZmZlclttXTsKKyAgICAgICAgICAgIHluIC09IGZlZWRiYWNr
W2tdICogeUJ1ZmZlclttXTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIEhhbmRsZSBhbnkgcmVt
YWluaW5nIGZlZWRmb3J3YXJkIG9yIGZlZWRiYWNrIHRlcm1zLgorICAgICAgICBmb3IgKGludCBr
ID0gbWluTGVuZ3RoOyBrIDwgZmVlZGZvcndhcmRMZW5ndGg7ICsraykKKyAgICAgICAgICAgIHlu
ICs9IGZlZWRmb3J3YXJkW2tdICogeEJ1ZmZlclsobV9idWZmZXJJbmRleCAtIGspICYgKGJ1ZmZl
ckxlbmd0aCAtIDEpXTsKKyAgICAgICAgZm9yIChpbnQgayA9IG1pbkxlbmd0aDsgayA8IGZlZWRi
YWNrTGVuZ3RoOyArK2spCisgICAgICAgICAgICB5biAtPSBmZWVkYmFja1trXSAqIHlCdWZmZXJb
KG1fYnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5ndGggLSAxKV07CisKKyAgICAgICAgLy8g
U2F2ZSB0aGUgY3VycmVudCBpbnB1dCBhbmQgb3V0cHV0IHZhbHVlcyBpbiB0aGUgbWVtb3J5IGJ1
ZmZlcnMgZm9yIHRoZQorICAgICAgICAvLyBuZXh0IG91dHB1dC4KKyAgICAgICAgbV94QnVmZmVy
W21fYnVmZmVySW5kZXhdID0gc291cmNlW25dOworICAgICAgICBtX3lCdWZmZXJbbV9idWZmZXJJ
bmRleF0gPSB5bjsKKworICAgICAgICBtX2J1ZmZlckluZGV4ID0gKG1fYnVmZmVySW5kZXggKyAx
KSAmIChidWZmZXJMZW5ndGggLSAxKTsKKworICAgICAgICBkZXN0aW5hdGlvbltuXSA9IHluOwor
ICAgIH0KK30KKwordm9pZCBJSVJGaWx0ZXI6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVk
IGxlbmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9h
dCogcGhhc2VSZXNwb25zZSkKK3sKKyAgICAvLyBFdmFsdWF0ZSB0aGUgei10cmFuc2Zvcm0gb2Yg
dGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4gbm9ybWFsaXplZCBmcmVxdWVuY2llcworICAgIC8vIGZy
b20gMCB0byAxLiAoT25lIGNvcnJlc3BvbmRzIHRvIHRoZSBOeXF1aXN0IGZyZXF1ZW5jeS4pCisg
ICAgLy8KKyAgICAvLyBUaGUgei10cmFuZm9ybSBvZiB0aGUgZmlsdGVyIGlzCisgICAgLy8KKyAg
ICAvLyBIKHopID0gc3VtKGJba10qel4oLWspLCBrLCAwLCBNKSAvIHN1bShhW2tdKnpeKC1rKSwg
aywgMCwgTik7CisgICAgLy8KKyAgICAvLyBUaGUgZGVzaXJlZCBmcmVxdWVuY3kgcmVzcG9uc2Ug
aXMgSChleHAoaipvbWVnYSkpLCB3aGVyZSBvbWVnYSBpcyBpbiBbMCwKKyAgICAvLyAxKS4KKyAg
ICAvLworICAgIC8vIExldCBQKHgpID0gc3VtKGNba10qeF5rLCBrLCAwLCBQKSBiZSBhIHBvbHlu
b21pYWwgb2Ygb3JkZXIgUC4gVGhlbiBlYWNoIG9mCisgICAgLy8gdGhlIHN1bXMgaW4gSCh6KSBp
cyBlcXVpdmFsZW50IHRvIGV2YWx1YXRpbmcgYSBwb2x5bm9taWFsIGF0IHRoZSBwb2ludAorICAg
IC8vIDEvei4KKworICAgIGZvciAodW5zaWduZWQgayA9IDA7IGsgPCBsZW5ndGg7ICsraykgewor
ICAgICAgICBpZiAoZnJlcXVlbmN5W2tdIDwgMCB8fCBmcmVxdWVuY3lba10gPiAxKSB7CisgICAg
ICAgICAgICAvLyBPdXQtb2YtYm91bmRzIGZyZXF1ZW5jaWVzIHNob3VsZCByZXR1cm4gTmFOLgor
ICAgICAgICAgICAgbWFnUmVzcG9uc2Vba10gPSBzdGQ6Om5hbmYoIiIpOworICAgICAgICAgICAg
cGhhc2VSZXNwb25zZVtrXSA9IHN0ZDo6bmFuZigiIik7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAvLyB6UmVjaXAgPSAxL3ogPSBleHAoLWoqZnJlcXVlbmN5KQorICAgICAgICAgICAg
ZG91YmxlIG9tZWdhID0gLXBpRG91YmxlICogZnJlcXVlbmN5W2tdOworICAgICAgICAgICAgc3Rk
Ojpjb21wbGV4PGRvdWJsZT4gelJlY2lwID0gc3RkOjpjb21wbGV4PGRvdWJsZT4oY29zKG9tZWdh
KSwgc2luKG9tZWdhKSk7CisKKyAgICAgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IG51bWVy
YXRvciA9IGV2YWx1YXRlUG9seW5vbWlhbChtX2ZlZWRmb3J3YXJkLmRhdGEoKSwgelJlY2lwLCBt
X2ZlZWRmb3J3YXJkLnNpemUoKSAtIDEpOworICAgICAgICAgICAgc3RkOjpjb21wbGV4PGRvdWJs
ZT4gZGVub21pbmF0b3IgPSBldmFsdWF0ZVBvbHlub21pYWwobV9mZWVkYmFjay5kYXRhKCksIHpS
ZWNpcCwgbV9mZWVkYmFjay5zaXplKCkgLSAxKTsKKyAgICAgICAgICAgIHN0ZDo6Y29tcGxleDxk
b3VibGU+IHJlc3BvbnNlID0gbnVtZXJhdG9yIC8gZGVub21pbmF0b3I7CisgICAgICAgICAgICBt
YWdSZXNwb25zZVtrXSA9IHN0YXRpY19jYXN0PGZsb2F0PihhYnMocmVzcG9uc2UpKTsKKyAgICAg
ICAgICAgIHBoYXNlUmVzcG9uc2Vba10gPSBzdGF0aWNfY2FzdDxmbG9hdD4oYXRhbjIoaW1hZyhy
ZXNwb25zZSksIHJlYWwocmVzcG9uc2UpKSk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK2RvdWJs
ZSBJSVJGaWx0ZXI6OnRhaWxUaW1lKGRvdWJsZSBzYW1wbGVSYXRlLCBib29sIGlzRmlsdGVyU3Rh
YmxlKQoreworICAgIC8vIFRoZSBtYXhpbXVtIHRhaWwgdGltZS4gVGhpcyBpcyBzb21ld2hhdCBh
cmJpdHJhcnksIGJ1dCB3ZSdyZSBhc3N1bWluZyB0aGF0CisgICAgLy8gbm8gb25lIGlzIGdvaW5n
IHRvIGV4cGVjdCB0aGUgSUlSRmlsdGVyIHRvIHByb2R1Y2UgYW4gb3V0cHV0IGFmdGVyIHRoaXMK
KyAgICAvLyBtdWNoIHRpbWUgYWZ0ZXIgdGhlIGlucHV0cyBoYXZlIHN0b3BwZWQuCisgICAgY29u
c3QgZG91YmxlIG1heFRhaWxUaW1lID0gMTA7CisKKyAgICAvLyBJZiB0aGUgbWF4aW11bSBhbXBs
aXR1ZGUgb2YgdGhlIGltcHVsc2UgcmVzcG9uc2UgaXMgbGVzcyB0aGFuIHRoaXMsIHdlCisgICAg
Ly8gYXNzdW1lIHRoYXQgd2UndmUgcmVhY2hlZCB0aGUgdGFpbCBvZiB0aGUgcmVzcG9uc2UuIEN1
cnJlbnRseSwgdGhpcyBtZWFucworICAgIC8vIHRoYXQgdGhlIGltcHVsc2UgaXMgbGVzcyB0aGFu
IDEgYml0IG9mIGEgMTYtYml0IFBDTSB2YWx1ZS4KKyAgICBjb25zdCBmbG9hdCBtYXhUYWlsQW1w
bGl0dWRlID0gMSAvIDMyNzY4LjA7CisKKyAgICAvLyBJZiBmaWx0ZXIgaXMgbm90IHN0YWJsZSwg
anVzdCByZXR1cm4gbWF4IHRhaWwuIFNpbmNlIHRoZSBmaWx0ZXIgaXMgbm90CisgICAgLy8gc3Rh
YmxlLCB0aGUgaW1wdWxzZSByZXNwb25zZSB3b24ndCBjb252ZXJnZSB0byB6ZXJvLCBzbyB3ZSBk
b24ndCBuZWVkIHRvCisgICAgLy8gZmluZCB0aGUgaW1wdWxzZSByZXNwb25zZSB0byBmaW5kIHRo
ZSBhY3R1YWwgdGFpbCB0aW1lLgorICAgIGlmICghaXNGaWx0ZXJTdGFibGUpCisgICAgICAgIHJl
dHVybiBtYXhUYWlsVGltZTsKKworICAgIC8vIEhvdyB0byBjb21wdXRlIHRoZSB0YWlsIHRpbWU/
IFdlJ3JlIGdvaW5nIHRvIGZpbHRlciBhbiBpbXB1bHNlCisgICAgLy8gZm9yIHxtYXhUYWlsVGlt
ZXwgc2Vjb25kcywgaW4gYmxvY2tzIG9mIGtSZW5kZXJRdWFudHVtRnJhbWVzIGF0CisgICAgLy8g
YSB0aW1lLiBUaGUgbWF4aW11bSBtYWduaXR1ZGUgb2YgdGhpcyBibG9jayBpcyBzYXZlZC4gQWZ0
ZXIgYWxsCisgICAgLy8gb2YgdGhlIHNhbXBsZXMgaGF2ZSBiZWVuIGNvbXB1dGVkLCBmaW5kIHRo
ZSBsYXN0IGJsb2NrIHdpdGggYQorICAgIC8vIG1heGltdW0gbWFnbml0dWRlIGdyZWF0ZXIgdGhh
biB8a01heFRhaWxlQW1wbGl0dWRlfC4gVGhhdCBibG9jaworICAgIC8vIGluZGV4ICsgMSB3aWxs
IGJlIHRoZSB0YWlsIHRpbWUuIFdlIGRvbid0IG5lZWQgdG8gYmUKKyAgICAvLyBzdXBlci1hY2N1
cmF0ZSBpbiBjb21wdXRpbmcgdGhlIHRhaWwgdGltZSBzaW5jZSB3ZSBwcm9jZXNzIG9uCisgICAg
Ly8gYmxvY2tzLCBibG9jayBhY2N1cmFjeSBpcyBnb29kIGVub3VnaCwgYW5kIHRoZSB2YWx1ZSBq
dXN0IG5lZWRzCisgICAgLy8gdG8gYmUgbGFyZ2VyIHRoYW4gdGhlICJyZWFsIiB0YWlsIHRpbWUs
IHNvIHdlIGRvbid0IHByZW1hdHVyZWx5CisgICAgLy8gemVybyBvdXQgdGhlIG91dHB1dCBvZiB0
aGUgbm9kZS4KKworICAgIC8vIE51bWJlciBvZiByZW5kZXIgcXVhbnRhIG5lZWRlZCB0byByZWFj
aCB0aGUgbWF4IHRhaWwgdGltZS4KKyAgICBpbnQgbnVtYmVyT2ZCbG9ja3MgPSBzdGQ6OmNlaWwo
c2FtcGxlUmF0ZSAqIG1heFRhaWxUaW1lIC8gaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisKKyAgICAv
LyBJbnB1dCBhbmQgb3V0cHV0IGJ1ZmZlcnMgZm9yIGZpbHRlcmluZy4KKyAgICBBdWRpb0Zsb2F0
QXJyYXkgaW5wdXQoaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisgICAgQXVkaW9GbG9hdEFycmF5IG91
dHB1dChpaXJSZW5kZXJpbmdRdWFudHVtKTsKKworICAgIC8vIEFycmF5IHRvIGhvbGQgdGhlIG1h
eCBtYWduaXR1ZGVzCisgICAgQXVkaW9GbG9hdEFycmF5IG1hZ25pdHVkZXMobnVtYmVyT2ZCbG9j
a3MpOworCisgICAgLy8gQ3JlYXRlIHRoZSBpbXB1bHNlIGlucHV0IHNpZ25hbC4KKyAgICBpbnB1
dFswXSA9IDE7CisKKyAgICAvLyBQcm9jZXNzIHRoZSBmaXJzdCBibG9jayBhbmQgZ2V0IHRoZSBt
YXggbWFnbml0dWRlIG9mIHRoZSBvdXRwdXQuCisgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCksIG91
dHB1dC5kYXRhKCksIGlpclJlbmRlcmluZ1F1YW50dW0pOworICAgIFZlY3Rvck1hdGg6OnZtYXht
Z3Yob3V0cHV0LmRhdGEoKSwgMSwgJm1hZ25pdHVkZXNbMF0sIGlpclJlbmRlcmluZ1F1YW50dW0p
OworCisgICAgLy8gUHJvY2VzcyB0aGUgcmVzdCBvZiB0aGUgc2lnbmFsLCBnZXR0aW5nIHRoZSBt
YXggbWFnbml0dWRlIG9mIHRoZQorICAgIC8vIG91dHB1dCBmb3IgZWFjaCBibG9jay4KKyAgICBp
bnB1dFswXSA9IDA7CisKKyAgICBmb3IgKGludCBrID0gMTsgayA8IG51bWJlck9mQmxvY2tzOyAr
K2spIHsKKyAgICAgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCksIG91dHB1dC5kYXRhKCksIGlpclJl
bmRlcmluZ1F1YW50dW0pOworICAgICAgICBWZWN0b3JNYXRoOjp2bWF4bWd2KG91dHB1dC5kYXRh
KCksIDEsICZtYWduaXR1ZGVzW2tdLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKyAgICB9CisKKyAg
ICAvLyBEb25lIGNvbXB1dGluZyB0aGUgaW1wdWxzZSByZXNwb25zZTsgcmVzZXQgdGhlIHN0YXRl
IHNvIHRoZSBhY3R1YWwgbm9kZQorICAgIC8vIHN0YXJ0cyBpbiB0aGUgZXhwZWN0ZWQgaW5pdGlh
bCBzdGF0ZS4KKyAgICByZXNldCgpOworCisgICAgLy8gRmluZCB0aGUgbGFzdCBibG9jayB3aXRo
IGFtcGxpdHVkZSBncmVhdGVyIHRoYW4gdGhlIHRocmVzaG9sZC4KKyAgICBpbnQgaW5kZXggPSBu
dW1iZXJPZkJsb2NrcyAtIDE7CisgICAgZm9yIChpbnQgayA9IGluZGV4OyBrID49IDA7IC0taykg
eworICAgICAgICBpZiAobWFnbml0dWRlc1trXSA+IG1heFRhaWxBbXBsaXR1ZGUpIHsKKyAgICAg
ICAgICAgIGluZGV4ID0gazsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQor
CisgICAgLy8gVGhlIG1hZ25pdHVkZSBmaXJzdCBiZWNvbWUgbG93ZXIgdGhhbiB0aGUgdGhyZXNo
b2xkIGF0IHRoZSBuZXh0IGJsb2NrLgorICAgIC8vIENvbXB1dGUgdGhlIGNvcnJlc3BvbmRpbmcg
dGltZSB2YWx1ZSB2YWx1ZTsgdGhhdCdzIHRoZSB0YWlsIHRpbWUuCisgICAgcmV0dXJuIChpbmRl
eCArIDEpICogaWlyUmVuZGVyaW5nUXVhbnR1bSAvIHNhbXBsZVJhdGU7Cit9CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0lJUkZpbHRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSUlSRmlsdGVyLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDJiNmEzNzcyNWM3YmU5OTU0N2MxMzRjNTg3MWQ5ODk5NDRkNmM2MwotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5o
CkBAIC0wLDAgKzEsNjggQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSUlSRmlsdGVyIHsKKyAgICBXVEZfTUFLRV9GQVNUX0FM
TE9DQVRFRDsKK3B1YmxpYzoKKyAgICBzdGF0aWMgY29uc3Qgc2l6ZV90IG1heE9yZGVyOworICAg
IElJUkZpbHRlcihjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rv
cjxkb3VibGU+JiBmZWVkYmFjayk7CisKKyAgICB2b2lkIHJlc2V0KCk7CisKKyAgICB2b2lkIHBy
b2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0aW9uLCBzaXplX3QgZnJh
bWVzVG9Qcm9jZXNzKTsKKyAgICB2b2lkIGdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxl
bmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCog
cGhhc2VSZXNwb25zZSk7CisgICAgZG91YmxlIHRhaWxUaW1lKGRvdWJsZSBzYW1wbGVSYXRlLCBi
b29sIGlzRmlsdGVyU3RhYmxlKTsKKworcHJpdmF0ZToKKyAgICAvLyBGaWx0ZXIgbWVtb3J5Cisg
ICAgLy8KKyAgICAvLyBGb3Igc2ltcGxpY2l0eSwgd2UgYXNzdW1lIHxtX3hCdWZmZXJ8IGFuZCB8
bV95QnVmZmVyfCBoYXZlIHRoZSBzYW1lIGxlbmd0aCwKKyAgICAvLyBhbmQgdGhlIGxlbmd0aCBp
cyBhIHBvd2VyIG9mIHR3by4gU2luY2UgdGhlIG51bWJlciBvZiBjb2VmZmljaWVudHMgaGFzIGEK
KyAgICAvLyBmaXhlZCB1cHBlciBsZW5ndGgsIHRoZSBzaXplIG9mIHhCdWZmZXIgYW5kIHlCdWZm
ZXIgaXMgZml4ZWQuIHxtX3hCdWZmZXJ8CisgICAgLy8gaG9sZHMgdGhlIG9sZCBpbnB1dCB2YWx1
ZXMgYW5kIHxtX3lCdWZmZXJ8IGhvbGRzIHRoZSBvbGQgb3V0cHV0IHZhbHVlcworICAgIC8vIG5l
ZWRlZCB0byBjb21wdXRlIHRoZSBuZXcgb3V0cHV0IHZhbHVlLgorICAgIC8vCisgICAgLy8gbV95
QnVmZmVyW21fYnVmZmVySW5kZXhdIGhvbGRzIHRoZSBtb3N0IHJlY2VudCBvdXRwdXQgdmFsdWUs
IHNheSwgeVtuXS4KKyAgICAvLyBUaGVuIG1feUJ1ZmZlclttX2J1ZmZlckluZGV4IC0ga10gaXMg
eVtuIC0ga10uIFNpbWlsYXJseSBmb3IgbV94QnVmZmVyLgorICAgIC8vCisgICAgLy8gVG8gbWlu
aW1pemUgcm91bmRvZmYsIHRoZXNlIGFycmF5cyBhcmUgZG91YmxlJ3MgaW5zdGVhZCBvZiBmbG9h
dHMuCisgICAgVmVjdG9yPGRvdWJsZT4gbV94QnVmZmVyOworICAgIFZlY3Rvcjxkb3VibGU+IG1f
eUJ1ZmZlcjsKKworICAgIC8vIEluZGV4IGludG8gdGhlIHhCdWZmZXIgYW5kIHlCdWZmZXIgYXJy
YXlzIHdoZXJlIHRoZSBtb3N0IGN1cnJlbnQgeCBhbmQgeQorICAgIC8vIHZhbHVlcyBzaG91bGQg
YmUgc3RvcmVkLiB4QnVmZmVyW2J1ZmZlckluZGV4XSBjb3JyZXNwb25kcyB0byB4W25dLCB0aGUK
KyAgICAvLyBjdXJyZW50IHggaW5wdXQgdmFsdWUgYW5kIHlCdWZmZXJbYnVmZmVySW5kZXhdIGlz
IHdoZXJlIHlbbl0sIHRoZSBjdXJyZW50CisgICAgLy8gb3V0cHV0IHZhbHVlLgorICAgIHNpemVf
dCBtX2J1ZmZlckluZGV4IHsgMCB9OworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIG1fZmVl
ZGZvcndhcmQ7CisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIG1fZmVlZGJhY2s7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvSW1hZ2VVdGlsaXRpZXMuaAppbmRleCA5YjE4Y2FhOGQ4NmJmOGQyNzUzYzNjYmVjYTVk
NzQ0NGZhZjk4MWQ3Li4wM2NmMTE3ZDU0ZDQxOTE4NWQ0YThmMDI0NjA0NzU0NTgwYzUxZDc3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGll
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVz
LmgKQEAgLTI1LDYgKzI1LDkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDx3dGYvRm9y
d2FyZC5oPgorI2luY2x1ZGUgPHd0Zi9Xb3JrUXVldWUuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBXRUJDT1JFX0VYUE9SVCBXb3JrUXVldWUmIHNoYXJlZEltYWdlVHJhbnNjb2RpbmdRdWV1
ZSgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNTdhNjEyNTFjYjRiMzM2ZDM5
MjJlYzUyYWJmYTliNjZjMjY0NzE4Ny4uODVhZmFmMjc3ZGViNDg4OGIzMTBhMWFlMzJjMGY0Yzk3
NjdhZGU3MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMjAtMDgtMjUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBJ
SVJGaWx0ZXJOb2RlIGludGVyZmFjZSBpcyBub3Qgc3VwcG9ydGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU4MTAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyB0aGF0
IGFyZSBub3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50
ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZh
Y2UvaWlyZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2Uv
aWlyZmlsdGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVy
LWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZh
Y2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wOC0yNCAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFVwZGF0ZSBp
T1MgbGF5b3V0IHRlc3QgcmVzdWx0cyBhZnRlciByMjY2MDg3CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCA3ZTk3Mjg3OTA5YWYzNmFkNzBjOGFmN2ViYmMyYjZlNTM3YTEyYWVkLi5mMDIyMTgxMDI3MzAy
OTZkYmJiZjFkYzJlOTg4NWE4N2M3NDBlOTBhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0
RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMzNSw2
ICszMzUsOSBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlLwogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFj
ZS9rLXJhdGUtZGVsYXkuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJm
YWNlL2stcmF0ZS1nYWluLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCisjIG9uZS1wb2xlIHN1YnRl
c3QgaXMgZmxha2lseSBmYWlsaW5nLgoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0
ZXIuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCisKICMgVGhpcyB0ZXN0IHBhc3NlcyBidXQgcHJpbnRz
IGEgZGlmZmVyZW50IHZhbHVlIGFsbW9zdCBldmVyeSB0aW1lLgogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWlu
dGVyZmFjZS9jb252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDVlOTEyMzJmODdjZDdlMGEwZGFmZTI5MDE4
NjU0N2IzZjNhZjY1MTguLjgxNzQ5NDU1MTY4NDIwNGQyNWJjNDhkMTExZjRkYjJhYjBjYjRhZTcg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVz
cy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0zMyw3ICszMyw3IEBAIFBBU1MgQmFzZUF1
ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVDb252b2x2ZXIoKQogUEFTUyBC
YXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZURlbGF5KG9wdGlvbmFs
IGRvdWJsZSkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3Jl
YXRlRHluYW1pY3NDb21wcmVzc29yKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNl
OiBvcGVyYXRpb24gY3JlYXRlR2FpbigpIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFj
ZTogb3BlcmF0aW9uIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxk
b3VibGU+KSBhc3NlcnRfb3duX3Byb3BlcnR5OiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBt
aXNzaW5nIG5vbi1zdGF0aWMgb3BlcmF0aW9uIGV4cGVjdGVkIHByb3BlcnR5ICJjcmVhdGVJSVJG
aWx0ZXIiIG1pc3NpbmcKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlv
biBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgCiBQ
QVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlT3NjaWxsYXRv
cigpIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZVBh
bm5lcigpIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0
ZVBlcmlvZGljV2F2ZShzZXF1ZW5jZTxmbG9hdD4sIHNlcXVlbmNlPGZsb2F0Piwgb3B0aW9uYWwg
UGVyaW9kaWNXYXZlQ29uc3RyYWludHMpIApAQCAtOTQsOCArOTQsOCBAQCBQQVNTIEJhc2VBdWRp
b0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRl
RGVsYXkob3B0aQogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVh
dGVEZWxheShvcHRpb25hbCBkb3VibGUpIG9uIGNvbnRleHQgd2l0aCB0b28gZmV3IGFyZ3VtZW50
cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6
IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVEeW5hbWljc0NvbXByZXNzb3Io
KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNl
OiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlR2FpbigpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAKLUZBSUwgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2Vx
dWVuY2U8ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJv
cGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJ
TCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2Vx
dWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgb24gY29udGV4dCB3aXRoIHRvbyBmZXcg
YXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkg
ImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBCYXNl
QXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNy
ZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgCitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxsaW5n
IGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSBvbiBj
b250ZXh0IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNT
IEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiY3JlYXRlT3NjaWxsYXRvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1
ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVh
dGVQYW5uZXIoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQg
aW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlUGVyaW9kaWNX
YXZlKHNlcXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dh
dmVDb25zdHJhaW50cykiIHdpdGggdGhlIHByb3BlciB0eXBlIApAQCAtMTQ3LDggKzE0Nyw4IEBA
IFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0
KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0CiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNl
OiBjYWxsaW5nIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJsZSkgb24gbmV3IE9mZmxpbmVBdWRp
b0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0
aHJvdyBUeXBlRXJyb3IgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2Zm
bGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJjcmVhdGVEeW5hbWljc0NvbXByZXNzb3IoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNT
IEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAx
LCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVHYWluKCkiIHdpdGgg
dGhlIHByb3BlciB0eXBlIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9m
ZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJjcmVhdGVJSVJG
aWx0ZXIiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KLUZBSUwgQmFzZUF1ZGlvQ29udGV4
dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNl
cXVlbmNlPGRvdWJsZT4pIG9uIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9y
YXRlKSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9p
bmhlcml0czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlw
ZSBjaGFpbgorUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRp
b0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRl
SUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3Jl
YXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIG9uIG5ldyBP
ZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSB3aXRoIHRvbyBmZXcgYXJndW1l
bnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFj
ZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAiY3JlYXRlT3NjaWxsYXRvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBB
U1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEs
IDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZVBhbm5lcigpIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5l
dyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImNyZWF0ZVBlcmlvZGljV2F2ZShzZXF1ZW5jZTxmbG9hdD4sIHNlcXVlbmNlPGZsb2F0
Piwgb3B0aW9uYWwgUGVyaW9kaWNXYXZlQ29uc3RyYWludHMpIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSAKQEAgLTc0NCw0MCArNzQ0LDQwIEBAIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdh
aW5Ob2RlKGNvbnRleHQpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPCiBQQVNTIEF1
ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImNoYW5uZWxDb3VudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQgcHJvcGVydHkg
ImNoYW5uZWxDb3VudE1vZGUiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBBdWRpb05vZGUg
aW50ZXJmYWNlOiBuZXcgR2Fpbk5vZGUoY29udGV4dCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJj
aGFubmVsSW50ZXJwcmV0YXRpb24iIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBJSVJGaWx0
ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBv
YmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0
eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3Np
bmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2Ugb2JqZWN0IGxlbmd0aCBhc3NlcnRfb3du
X3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2Rl
IiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0
ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbmFtZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRv
ZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0
eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTog
ZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IGFz
c2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZp
bHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlM
IElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50
ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0b3IiIHByb3BlcnR5IGFzc2VydF9v
d25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5v
ZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZp
bHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNl
IHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IGFzc2VydF9vd25fcHJv
cGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4
cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5v
ZGUgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5
LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBk
b2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVy
dHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBtdXN0IGJlIHBy
aW1hcnkgaW50ZXJmYWNlIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
U3RyaW5naWZpY2F0aW9uIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
SUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJnZXRG
cmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5
KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
SUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxv
YXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgb24gbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBm
ZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0
ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290
IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5v
ZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJjb25uZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5z
aWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0
ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290
IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5v
ZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgY29ubmVjdChBdWRpb05vZGUs
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
d2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxz
OiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51
bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJ
SVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9k
ZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAiY29ubmVjdChBdWRpb1BhcmFtLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24g
d2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVk
aW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVu
c2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDog
WzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5
cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCgpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50
ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVl
ZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCh1bnNpZ25lZCBs
b25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNl
cHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0
ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZB
SUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcp
IG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUpIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJm
YWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9Ob2RlKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBh
cmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBl
eGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2Jq
ZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIK
LUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2Zl
ZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRp
c2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
YXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVj
dCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2Fs
bGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRv
byBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhw
ZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQg
Z290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRl
ck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRl
eHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3Bl
cnR5ICJkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZyki
IHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9u
IHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVm
ZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1
ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVk
IGxvbmcsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0
IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVu
IGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsx
XSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRp
b1BhcmFtKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBl
eGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2Jq
ZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIK
LUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0p
IG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBsb25n
KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
QXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2ln
bmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcg
b2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNl
OiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6
IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY29udGV4dCIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9i
amVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTog
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJlck9mSW5wdXRzIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPdXRwdXRzIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2
YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVy
cm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUg
aW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwg
ZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50IiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVu
IGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsx
XSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50TW9k
ZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
QXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxJ
bnRlcnByZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBl
Y3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBn
b3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVy
Tm9kZSIKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVy
dGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBv
YmplY3QgbGVuZ3RoIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbmFtZSAK
K1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZh
Y2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVj
dCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNl
OiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3Qn
cyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTog
b3BlcmF0aW9uIGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5
LCBGbG9hdDMyQXJyYXkpIAorUEFTUyBJSVJGaWx0ZXJOb2RlIG11c3QgYmUgcHJpbWFyeSBpbnRl
cmZhY2Ugb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZl
ZWRiYWNrOiBbMV19KSAKK1BBU1MgU3RyaW5naWZpY2F0aW9uIG9mIG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgCitQQVNTIElJUkZp
bHRlck5vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndh
cmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZ2V0RnJlcXVl
bmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkiIHdp
dGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogY2FsbGlu
ZyBnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQz
MkFycmF5KSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwg
ZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJy
b3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJjb25uZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5z
aWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJm
YWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nLCBv
cHRpb25hbCB1bnNpZ25lZCBsb25nKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVl
ZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVz
dCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0
ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBp
bmhlcml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxv
bmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2Fs
bGluZyBjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
d2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9O
b2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBb
MV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoKSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0
KHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93
IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQg
cHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQ
QVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUpIG9u
IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazog
WzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1Mg
QXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5l
Y3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNT
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2ln
bmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nKSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcg
ZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpIG9uIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVk
aW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3Qo
QXVkaW9QYXJhbSkiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJm
YWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkgb24gbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcg
YXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNl
OiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6
IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNp
Z25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZh
Y2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBsb25nKSBvbiBuZXcg
SUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0p
IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDog
WzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb250ZXh0IiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgIm51bWJlck9mSW5wdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BB
U1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRm
b3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJl
ck9mT3V0cHV0cyIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZh
Y2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnQiIHdpdGggdGhlIHBy
b3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1
ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsSW50
ZXJwcmV0YXRpb24iIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBNZWRpYUVsZW1lbnRBdWRp
b1NvdXJjZU5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJm
YWNlIG9iamVjdCAKIFBBU1MgTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlIGludGVyZmFjZSBv
YmplY3QgbGVuZ3RoIAogUEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUgaW50ZXJmYWNl
IG9iamVjdCBuYW1lIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWlu
dGVyZmFjZS9jdG9yLWlpcmZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZp
bHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAppbmRleCBlOTAx
YTJjNDQzMTYwMzA2Mjk2ZGQwNzM0MTMxMTE3NTdlZjczOTAyLi43YWU3N2MxYzIyOTFkODEwODIy
NTQ1ZjI0Mzc3MmFhOWFkOGY2MjA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRl
cm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4
dApAQCAtMiwyNyArMiw1NiBAQAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAog
UEFTUyBFeGVjdXRpbmcgImluaXRpYWxpemUiIAogUEFTUyBFeGVjdXRpbmcgImludmFsaWQgY29u
c3RydWN0b3IiIAotRkFJTCBFeGVjdXRpbmcgImRlZmF1bHQgY29uc3RydWN0b3IiIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
UmlnaHQgaGFuZCBzaWRlIG9mIGluc3RhbmNlb2YgaXMgbm90IGFuIG9iamVjdCIKLUZBSUwgRXhl
Y3V0aW5nICJ0ZXN0IEF1ZGlvTm9kZU9wdGlvbnMiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ25vZGUuY2hhbm5lbENvdW50JykiCitQQVNTIEV4ZWN1dGlu
ZyAiZGVmYXVsdCBjb25zdHJ1Y3RvciIgCitQQVNTIEV4ZWN1dGluZyAidGVzdCBBdWRpb05vZGVP
cHRpb25zIiAKIFBBU1MgRXhlY3V0aW5nICJjb25zdHJ1Y3RvciBvcHRpb25zIiAKLUZBSUwgRXhl
Y3V0aW5nICJmdW5jdGlvbmFsaXR5IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTog
SUlSRmlsdGVyTm9kZSIKK1BBU1MgRXhlY3V0aW5nICJmdW5jdGlvbmFsaXR5IiAKIFBBU1MgQXVk
aXQgcmVwb3J0IAogUEFTUyA+IFtpbml0aWFsaXplXSAgCiBQQVNTICAgY29udGV4dCA9IG5ldyBP
ZmZsaW5lQXVkaW9Db250ZXh0KC4uLikgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFT
UyA8IFtpbml0aWFsaXplXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlv
bnMpIAogUEFTUyA+IFtpbnZhbGlkIGNvbnN0cnVjdG9yXSAgCi1QQVNTICAgbmV3IElJUkZpbHRl
ck5vZGUoKSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3Ig
KGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oKScpIi4gCi1QQVNTICAgbmV3IElJUkZpbHRl
ck5vZGUoMSkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9y
IChldmFsdWF0aW5nICduZXcgd2luZG93W25hbWVdKDEpJykiLiAKLVBBU1MgICBuZXcgSUlSRmls
dGVyTm9kZShjb250ZXh0LCA0MikgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBh
IGNvbnN0cnVjdG9yIChldmFsdWF0aW5nICduZXcgd2luZG93W25hbWVdKGNvbnRleHQsIDQyKScp
Ii4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoKSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5v
dWdoIGFyZ3VtZW50cyIuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKDEpIHRocmV3IFR5cGVF
cnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwgNDIpIHRocmV3IFR5cGVFcnJvcjogIlR5cGUgZXJyb3IiLiAKIFBBU1MgPCBbaW52
YWxpZCBjb25zdHJ1Y3Rvcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMyBhc3NlcnRp
b25zKSAKIFBBU1MgPiBbZGVmYXVsdCBjb25zdHJ1Y3Rvcl0gIAotRkFJTCBYIG5vZGUwID0gbmV3
IElJUkZpbHRlck5vZGUoY29udGV4dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJmZWVkYmFjayI6WzEs
LTAuOV19KSBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEg
Y29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oY29udGV4dCwgb3B0aW9u
cy5jb25zdHJ1Y3Rvck9wdGlvbnMpJykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK1BBU1MgICBub2RlMCA9IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHsiZmVlZGZv
cndhcmQiOlsxXSwiZmVlZGJhY2siOlsxLC0wLjldfSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAorUEFTUyAgIG5vZGUwIGluc3RhbmNlb2YgSUlSRmlsdGVyTm9kZSBpcyBlcXVhbCB0byB0
cnVlLiAKK1BBU1MgICBub2RlMC5udW1iZXJPZklucHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1Mg
ICBub2RlMC5udW1iZXJPZk91dHB1dHMgaXMgZXF1YWwgdG8gMS4gCitQQVNTICAgbm9kZTAuY2hh
bm5lbENvdW50IGlzIGVxdWFsIHRvIDIuIAorUEFTUyAgIG5vZGUwLmNoYW5uZWxDb3VudE1vZGUg
aXMgZXF1YWwgdG8gbWF4LiAKK1BBU1MgICBub2RlMC5jaGFubmVsSW50ZXJwcmV0YXRpb24gaXMg
ZXF1YWwgdG8gc3BlYWtlcnMuIAorUEFTUyA8IFtkZWZhdWx0IGNvbnN0cnVjdG9yXSBBbGwgYXNz
ZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA3IGFzc2VydGlvbnMpIAogUEFTUyA+IFt0ZXN0IEF1ZGlv
Tm9kZU9wdGlvbnNdICAKLUZBSUwgWCBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50
OiAxN30pIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYSBj
b25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tub2RlTmFtZV0nKSIuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMs
IHtjaGFubmVsQ291bnQ6IDE3fSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAg
IG5vZGUuY2hhbm5lbENvdW50IGlzIGVxdWFsIHRvIDE3LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVy
Tm9kZShjLCB7Y2hhbm5lbENvdW50OiAwfSkgdGhyZXcgSW52YWxpZFN0YXRlRXJyb3I6ICJUaGUg
b2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5v
ZGUoYywge2NoYW5uZWxDb3VudDogOTl9KSB0aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogIlRoZSBv
YmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4iLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9k
ZShjLCB7Y2hhbm5lbENvdW50TW9kZTogIm1heCJ9IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKK1BBU1MgICBub2RlLmNoYW5uZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BBU1Mg
ICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50TW9kZTogIm1heCJ9KSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVy
IHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2Rl
KGMsIHtjaGFubmVsQ291bnRNb2RlOiAiY2xhbXBlZC1tYXgifSkgZGlkIG5vdCB0aHJvdyBhbiBl
eGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciB2YWxpZCBzZXR0
ZXIgaXMgZXF1YWwgdG8gY2xhbXBlZC1tYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMs
IHtjaGFubmVsQ291bnRNb2RlOiAiZXhwbGljaXQifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciB2YWxpZCBzZXR0ZXIgaXMg
ZXF1YWwgdG8gZXhwbGljaXQuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVs
Q291bnRNb2RlOiAiZm9vYmFyIn0gdGhyZXcgVHlwZUVycm9yOiAiVHlwZSBlcnJvciIuIAorUEFT
UyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciBpbnZhbGlkIHNldHRlciBpcyBlcXVhbCB0
byBleHBsaWNpdC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnBy
ZXRhdGlvbjogInNwZWFrZXJzIn0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1Mg
ICBub2RlLmNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNT
ICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnByZXRhdGlvbjogImRpc2NyZXRl
In0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRl
cnByZXRhdGlvbiBpcyBlcXVhbCB0byBkaXNjcmV0ZS4gCitQQVNTICAgbmV3IElJUkZpbHRlck5v
ZGUoYywge2NoYW5uZWxJbnRlcnByZXRhdGlvbjogImZvb2JhciJ9KSB0aHJldyBUeXBlRXJyb3I6
ICJUeXBlIGVycm9yIi4gCitQQVNTICAgbm9kZS5jaGFubmVsSW50ZXJwcmV0YXRpb24gYWZ0ZXIg
aW52YWxpZCBzZXR0ZXIgaXMgZXF1YWwgdG8gZGlzY3JldGUuIAorUEFTUyA8IFt0ZXN0IEF1ZGlv
Tm9kZU9wdGlvbnNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIwIGFzc2VydGlvbnMp
IAogUEFTUyA+IFtjb25zdHJ1Y3RvciBvcHRpb25zXSAgCi1GQUlMIFggbm9kZSA9IG5ldyBJSVJG
aWx0ZXJOb2RlKCwgeyJmZWVkYmFjayI6WzEsMC41XX0pIHRocmV3ICJSZWZlcmVuY2VFcnJvciIg
aW5zdGVhZCBvZiBFY21hU2NyaXB0IGVycm9yIFR5cGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHsi
ZmVlZGZvcndhcmQiOlsxLDAuNV19KSB0aHJldyAiUmVmZXJlbmNlRXJyb3IiIGluc3RlYWQgb2Yg
RWNtYVNjcmlwdCBlcnJvciBUeXBlRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCA8IFtjb25zdHJ1Y3RvciBvcHRpb25zXSAyIG91dCBvZiAyIGFzc2VydGlv
bnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFT
UyAgIG5vZGUgPSBuZXcgSUlSRmlsdGVyTm9kZSgsIHsiZmVlZGJhY2siOlsxLDAuNV19KSB0aHJl
dyBUeXBlRXJyb3I6ICJNZW1iZXIgSUlSRmlsdGVyT3B0aW9ucy5mZWVkZm9yd2FyZCBpcyByZXF1
aXJlZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBzZXF1ZW5jZSIuIAorUEFTUyAgIG5vZGUg
PSBuZXcgSUlSRmlsdGVyTm9kZShjLCB7ImZlZWRmb3J3YXJkIjpbMSwwLjVdfSkgdGhyZXcgVHlw
ZUVycm9yOiAiTWVtYmVyIElJUkZpbHRlck9wdGlvbnMuZmVlZGJhY2sgaXMgcmVxdWlyZWQgYW5k
IG11c3QgYmUgYW4gaW5zdGFuY2Ugb2Ygc2VxdWVuY2UiLiAKK1BBU1MgPCBbY29uc3RydWN0b3Ig
b3B0aW9uc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbZnVuY3Rpb25hbGl0eV0gIAotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVE
OiAzIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK1BBU1MgICBPdXRwdXQgb2YgZmlsdGVyIHVzaW5nIG5ldyBJSVJGaWx0ZXIo
Li4uKSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMDU3NTY0MDM1MDU4MDIxNTQ1LDAu
MTQzNzE5MTk2MzE5NTgwMDgsMC4yMTUwMDY2MzQ1OTMwMDk5NSwwLjI5Mjc3NjU4NDYyNTI0NDE0
LDAuMzY1OTc3NzkzOTMxOTYxMDYsMC40Mzk3NjQyMzE0NDM0MDUxNSwwLjUxMTE5MjczOTAwOTg1
NzIsMC41ODEzNzU1OTg5MDc0NzA3LDAuNjQ5NDA1ODM3MDU5MDIxLDAuNzE1Mzk0NDk2OTE3NzI0
NiwwLjc3ODk1NDU2NTUyNTA1NDksMC44Mzk5NTk1MDIyMjAxNTM4LDAuODk4MTY0Njg5NTQwODYz
LDAuOTUzMzk4NDA2NTA1NTg0NywxLjAwNTQ2NjY5OTYwMDIxOTcuLi5dLiAKK1BBU1MgPCBbZnVu
Y3Rpb25hbGl0eV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAK
K1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogNiB0YXNrcyByYW4gc3VjY2Vzc2Z1
bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFj
ZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJu
b2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0CmluZGV4IDQ1MzRjODNm
ZDQ1ZjhkMGNlMjI2NDY2YWQ3MWNmMjYyZTljZjU0NTIuLjViOTM3NGI5OWQyMDRkNjRjZjg3YTYx
OTkzOWNjM2U4NmJiMTYzMWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9k
ZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQK
QEAgLTIsMzMgKzIsNDQgQEAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBB
U1MgRXhlY3V0aW5nICJpbml0aWFsaXplIiAKIFBBU1MgRXhlY3V0aW5nICJleGlzdGVuY2UiIAot
RkFJTCBFeGVjdXRpbmcgInBhcmFtZXRlcnMiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoY29lZiwg
Y29lZiknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCitQQVNTIEV4
ZWN1dGluZyAicGFyYW1ldGVycyIgCiBQQVNTIEV4ZWN1dGluZyAiZXhjZXB0aW9ucy1jcmVhdGVJ
SVJGaWx0ZXIiIAotRkFJTCBFeGVjdXRpbmcgImV4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YSIg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlcihjb2VmLCBjb2VmKScsICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKSIKK1BBU1MgRXhlY3V0aW5nICJleGNlcHRpb25zLWdldEZyZXF1
ZW5jeURhdGEiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW2luaXRpYWxpemVdICAKIFBB
U1MgICBJbml0aWFsaXplIGNvbnRleHQgZm9yIHRlc3RpbmcgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAogUEFTUyA8IFtpbml0aWFsaXplXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFtleGlzdGVuY2VdICAKLUZBSUwgWCBjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlciBkb2VzIG5vdCBleGlzdC4gR290IHVuZGVmaW5lZC4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2V4aXN0ZW5jZV0gMSBvdXQgb2YgMSBh
c3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKK1BBU1MgICBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBkb2VzIGV4aXN0LiAKK1BBU1MgPCBb
ZXhpc3RlbmNlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAog
UEFTUyA+IFtwYXJhbWV0ZXJzXSAgCitQQVNTICAgbnVtYmVyT2ZJbnB1dHMgaXMgZXF1YWwgdG8g
MS4gCitQQVNTICAgbnVtYmVyT2ZPdXRwdXRzIGlzIGVxdWFsIHRvIDEuIAorUEFTUyAgIGNoYW5u
ZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BBU1MgICBjaGFubmVsSW50ZXJwcmV0YXRp
b24gaXMgZXF1YWwgdG8gc3BlYWtlcnMuIAorUEFTUyA8IFtwYXJhbWV0ZXJzXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyA+IFtleGNlcHRpb25zLWNy
ZWF0ZUlJUkZpbHRlcl0gIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcigpIHRocmV3IFR5cGVFcnJv
cjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyKCknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVm
aW5lZCkiLiAKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxKSkgdGhy
ZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxKSknLCAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVhdGVJSVJG
aWx0ZXIobnVsbCwgbnVsbCkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIobnVsbCwg
bnVsbCknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLUZBSUwg
WCBjcmVhdGVJSVJGaWx0ZXIoW10sIFtdKSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIE5v
dFN1cHBvcnRlZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgWCBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBv
ZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
Ci1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKFtdLCBbMV0pIHRocmV3ICJUeXBlRXJyb3IiIGluc3Rl
YWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIwKSwgbmV3IEZs
b2F0MzJBcnJheSgyMCkpIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyKGZiLCBmYiknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0
ZXIobmV3IEZsb2F0MzJBcnJheSgyMSksIFsxXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBv
ZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
Ci1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyMSkpIHRocmV3
ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbMV0sIG5ldyBG
bG9hdDMyQXJyYXkoMikpIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgSW52YWxpZFN0YXRl
RXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0
ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDEwKSwgWzFdKSB0aHJldyAiVHlwZUVycm9yIiBp
bnN0ZWFkIG9mIEludmFsaWRTdGF0ZUVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgTmFOLCBJbmZpbml0eV0p
IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEsIEluZmluaXR5LCBOYU5d
KScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAgIGNy
ZWF0ZUlJUkZpbHRlcihbMSwgTmFOLCBJbmZpbml0eV0sIFsxXSkgdGhyZXcgVHlwZUVycm9yOiAi
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIoWzEsIEluZmluaXR5LCBOYU5dLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCAn
YWJjJywgW11dLCBbMV0pIHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVy
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxLCAnYWJj
JywgW11dLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4g
Ci1GQUlMIDwgW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVyXSA4IG91dCBvZiAxNCBhc3NlcnRp
b25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BB
U1MgICBjcmVhdGVJSVJGaWx0ZXIoKSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5vdWdoIGFyZ3Vt
ZW50cyIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJl
dyBUeXBlRXJyb3I6ICJOb3QgZW5vdWdoIGFyZ3VtZW50cyIuIAorUEFTUyAgIGNyZWF0ZUlJUkZp
bHRlcihudWxsLCBudWxsKSB0aHJldyBUeXBlRXJyb3I6ICJWYWx1ZSBpcyBub3QgYSBzZXF1ZW5j
ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbXSwgW10pIHRocmV3IE5vdFN1cHBvcnRlZEVy
cm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQg
MjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbXSkgdGhyZXcgTm90U3VwcG9ydGVk
RXJyb3I6ICJmZWVkYmFjayBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAy
MCIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbXSwgWzFdKSB0aHJldyBOb3RTdXBwb3J0ZWRF
cnJvcjogImZlZWRmb3J3YXJkIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5k
IDIwIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMjApLCBuZXcg
RmxvYXQzMkFycmF5KDIwKSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGNy
ZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIxKSwgWzFdKSB0aHJldyBOb3RTdXBwb3J0
ZWRFcnJvcjogImZlZWRmb3J3YXJkIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEg
YW5kIDIwIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgy
MSkpIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGJhY2sgYXJyYXkgbXVzdCBoYXZlIGEg
bGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBu
ZXcgRmxvYXQzMkFycmF5KDIpKSB0aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogImZpcnN0IHZhbHVl
IG9mIGZlZWRiYWNrIGFycmF5IGNhbm5vdCBiZSB6ZXJvIi4gCitQQVNTICAgY3JlYXRlSUlSRmls
dGVyKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBbMV0pIHRocmV3IEludmFsaWRTdGF0ZUVycm9yOiAi
ZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBjb250YWluIGEgbm9uLXplcm8gdmFsdWUiLiAKK1BBU1Mg
ICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgTmFOLCBJbmZpbml0eV0pIHRocmV3IFR5cGVFcnJv
cjogIlRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNTICAgY3JlYXRlSUlS
RmlsdGVyKFsxLCBOYU4sIEluZmluaXR5XSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJUaGUgcHJv
dmlkZWQgdmFsdWUgaXMgbm9uLWZpbml0ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMSwg
J2FiYycsIFtdXSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJUaGUgcHJvdmlkZWQgdmFsdWUgaXMg
bm9uLWZpbml0ZSIuIAorUEFTUyA8IFtleGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlcl0gQWxsIGFz
c2VydGlvbnMgcGFzc2VkLiAodG90YWwgMTQgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4Y2VwdGlv
bnMtZ2V0RnJlcXVlbmN5RGF0YV0gIAotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVE
OiAyIG91dCBvZiA1IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShudWxsLCBuZXcgRmxvYXQz
MkFycmF5KDEpLCBuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJBcmd1bWVu
dCAxICgnZnJlcXVlbmN5SHonKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNl
IG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVl
bmN5UmVzcG9uc2UobmV3IEZsb2F0MzJBcnJheSgxKSwgbnVsbCwgbmV3IEZsb2F0MzJBcnJheSgx
KSkgdGhyZXcgVHlwZUVycm9yOiAiQXJndW1lbnQgMiAoJ21hZ1Jlc3BvbnNlJykgdG8gSUlSRmls
dGVyTm9kZS5nZXRGcmVxdWVuY3lSZXNwb25zZSBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIEZsb2F0
MzJBcnJheSIuIAorUEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXko
MSksIG5ldyBGbG9hdDMyQXJyYXkoMSksIG51bGwpIHRocmV3IFR5cGVFcnJvcjogIkFyZ3VtZW50
IDMgKCdwaGFzZVJlc3BvbnNlJykgdG8gSUlSRmlsdGVyTm9kZS5nZXRGcmVxdWVuY3lSZXNwb25z
ZSBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIEZsb2F0MzJBcnJheSIuIAorUEFTUyAgIGdldEZyZXF1
ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBuZXcgRmxvYXQzMkFycmF5KDEpLCBu
ZXcgRmxvYXQzMkFycmF5KDIwKSkgdGhyZXcgSW52YWxpZEFjY2Vzc0Vycm9yOiAiQXJyYXlzIG11
c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGgiLiAKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShu
ZXcgRmxvYXQzMkFycmF5KDEwKSwgbmV3IEZsb2F0MzJBcnJheSgyMCksIG5ldyBGbG9hdDMyQXJy
YXkoMSkpIHRocmV3IEludmFsaWRBY2Nlc3NFcnJvcjogIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNh
bWUgbGVuZ3RoIi4gCitQQVNTIDwgW2V4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YV0gQWxsIGFz
c2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKK1BBU1MgIyBBVURJVCBUQVNL
IFJVTk5FUiBGSU5JU0hFRDogNSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IGRlYmRiN2UyZWU0NThiOWMyMTU5ZGU2ODdmZWEwOWFmNzMyY2Mz
N2YuLmJlZmIzYmE1YTFiYjM5YjI4MTY1ODM1NjkyY2FhMmI5NzU4YTVjMTIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRl
ci1leHBlY3RlZC50eHQKQEAgLTEsNDEgKzEsNzAgQEAKIAogUEFTUyAjIEFVRElUIFRBU0sgUlVO
TkVSIFNUQVJURUQuIAotRkFJTCBFeGVjdXRpbmcgImNvZWZmaWNpZW50LW5vcm1hbGl6YXRpb24i
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogVHlwZSBlcnJvciIKLUZBSUwgRXhlY3V0aW5nICJvbmUtemVybyIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcihbMC41LCAwLjVdLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
JyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIm9uZS1wb2xlIiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyKFsxXSwgWzEsIGNdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5k
ZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICIwOiBsb3dwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2Vm
LmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCki
Ci1GQUlMIEV4ZWN1dGluZyAiMTogaGlnaHBhc3MiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0g
ICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNv
ZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwg
RXhlY3V0aW5nICIyOiBiYW5kcGFzcyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAg
ICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0p
JywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRp
bmcgIjM6IG5vdGNoIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29l
Zi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNDogYWxs
cGFzcyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVj
dCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4g
KEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNv
ZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjU6IGxvd3NoZWxmIiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwg
Y29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNjogaGlnaHNoZWxmIiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5i
Ml0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNzogcGVha2luZyIgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwg
Y29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmlu
ZWQpIgotRkFJTCBFeGVjdXRpbmcgIm11bHRpLWNoYW5uZWwiIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIoZmYsIGZiKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZB
SUwgRXhlY3V0aW5nICI0dGgtb3JkZXItaWlyIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmls
dGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGNhc2Nh
ZGUuZmYsIGNhc2NhZGUuZmIpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmlu
ZWQpIgorUEFTUyBFeGVjdXRpbmcgImNvZWZmaWNpZW50LW5vcm1hbGl6YXRpb24iIAorUEFTUyBF
eGVjdXRpbmcgIm9uZS16ZXJvIiAKK1BBU1MgRXhlY3V0aW5nICJvbmUtcG9sZSIgCitQQVNTIEV4
ZWN1dGluZyAiMDogbG93cGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiMTogaGlnaHBhc3MiIAorUEFT
UyBFeGVjdXRpbmcgIjI6IGJhbmRwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICIzOiBub3RjaCIgCitQ
QVNTIEV4ZWN1dGluZyAiNDogYWxscGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiNTogbG93c2hlbGYi
IAorUEFTUyBFeGVjdXRpbmcgIjY6IGhpZ2hzaGVsZiIgCitQQVNTIEV4ZWN1dGluZyAiNzogcGVh
a2luZyIgCitQQVNTIEV4ZWN1dGluZyAibXVsdGktY2hhbm5lbCIgCitQQVNTIEV4ZWN1dGluZyAi
NHRoLW9yZGVyLWlpciIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbY29lZmZpY2llbnQt
bm9ybWFsaXphdGlvbl0gIAotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlciB3aXRoIG5vcm1hbGl6ZWQg
Y29lZmZpY2llbnRzIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRl
SUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
KGZmLCBmYjEpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVy
IHdpdGggdW5ub3JtYWxpemVkIGNvZWZmaWNpZW50cyBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJy
b3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcihmZiwgZmIyKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicg
aXMgdW5kZWZpbmVkKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFT
UyAgIGNyZWF0ZUlJUkZpbHRlciB3aXRoIG5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIgd2l0aCB1bm5vcm1h
bGl6ZWQgY29lZmZpY2llbnRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBP
dXRwdXQgb2YgSUlSIGZpbHRlciB3aXRoIHVubm9ybWFsaXplZCBjb2VmZmljaWVudHMgZXF1YWxz
IFsxLC0wLjg5OTk5OTk3NjE1ODE0MjEsMC44MTAwMDAwMDIzODQxODU4LC0wLjcyODk5OTk3MjM0
MzQ0NDgsMC42NTYwOTk5NzUxMDkxMDAzLC0wLjU5MDQ4OTk4MzU1ODY1NDgsMC41MzE0NDA5NzMy
ODE4NjA0LC0wLjQ3ODI5NjkwNTc1NTk5NjcsMC40MzA0NjcyMTgxNjA2MjkzLC0wLjM4NzQyMDQ3
NTQ4Mjk0MDcsMC4zNDg2Nzg0Mzk4NTU1NzU1NiwtMC4zMTM4MTA1ODY5MjkzMjEzLDAuMjgyNDI5
NTQ2MTE3NzgyNiwtMC4yNTQxODY1NzA2NDQzNzg2NiwwLjIyODc2NzkzMTQ2MTMzNDIzLC0wLjIw
NTg5MTEzMjM1NDczNjMzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6Mi4xOTU4ZS0zOCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BB
U1MgPCBbY29lZmZpY2llbnQtbm9ybWFsaXphdGlvbl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgMyBhc3NlcnRpb25zKSAKIFBBU1MgPiBbb25lLXplcm9dICAKK1BBU1MgICBJSVIgMS16
ZXJvIG91dHB1dCBlcXVhbHMgWzAuNSwwLjUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLi4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbb25lLXplcm9dIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW29uZS1wb2xlXSAgCitQ
QVNTICAgSUlSIDEtcG9sZSBvdXRwdXQgZXF1YWxzIFsxLC0wLjksMC44MSwtMC43MjkwMDAwMDAw
MDAwMDAxLDAuNjU2MTAwMDAwMDAwMDAwMSwtMC41OTA0OTAwMDAwMDAwMDAyLDAuNTMxNDQxMDAw
MDAwMDAwMiwtMC40NzgyOTY5MDAwMDAwMDAxNCwwLjQzMDQ2NzIxMDAwMDAwMDE2LC0wLjM4NzQy
MDQ4OTAwMDAwMDE1LDAuMzQ4Njc4NDQwMTAwMDAwMTUsLTAuMzEzODEwNTk2MDkwMDAwMTcsMC4y
ODI0Mjk1MzY0ODEwMDAxNywtMC4yNTQxODY1ODI4MzI5MDAxMywwLjIyODc2NzkyNDU0OTYxMDEy
LC0wLjIwNTg5MTEzMjA5NDY0OTEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjoyLjc2NTdlLTgsInJlbGF0aXZlVGhyZXNob2xkIjowfS4g
CitQQVNTIDwgW29uZS1wb2xlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2Vy
dGlvbnMpIAogUEFTUyA+IFswOiBsb3dwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1
YWQgbG93cGFzcyBlcXVhbHMgWzAuMDAyMDY3NjIyNDk1ODE1MTU4LDAuMDEwMjYyMDM4NTU4NzIx
NTQyLDAuMDI2NDA4MzQ0NTA3MjE3NDA3LDAuMDUwMTQ2MTk2MDM3NTMwOSwwLjA4MTA2MjczNDEy
NzA0NDY4LDAuMTE4Njk3NTE2NjIwMTU5MTUsMC4xNjI1NDc2NDc5NTMwMzM0NSwwLjIxMjA3MzIw
NjkwMTU1MDMsMC4yNjY3MDI2ODE3Nzk4NjE0NSwwLjMyNTgzODc0NDY0MDM1MDM0LDAuMzg4ODYz
NzEyNTQ5MjA5NiwwLjQ1NTE0NTQxODY0Mzk1MTQsMC41MjQwNDI4NDQ3NzIzMzg5LDAuNTk0OTEx
NDU2MTA4MDkzMywwLjY2NzEwOTA3MjIwODQwNDUsMC43NDAwMDA1NDU5Nzg1NDYxLi4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVs
YXRpdmVUaHJlc2hvbGQiOjAuMDAwMDQ5ODM0fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIg
Zm9yIEJpcXVhZCBsb3dwYXNzIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS4yMjEuIAor
UEFTUyA8IFswOiBsb3dwYXNzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2Vy
dGlvbnMpIAogUEFTUyA+IFsxOiBoaWdocGFzc10gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlx
dWFkIGhpZ2hwYXNzIGVxdWFscyBbMC45ODM2NzEwMDk1NDA1NTc5LDAuOTQ3NDc4NjUyMDAwNDI3
MiwwLjkwNDQ4MjQyNDI1OTE4NTgsMC44NTUyMzIxMTk1NjAyNDE3LDAuODAwMzEzMjkzOTMzODY4
NCwwLjc0MDM0MTk2MTM4MzgxOTYsMC42NzU5NTgyMTYxOTAzMzgxLDAuNjA3ODIwMzMyMDUwMzIz
NSwwLjUzNjU5ODkyMDgyMjE0MzYsMC40NjI5NzEwMzE2NjU4MDIsMC4zODc2MTQyMjAzODA3ODMx
LDAuMzExMjAxMDA2MTc0MDg3NSwwLjIzNDM5MzUzNzA0NDUyNTE1LDAuMTU3ODM4MjcwMDY4MTY4
NjQsMC4wODIxNjExNjU3NzM4Njg1NiwwLjAwNzk2MzA1NjY3NjA4OTc2NC4uLl0gd2l0aCBhbiBl
bGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAyOSwi
cmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDN9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBm
b3IgQmlxdWFkIGhpZ2hwYXNzIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMDUuNDU5LiAK
K1BBU1MgPCBbMTogaGlnaHBhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gWzI6IGJhbmRwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBC
aXF1YWQgYmFuZHBhc3MgZXF1YWxzIFswLjAwNDU1NDI0NDY4OTY0MzM4MywwLjAxMzU4MzIxNTg4
NDg2NDMzLDAuMDIyNDE2NTAwMzc0Njc0Nzk3LDAuMDMwOTgyMTA1MDYxNDExODU4LDAuMDM5MjEw
OTMwNDY2NjUxOTE3LDAuMDQ3MDM3MzE0NjIzNTk0Mjg0LDAuMDU0Mzk5NTYxMTM2OTYwOTgsMC4w
NjEyNDA0MDg1Njk1NzQzNTYsMC4wNjc1MDc0NjgxNjM5NjcxMywwLjA3MzE1MzYyOTg5OTAyNDk2
LDAuMDc4MTM3MzgyODY0OTUyMDksMC4wODI0MjMxNTA1MzkzOTgyLDAuMDg1OTgxNDgwNzc3MjYz
NjQsMC4wODg3ODkyOTkxMzA0Mzk3NiwwLjA5MDgyOTk2ODQ1MjQ1MzYxLDAuMDkyMDkzNDUyODEx
MjQxMTUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjoyZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDA4N30uIAorUEFTUyAgIFNOUiBm
b3IgSUlSRklsdGVyIGZvciBCaXF1YWQgYmFuZHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFs
IHRvIDEwNC4wNi4gCitQQVNTIDwgWzI6IGJhbmRwYXNzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFszOiBub3RjaF0gIAorUEFTUyAgIElJUkZp
bHRlciBmb3IgQmlxdWFkIG5vdGNoIGVxdWFscyBbMC45OTU0NDU3MjgzMDIwMDIsMC45ODY0MTY3
NTcxMDY3ODEsMC45Nzc1ODM1Mjc1NjUwMDI0LDAuOTY5MDE3OTIyODc4MjY1NCwwLjk2MDc4OTA4
NDQzNDUwOTMsMC45NTI5NjI2OTY1NTIyNzY2LDAuOTQ1NjAwNDUwMDM4OTA5OSwwLjkzODc1OTU2
NTM1MzM5MzYsMC45MzI0OTI1NTQxODc3NzQ3LDAuOTI2ODQ2Mzg1MDAyMTM2MiwwLjkyMTg2MjYw
MjIzMzg4NjcsMC45MTc1NzY4NDk0NjA2MDE4LDAuOTE0MDE4NTExNzcyMTU1OCwwLjkxMTIxMDcx
NTc3MDcyMTQsMC45MDkxNzAwMzE1NDc1NDY0LDAuOTA3OTA2NTMyMjg3NTk3Ny4uLl0gd2l0aCBh
biBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0
aXZlVGhyZXNob2xkIjowLjAwMDA0MjJ9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3Ig
QmlxdWFkIG5vdGNoIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS4zMTIuIAorUEFTUyA8
IFszOiBub3RjaF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbNDogYWxscGFzc10gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIGFsbHBh
c3MgZXF1YWxzIFswLjk5MDg5MTUxNjIwODY0ODcsMC45NzI4MzM1NzM4MTgyMDY4LDAuOTU1MTY2
OTk1NTI1MzYwMSwwLjkzODAzNTc4NjE1MTg4NiwwLjkyMTU3ODE2ODg2OTAxODYsMC45MDU5MjUz
OTMxMDQ1NTMyLDAuODkxMjAwOTAwMDc3ODE5OCwwLjg3NzUxOTE5MDMxMTQzMTksMC44NjQ5ODUw
NDg3NzA5MDQ1LDAuODUzNjkyNzcwMDA0MjcyNSwwLjg0MzcyNTIwNDQ2Nzc3MzQsMC44MzUxNTM2
OTg5MjEyMDM2LDAuODI4MDM3MDIzNTQ0MzExNSwwLjgyMjQyMTQzMTU0MTQ0MjksMC44MTgzNDAw
NjMwOTUwOTI4LDAuODE1ODEzMTI0MTc5ODQwMS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAw
MDA0MzF9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGFsbHBhc3MgaXMg
Z3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDkxLjMxOS4gCitQQVNTIDwgWzQ6IGFsbHBhc3NdIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzU6IGxv
d3NoZWxmXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbG93c2hlbGYgZXF1YWxzIFsx
LjAzODQ4MDI4MTgyOTgzNCwxLjExNjU3MjI2MDg1NjYyODQsMS4xOTY2NDQwNjc3NjQyODIyLDEu
Mjc4MTUxNTEyMTQ1OTk2LDEuMzYwNTk0NjMwMjQxMzk0LDEuNDQzNTE1NDE5OTYwMDIyLDEuNTI2
NDk2MTcxOTUxMjk0LDEuNjA5MTU3NjgxNDY1MTQ5LDEuNjkxMTU3MTAyNTg0ODM4OSwxLjc3MjE4
NjYzNjkyNDc0MzcsMS44NTE5NzA5MTEwMjYwMDEsMS45MzAyNjYyNjExMDA3NjksMi4wMDY4NTc4
NzIwMDkyNzczLDIuMDgxNTU4NDY1OTU3NjQxNiwyLjE1NDIwNjk5MTE5NTY3ODcsMi4yMjQ2NjYx
MTg2MjE4MjYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMjk4fS4gCitQQVNTICAgU05S
IGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBsb3dzaGVsZiBpcyBncmVhdGVyIHRoYW4gb3IgZXF1
YWwgdG8gOTAuNjA5LiAKK1BBU1MgPCBbNTogbG93c2hlbGZdIEFsbCBhc3NlcnRpb25zIHBhc3Nl
ZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzY6IGhpZ2hzaGVsZl0gIAorUEFTUyAg
IElJUkZpbHRlciBmb3IgQmlxdWFkIGhpZ2hzaGVsZiBlcXVhbHMgWzMuMDQ1MTAxNDA0MTkwMDYz
NSwyLjgxNjExNDY2NDA3Nzc1OSwyLjU5ODU0MjQ1MTg1ODUyMDUsMi4zOTM1NTc3ODY5NDE1Mjgz
LDIuMjAxOTc1MzQ1NjExNTcyMywyLjAyNDI5Njk5ODk3NzY2MSwxLjg2MDc1Mzc3NDY0Mjk0NDMs
MS43MTEzNDY2MjYyODE3MzgzLDEuNTc1ODgyMzE1NjM1NjgxMiwxLjQ1NDAwNzAyOTUzMzM4NjIs
MS4zNDUyMzY4OTc0Njg1NjcsMS4yNDg5ODQ4MTM2OTAxODU1LDEuMTY0NTg1MzUxOTQzOTY5Nywx
LjA5MTMxNTc0NjMwNzM3MywxLjAyODQxNTY3OTkzMTY0MDYsMC45NzUxMDI5NjEwNjMzODUuLi5d
IHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjow
LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMTI0fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0
ZXIgZm9yIEJpcXVhZCBoaWdoc2hlbGYgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEwMy4x
NTkuIAorUEFTUyA8IFs2OiBoaWdoc2hlbGZdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFs
IDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzc6IHBlYWtpbmddICAKK1BBU1MgICBJSVJGaWx0ZXIg
Zm9yIEJpcXVhZCBwZWFraW5nIGVxdWFscyBbMS4wMDU1NDg3MTU1OTE0MzA3LDEuMDE2NTcxMjgz
MzQwNDU0LDEuMDI3Mzk4NTg2MjczMTkzNCwxLjAzNzk0MTA5ODIxMzE5NTgsMS4wNDgxMTE5MTU1
ODgzNzksMS4wNTc4Mjc5NDk1MjM5MjU4LDEuMDY3MDEwMTY0MjYwODY0MywxLjA3NTU4NDQxMTYy
MTA5MzgsMS4wODM0ODIxNDYyNjMxMjI2LDEuMDkwNjQwNzgzMzA5OTM2NSwxLjA5NzAwNDA1NTk3
Njg2NzcsMS4xMDI1MjI5NjkyNDU5MTA2LDEuMTA3MTU1NDQyMjM3ODU0LDEuMTEwODY3NTAwMzA1
MTc1OCwxLjExMzYzMjY3ODk4NTU5NTcsMS4xMTU0MzI3MzkyNTc4MTI1Li4uXSB3aXRoIGFuIGVs
ZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVU
aHJlc2hvbGQiOjAuMDAwMDUwNX0uIAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1
YWQgcGVha2luZyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gOTEuNTA0LiAKK1BBU1MgPCBb
NzogcGVha2luZ10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbbXVsdGktY2hhbm5lbF0gIAorUEFTUyAgIE1heCBkaWZmZXJlbmNlIGJldHdlZW4g
SUlSIGFuZCBCaXF1YWQgb24gY2hhbm5lbCAwIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAwLjAw
MDAzNzY3MS4gCitQQVNTICAgTWF4IGRpZmZlcmVuY2UgYmV0d2VlbiBJSVIgYW5kIEJpcXVhZCBv
biBjaGFubmVsIDEgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDAuMDAwMDMwMDcxLiAKK1BBU1Mg
ICBNYXggZGlmZmVyZW5jZSBiZXR3ZWVuIElJUiBhbmQgQmlxdWFkIG9uIGNoYW5uZWwgMiBpcyBs
ZXNzIHRoYW4gb3IgZXF1YWwgdG8gMC4wMDAwMjYyNDEuIAorUEFTUyA8IFttdWx0aS1jaGFubmVs
XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFs0
dGgtb3JkZXItaWlyXSAgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0
IG9mIDEzIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK1BBU1MgICA0LXRoIG9yZGVyIElJUkZpbHRlciAoYmlxdWFkIHJlZikgZXF1YWxzIFsw
LjAwMDAwNDE4MTcxOTMwNTA1MTk1NiwwLjAwMDAzMjk2NTc5NTk4MDk5OTI0NiwwLjAwMDEyOTM5
NzY4MjAzMDY4NTI1LDAuMDAwMzQ3NzM2NTgyNjI1NjU3MywwLjAwMDczODcyNzI3ODA3NjExMjMs
MC4wMDEzNDQ2ODk3NTAxMTI1OTMyLDAuMDAyMTk5Mzc2MjM0Nzg0NzIyMywwLjAwMzMyNzk1NTk1
NzUwMjEyNjcsMC4wMDQ3NDcxMTY5MzgyMzMzNzU1LDAuMDA2NDY1MjgxODI1NTEyNjQ4LDAuMDA4
NDgyOTIyNzk5ODg1MjczLDAuMDEwNzkyOTcwNjU3MzQ4NjMzLDAuMDEzMzgxMzAzMjg4MDQyNTQ1
LDAuMDE2MjI3MzEyMzg2MDM1OTIsMC4wMTkzMDQ1MTk1MTkyMDk4NjIsMC4wMjI1ODEyNTEzMzgx
MjQyNzUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjoxLjU5ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMjExfS4gCitQQVNTICAg
U05SIG9mIDQtdGggb3JkZXIgSUlSRmlsdGVyIChiaXF1YWQgcmVmKSBpcyBncmVhdGVyIHRoYW4g
b3IgZXF1YWwgdG8gMTA4Ljk0Ny4gCitQQVNTIDwgWzR0aC1vcmRlci1paXJdIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQgVEFTSyBSVU5O
RVIgRklOSVNIRUQ6IDEzIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVu
Y3lSZXNwb25zZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50
ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50eHQKaW5kZXgg
YzFjMTZiNDU2Yjc0M2VjNjdkYmQ2YWQwZGNiMjQzZDc3ZTRhZTJjYS4uODNjNGQ4NGI1NTkzNWVh
MjZjODM5MTE0YmVjOWNmMTBhNjNlNjVlMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJm
aWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVzcG9uc2UtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmls
dGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwyMiBAQAog
CiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCi1GQUlMIEV4ZWN1dGluZyAiMS1w
b2xlIElJUiIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCAtMC45XSknLCAnY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiY29tcGFy
ZSBJSVIgYW5kIGJpcXVhZCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgIFtj
b2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICJnZXRG
cmVxdWVuY3lSZXNwb25zZSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZp
bHRlck5vZGUiCitQQVNTIEV4ZWN1dGluZyAiMS1wb2xlIElJUiIgCitQQVNTIEV4ZWN1dGluZyAi
Y29tcGFyZSBJSVIgYW5kIGJpcXVhZCIgCitQQVNTIEV4ZWN1dGluZyAiZ2V0RnJlcXVlbmN5UmVz
cG9uc2UiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gWzEtcG9sZSBJSVJdICAKK1BBU1Mg
ICAxLXBvbGUgSUlSIE1hZ25pdHVkZSBSZXNwb25zZSBlcXVhbHMgWzEwLDkuOTk1NTYxNTk5NzMx
NDQ1LDkuOTgyMjgxNjg0ODc1NDg4LDkuOTYwMjY2MTEzMjgxMjUsOS45Mjk2ODg0NTM2NzQzMTYs
OS44OTA3ODUyMTcyODUxNTYsOS44NDM4NTIwNDMxNTE4NTUsOS43ODkyMzg5Mjk3NDg1MzUsOS43
MjczNDE2NTE5MTY1MDQsOS42NTg1OTIyMjQxMjEwOTQsOS41ODM0NTUwODU3NTQzOTUsOS41MDI0
MTg1MTgwNjY0MDYsOS40MTU5ODMyMDAwNzMyNDIsOS4zMjQ2NTkzNDc1MzQxOCw5LjIyODk1ODEy
OTg4MjgxMiw5LjEyOTM4NDA0MDgzMjUyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFu
Y2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDI4NjExLCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uIAorUEFTUyAgIDEtcG9sZSBJSVIgUGhhc2UgUmVzcG9uc2UgZXF1YWxzIFswLC0wLjAy
ODI2NTUwMjMwMzgzODczLC0wLjA1NjQ3ODEyNDExMTg5MDc5LC0wLjA4NDU4NTU0NzQ0NzIwNDU5
LC0wLjExMjUzNjU1NzAxODc1Njg3LC0wLjE0MDI4MTU3MjkzNzk2NTQsLTAuMTY3NzczMDk3NzUz
NTI0NzgsLTAuMTk0OTY2MTY3MjExNTMyNiwtMC4yMjE4MTg2ODU1MzE2MTYyLC0wLjI0ODI5MTc3
NTU4NDIyMDksLTAuMjc0MzQ5OTU3NzA0NTQ0MDcsLTAuMjk5OTYxMjM5MDk5NTAyNTYsLTAuMzI1
MDk3NDQxNjczMjc4OCwtMC4zNDk3MzM4ODkxMDI5MzU4LC0wLjM3Mzg0OTcxOTc2MjgwMjEsLTAu
Mzk3NDI3NDY5NDkxOTU4Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsi
YWJzb2x1dGVUaHJlc2hvbGQiOjEuNzg4MmUtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BB
U1MgPCBbMS1wb2xlIElJUl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRp
b25zKSAKIFBBU1MgPiBbY29tcGFyZSBJSVIgYW5kIGJpcXVhZF0gIAorUEFTUyAgIElJUiBNYWdu
aXR1ZGUgUmVzcG9uc2UgZXF1YWxzIFsxLDEuMDAyODM0NTU4NDg2OTM4NSwxLjAxMTM0Nzg4OTkw
MDIwNzUsMS4wMjU1NTQ4OTU0MDEwMDEsMS4wNDU0MjgyNzYwNjIwMTE3LDEuMDcwODA1MzExMjAz
MDAzLDEuMTAxMjI1NDk1MzM4NDQsMS4xMzU2NzE5NzMyMjg0NTQ2LDEuMTcyMTk1MDc2OTQyNDQz
OCwxLjIwNzQ1NDMyMzc2ODYxNTcsMS4yMzYzNTYzNzc2MDE2MjM1LDEuMjUyMjA5NzgyNjAwNDAy
OCwxLjI0Nzk2MjIzNjQwNDQxOSwxLjIxODY0NDYxODk4ODAzNywxLjE2MzkwNTg1ODk5MzUzMDMs
MS4wODg2NjQ4ODkzMzU2MzIzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMjc0MTksInJlbGF0aXZlVGhyZXNob2xkIjowfS4g
CitQQVNTICAgSUlSIFBoYXNlIFJlc3BvbnNlIGVxdWFscyBbMCwtMC4wNjEzMTUzMjQxNTc0NzY0
MjUsLTAuMTIzOTExMzczMzE3MjQxNjcsLTAuMTg5MTIyMjQ0NzE1NjkwNiwtMC4yNTgzODY5Mzk3
NjQwMjI4LC0wLjMzMzI5Mzc5NTU4NTYzMjMsLTAuNDE1NjA3MDY0OTYyMzg3MSwtMC41MDcyNTAy
NDkzODU4MzM3LC0wLjYxMDIwMjU1MDg4ODA2MTUsLTAuNzI2MjQwMDM4ODcxNzY1MSwtMC44NTY0
NDkxODY4MDE5MTA0LC0xLjAwMDUwNjE2MjY0MzQzMjYsLTEuMTU1OTI3MzAwNDUzMTg2LC0xLjMx
Nzc4MDk3MTUyNzA5OTYsLTEuNDc5Mzg5NTQ4MzAxNjk2OCwtMS42MzM5NTk3NzAyMDI2MzY3Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MC4wMDAwMjc2NTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTIDwgW2NvbXBhcmUgSUlS
IGFuZCBiaXF1YWRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykg
CiBQQVNTID4gW2dldEZyZXF1ZW5jeVJlc3BvbnNlXSBUZXN0IG91dC1vZi1ib3VuZHMgZnJlcXVl
bmN5IHZhbHVlcyAKK1BBU1MgICBNYWduaXR1ZGUgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IC0xIGlz
IE5hTi4gCitQQVNTICAgTWFnbml0dWRlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAyNDAwMSBpcyBO
YU4uIAorUEFTUyAgIFBoYXNlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAtMSBpcyBOYU4uIAorUEFT
UyAgIFBoYXNlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAyNDAwMSBpcyBOYU4uIAorUEFTUyA8IFtn
ZXRGcmVxdWVuY3lSZXNwb25zZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNCBhc3Nl
cnRpb25zKSAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMyB0YXNrcyByYW4g
c3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2Rl
LWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0
CmluZGV4IGJmNmRmY2Y4NmFmY2ZhNTFmZWFhYjA1YWYwYmYwMGUxNjlhMTg4MDIuLjEyZTcxNzAy
MTAyZDdjYzUzYTFkNjI0ZDIxY2Y1ZGE2NmE4NDE2ZGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmls
dGVybm9kZS1leHBlY3RlZC50eHQKQEAgLTEsMjIgKzEsMTAgQEAKIAogUEFTUyBJSVJGaWx0ZXJO
b2RlIGNvZWZmaWNpZW50cyBhcmUgY2hlY2tlZCBwcm9wZXJseSAKLUZBSUwgZmVlZGZvcndhcmQg
Y29lZmZpY2llbnRzIGNhbiBub3QgYmUgZW1wdHkgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9u
ICJmdW5jdGlvbiAoKSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQot
ICAgICAgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMu
Y3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlv
biBOb3RTdXBwb3J0ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5l
ZCwgZXhwZWN0ZWQgOQotRkFJTCBmZWVkYmFjayBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0
eSBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMu
Y3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVF
cnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0
ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0
eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIG1vcmUgdGhh
biAyMCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSB1c2VkIGFzc2VydF90aHJv
d3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0
ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVh
dGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFy
ZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBu
b3QgYSBET01FeGNlcHRpb24gTm90U3VwcG9ydGVkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBl
cXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDkKLUZBSUwgbW9yZSB0aGFuIDIwIGZlZWRiYWNr
IGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIHVzZWQgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9u
ICJmdW5jdGlvbiAoKSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQot
ICAgICAgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMu
Y3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlv
biBOb3RTdXBwb3J0ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5l
ZCwgZXhwZWN0ZWQgOQotRkFJTCBhdCBsZWFzdCBvbmUgZmVlZGZvcndhcmQgY29lZmZpY2llbnQg
bXVzdCBiZSBub24temVybyBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgp
IHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJl
dyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0
ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIEludmFsaWRTdGF0
ZUVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAx
MQotRkFJTCB0aGUgZmlyc3QgZmVlZGJhY2sgY29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyBh
c3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3Jl
YXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJv
cjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJ
UkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCki
IHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yOiBwcm9wZXJ0eSAi
Y29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAxMQotRkFJTCBJSVJGaWx0ZXJO
b2RlIGdldEZyZXF1ZW5jeVJlc3BvbnNlIGhhbmRsZXMgaW52YWxpZCBmcmVxdWVuY2llcyBwcm9w
ZXJseSBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRl
SUlSRmlsdGVyKFswLjUsIDAuNV0sIFsxLjBdKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVu
ZGVmaW5lZCkKK1BBU1MgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgZW1wdHkg
CitQQVNTIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIGVtcHR5IAorUEFTUyBtb3Jl
IHRoYW4gMjAgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgdXNlZCAKK1BBU1Mg
bW9yZSB0aGFuIDIwIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIHVzZWQgCitQQVNT
IGF0IGxlYXN0IG9uZSBmZWVkZm9yd2FyZCBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIAor
UEFTUyB0aGUgZmlyc3QgZmVlZGJhY2sgY29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyAKK1BB
U1MgSUlSRmlsdGVyTm9kZSBnZXRGcmVxdWVuY3lSZXNwb25zZSBoYW5kbGVzIGludmFsaWQgZnJl
cXVlbmNpZXMgcHJvcGVybHkgCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407264</attachid>
            <date>2020-08-25 20:00:49 -0700</date>
            <delta_ts>2020-08-25 20:01:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200825200048.patch</filename>
            <type>text/plain</type>
            <size>222236</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uZmY2Mzg2NzNiZjA1YjFjNzdkYmU1ZTk5MjAzNTll
ZjUwZGU2ZWZkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5NiBAQAorMjAyMC0wOC0yNSAgQ2hy
aXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIyNjU5
MDgpOiBDcmFzaCB1bmRlciBCbG9iOjphcnJheUJ1ZmZlcigpIC8gQmxvYjo6dGV4dCgpIGluIHN0
cmVzcyBHQworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjE1ODMyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82Nzc0MTY3Nz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAgcjI2NTkwOCBhZGRlZCBzdXBwb3J0IGZv
ciBCbG9iOjphcnJheUJ1ZmZlcigpIC8gQmxvYjo6dGV4dCgpIHdoaWNoIGFyZSBhc3luY2hyb25v
dXMgb3BlcmF0aW9ucworICAgICAgICByZXR1cm5pbmcgcHJvbWlzZXMuIFRoZSBjcmFzaCBpcyBk
dWUgdG8gdGhlIGZhY3QgdGhhdCB0aGUgQmxvYidzIEpTIHdyYXBwZXIgbWF5IGdldCBnYXJiYWdl
CisgICAgICAgIGNvbGxlY3RlZCBiZWZvcmUgdGhlIHByb21pc2UgaXMgc2V0dGxlZC4KKworICAg
ICAgICBUbyBhZGRyZXNzIHRoZSBpc3N1ZSwgdGhpcyBwYXRjaCBtYWtlcyBCbG9iIGFuIEFjdGl2
ZURPTU9iamVjdCBhbmQgY3JlYXRlcyBhbgorICAgICAgICBBY3RpdmVET01PYmplY3Q6OnBlbmRp
bmdBY3Rpdml0eSB3aGVuZXZlciB0aGVyZSBpcyBhIHBlbmRpbmcgcHJvbWlzZSBzbyB0aGF0IHRo
ZSBKUyB3cmFwcGVyCisgICAgICAgIGRvZXMgbm90IGdldCBnYXJiYWdlIGNvbGxlY3RlZCB0b28g
ZWFybHkuCisKKyAgICAgICAgVGVzdDogZmFzdC9maWxlcy9ibG9iLXRleHQtZ2MuaHRtbAorCisg
ICAgICAgICogTW9kdWxlcy9hc3luYy1jbGlwYm9hcmQvQ2xpcGJvYXJkLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNsaXBib2FyZDo6Z2V0VHlwZSk6CisgICAgICAgICogTW9kdWxlcy9hc3luYy1j
bGlwYm9hcmQvQ2xpcGJvYXJkSW1hZ2VSZWFkZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNsaXBi
b2FyZEltYWdlUmVhZGVyOjpDbGlwYm9hcmRJbWFnZVJlYWRlcik6CisgICAgICAgICogTW9kdWxl
cy9hc3luYy1jbGlwYm9hcmQvQ2xpcGJvYXJkSXRlbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
bGlwYm9hcmRJdGVtOjpibG9iRnJvbVN0cmluZyk6CisgICAgICAgICogTW9kdWxlcy9hc3luYy1j
bGlwYm9hcmQvQ2xpcGJvYXJkSXRlbS5oOgorICAgICAgICAqIE1vZHVsZXMvYXN5bmMtY2xpcGJv
YXJkL0NsaXBib2FyZEl0ZW1CaW5kaW5nc0RhdGFTb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q2xpcGJvYXJkSXRlbUJpbmRpbmdzRGF0YVNvdXJjZTo6Z2V0VHlwZSk6CisgICAgICAgICog
TW9kdWxlcy9hc3luYy1jbGlwYm9hcmQvaW9zL0NsaXBib2FyZEltYWdlUmVhZGVySU9TLm1tOgor
ICAgICAgICAoV2ViQ29yZTo6Q2xpcGJvYXJkSW1hZ2VSZWFkZXI6OnJlYWRCdWZmZXIpOgorICAg
ICAgICAqIE1vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL21hYy9DbGlwYm9hcmRJbWFnZVJlYWRlck1h
Yy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkNsaXBib2FyZEltYWdlUmVhZGVyOjpyZWFkQnVmZmVy
KToKKyAgICAgICAgKiBNb2R1bGVzL2VudHJpZXNhcGkvRE9NRmlsZVN5c3RlbS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpET01GaWxlU3lzdGVtOjpnZXRGaWxlKToKKyAgICAgICAgKiBNb2R1bGVz
L2VudHJpZXNhcGkvRE9NRmlsZVN5c3RlbS5oOgorICAgICAgICAqIE1vZHVsZXMvZW50cmllc2Fw
aS9GaWxlU3lzdGVtRmlsZUVudHJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVTeXN0ZW1G
aWxlRW50cnk6OmZpbGUpOgorICAgICAgICAqIE1vZHVsZXMvZW50cmllc2FwaS9GaWxlU3lzdGVt
RmlsZUVudHJ5Lmg6CisgICAgICAgICogTW9kdWxlcy9lbnRyaWVzYXBpL0ZpbGVTeXN0ZW1GaWxl
RW50cnkuaWRsOgorICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkZldGNoQm9keTo6ZnJvbUZvcm1EYXRhKToKKyAgICAgICAgKiBNb2R1bGVz
L2ZldGNoL0ZldGNoQm9keS5oOgorICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5Q29u
c3VtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6YmxvYkZyb21EYXRhKToKKyAgICAgICAgKFdl
YkNvcmU6OnBhY2thZ2VGb3JtRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpyZXNvbHZlV2l0aFR5
cGVBbmREYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoQm9keUNvbnN1bWVyOjpyZXNvbHZl
KToKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoQm9keUNvbnN1bWVyOjp0YWtlQXNCbG9iKToKKyAg
ICAgICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoQm9keUNvbnN1bWVyLmg6CisgICAgICAgICogTW9k
dWxlcy9mZXRjaC9GZXRjaEJvZHlPd25lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaEJv
ZHlPd25lcjo6YmxvYik6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXJlY29yZGVyL01lZGlhUmVj
b3JkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRlcjo6c3RvcFJlY29yZGlu
Zyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVJlY29yZGVyOjpyZXF1ZXN0RGF0YSk6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENEYXRhQ2hhbm5lbC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENEYXRhQ2hhbm5lbDo6ZGlkUmVjZWl2ZVJhd0RhdGEpOgorICAgICAgICAqIE1v
ZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViU29j
a2V0OjpkaWRSZWNlaXZlQmluYXJ5RGF0YSk6CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRz
L1dvcmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OldvcmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsOjpCcmlkZ2U6OnNlbmQpOgorICAgICAg
ICAqIGJpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDbG9uZURlc2VyaWFsaXplcjo6cmVhZEZpbGUpOgorICAgICAgICAoV2ViQ29yZTo6Q2xv
bmVEZXNlcmlhbGl6ZXI6OnJlYWRUZXJtaW5hbCk6CisgICAgICAgICogZG9tL0RhdGFUcmFuc2Zl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEYXRhVHJhbnNmZXI6OnVwZGF0ZUZpbGVMaXN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkRhdGFUcmFuc2Zlcjo6aXRlbXMpOgorICAgICAgICAoV2ViQ29y
ZTo6RGF0YVRyYW5zZmVyOjpmaWxlc0Zyb21QYXN0ZWJvYXJkQW5kSXRlbUxpc3QgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6RGF0YVRyYW5zZmVyOjpmaWxlcyBjb25zdCk6CisgICAgICAgICog
ZG9tL0RhdGFUcmFuc2Zlci5oOgorICAgICAgICAqIGRvbS9EYXRhVHJhbnNmZXIuaWRsOgorICAg
ICAgICAqIGRvbS9EYXRhVHJhbnNmZXJJdGVtTGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
YXRhVHJhbnNmZXJJdGVtTGlzdDo6RGF0YVRyYW5zZmVySXRlbUxpc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6RGF0YVRyYW5zZmVySXRlbUxpc3Q6OnJlbW92ZSk6CisgICAgICAgIChXZWJDb3JlOjpE
YXRhVHJhbnNmZXJJdGVtTGlzdDo6Y2xlYXIpOgorICAgICAgICAoV2ViQ29yZTo6RGF0YVRyYW5z
ZmVySXRlbUxpc3Q6OmVuc3VyZUl0ZW1zIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGFU
cmFuc2Zlckl0ZW1MaXN0Ojpkb2N1bWVudCBjb25zdCk6CisgICAgICAgICogZG9tL0RhdGFUcmFu
c2Zlckl0ZW1MaXN0Lmg6CisgICAgICAgICogZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmlkbDoK
KyAgICAgICAgKiBlZGl0aW5nL1dlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXI6OnJlYWRGaWxlbmFtZSk6
CisgICAgICAgIChXZWJDb3JlOjpXZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXI6OnJlYWRCdWZm
ZXIpOgorICAgICAgICAqIGVkaXRpbmcvV2ViQ29yZVBhc3RlYm9hcmRGaWxlUmVhZGVyLmg6Cisg
ICAgICAgICogZWRpdGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW06CisgICAgICAg
IChXZWJDb3JlOjpjcmVhdGVGcmFnbWVudEZvckltYWdlQXR0YWNobWVudCk6CisgICAgICAgIChX
ZWJDb3JlOjpyZXBsYWNlUmljaENvbnRlbnRXaXRoQXR0YWNobWVudHMpOgorICAgICAgICAoV2Vi
Q29yZTo6Y3JlYXRlRnJhZ21lbnRBbmRBZGRSZXNvdXJjZXMpOgorICAgICAgICAoV2ViQ29yZTo6
c2FuaXRpemVNYXJrdXBXaXRoQXJjaGl2ZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb250ZW50
UmVhZGVyOjpyZWFkSW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6YXR0YWNobWVudEZvckZpbGVQ
YXRoKToKKyAgICAgICAgKFdlYkNvcmU6OmF0dGFjaG1lbnRGb3JEYXRhKToKKyAgICAgICAgKiBl
ZGl0aW5nL21hcmt1cC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpyZXN0b3JlQXR0YWNobWVudEVs
ZW1lbnRzSW5GcmFnbWVudCk6CisgICAgICAgICogZmlsZWFwaS9CbG9iLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkJsb2I6OkJsb2IpOgorICAgICAgICAoV2ViQ29yZTo6QmxvYjo6bG9hZEJsb2Ip
OgorICAgICAgICAoV2ViQ29yZTo6QmxvYjo6YWN0aXZlRE9NT2JqZWN0TmFtZSBjb25zdCk6Cisg
ICAgICAgICogZmlsZWFwaS9CbG9iLmg6CisgICAgICAgIChXZWJDb3JlOjpCbG9iOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6QmxvYjo6ZGVzZXJpYWxpemUpOgorICAgICAgICAoV2ViQ29y
ZTo6QmxvYjo6c2xpY2UgY29uc3QpOgorICAgICAgICAqIGZpbGVhcGkvQmxvYi5pZGw6CisgICAg
ICAgICogZmlsZWFwaS9GaWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGU6OmNyZWF0ZVdp
dGhSZWxhdGl2ZVBhdGgpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZTo6Y3JlYXRlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkZpbGU6OkZpbGUpOgorICAgICAgICAoV2ViQ29yZTo6RmlsZTo6YWN0aXZl
RE9NT2JqZWN0TmFtZSBjb25zdCk6CisgICAgICAgICogZmlsZWFwaS9GaWxlLmg6CisgICAgICAg
ICogZmlsZWFwaS9GaWxlLmlkbDoKKyAgICAgICAgKiBodG1sL0RPTUZvcm1EYXRhLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRPTUZvcm1EYXRhOjpjcmVhdGVGaWxlRW50cnkpOgorICAgICAgICAq
IGh0bWwvRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVJbmZvcm1hdGlvbjo6aXNvbGF0ZWRDb3B5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OmFw
cGVuZERpcmVjdG9yeUZpbGVzKToKKyAgICAgICAgKFdlYkNvcmU6OmdhdGhlckZpbGVJbmZvcm1h
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjp0b0ZpbGVMaXN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkRpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvcjo6c3RhcnQpOgorICAgICAgICAqIGh0bWwvRGlyZWN0
b3J5RmlsZUxpc3RDcmVhdG9yLmg6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmFwcGVuZEZvcm1EYXRhIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmZpbGVzQ2hvc2VuKToKKyAgICAgICAg
KiBodG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
QXR0YWNobWVudEVsZW1lbnQ6OnVwZGF0ZUVuY2xvc2luZ0ltYWdlV2l0aERhdGEpOgorICAgICAg
ICAqIGh0bWwvSFRNTENhbnZhc0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTENh
bnZhc0VsZW1lbnQ6OnRvQmxvYik6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpjcmVhdGVGaWxlKToKKyAgICAgICAgKiB0ZXN0
aW5nL1NlcnZpY2VXb3JrZXJJbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Vydmlj
ZVdvcmtlckludGVybmFsczo6Y3JlYXRlT3BhcXVlV2l0aEJsb2JCb2R5UmVzcG9uc2UpOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJGZXRjaC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXJ2aWNlV29ya2VyRmV0Y2g6OmRpc3BhdGNoRmV0Y2hFdmVudCk6
CisgICAgICAgICogeG1sL1hNTEh0dHBSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlhN
TEh0dHBSZXF1ZXN0OjpjcmVhdGVSZXNwb25zZUJsb2IpOgorCisyMDIwLTA4LTI1ICBDaHJpcyBE
dW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRlcmZh
Y2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgorICAg
ICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQorCisg
ICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJpbmcp
OgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNzYXJ5
KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpC
YXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BLZXJu
ZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQS2Vy
bmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9u
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFibGUp
OgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlByb2Nl
c3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9h
dWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRlUG9s
eW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZp
bHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1ZW5j
eVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgorICAg
ICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5pdGlh
bGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRpYWxp
emF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IGJmOWY5NGNlOTYyMDYzMzNmYjVjZDE3OWFjZjg3NzI2OTFhMTk1
YTYuLjc1NWY4ZTNhM2UzZGZhYThmNGExOGEzZjUwZGYzZTMxYjViYjZmODAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjAtMDgtMjUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMjY1OTA4KTogQ3Jhc2ggdW5kZXIgQmxvYjo6YXJy
YXlCdWZmZXIoKSAvIEJsb2I6OnRleHQoKSBpbiBzdHJlc3MgR0MKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTgzMgorICAgICAgICA8cmRhcjovL3By
b2JsZW0vNjc3NDE2Nzc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUnlvc3VrZSBOaXdhLgorCisg
ICAgICAgICogV2ViUHJvY2Vzcy9BdXRvbWF0aW9uL1dlYkF1dG9tYXRpb25TZXNzaW9uUHJveHku
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJBdXRvbWF0aW9uU2Vzc2lvblByb3h5OjpzZXRGaWxl
c0ZvcklucHV0RmlsZVVwbG9hZCk6CisKIDIwMjAtMDgtMjUgIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtTT1VQXSBJbml0aWFsaXplIEhTVFMg
c3RvcmFnZSBkaXJlY3RvcnkgZnJvbSBuZXR3b3JrIHNlc3Npb24gaW5pdGlhbGl6YXRpb24KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKaW5kZXggYmQ0ZjhiZTc2ZDUzMWQwMzI2M2MxNjAyNjQyNjM4ZThhZjEz
M2E1OS4uMjlmMTE3ZmM5ZWM5ZTlhZTA5OTZjYmUyYzI3MDZjNDgzY2NlZGQzNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01h
a2VMaXN0cy50eHQKQEAgLTQ4OCw2ICs0ODgsOCBAQCBzZXQoV2ViQ29yZV9OT05fU1ZHX0lETF9G
SUxFUwogICAgIE1vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yT3B0aW9ucy5pZGwK
ICAgICBNb2R1bGVzL3dlYmF1ZGlvL0dhaW5Ob2RlLmlkbAogICAgIE1vZHVsZXMvd2ViYXVkaW8v
R2Fpbk9wdGlvbnMuaWRsCisgICAgTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmlkbAor
ICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5pZGwKICAgICBNb2R1bGVzL3dl
YmF1ZGlvL01lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICAgICBNb2R1bGVzL3dlYmF1
ZGlvL01lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5pZGwKICAgICBNb2R1bGVzL3dlYmF1
ZGlvL01lZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuaWRsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAppbmRleCAyNTQyZWYxYzVjYWE4ZDcw
ZjgxMDM3NGIyYjBjMmE5YjdhMDA5NTgyLi4yNWRjNzBjMTAwZmZmYWM0ZDJmODI2Mjk1ZDI1YzU2
OGI1MDhjNTllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1pbnB1
dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0Lnhj
ZmlsZWxpc3QKQEAgLTMzOSw2ICszMzksOCBAQCAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1
ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dl
YmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1
bGVzL3dlYmF1ZGlvL0dhaW5Ob2RlLmlkbAogJChQUk9KRUNUX0RJUikvTW9kdWxlcy93ZWJhdWRp
by9HYWluT3B0aW9ucy5pZGwKKyQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVkaW8vSUlSRmls
dGVyTm9kZS5pZGwKKyQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0
aW9ucy5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVk
aW9Tb3VyY2VOb2RlLmlkbAogJChQUk9KRUNUX0RJUikvTW9kdWxlcy93ZWJhdWRpby9NZWRpYUVs
ZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1
ZGlvL01lZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuaWRsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDI3OTFlNGQxOTljMzUy
YzE4ZjQ1MjQ3MTAwMDE5YTgwYWM1MTcyYTguLmE1NjAwMzQzM2Q5NTU2MTYxMzA4MmE0OWIyMzFi
ZjBjZjNlOTI2MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91
dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1
dC54Y2ZpbGVsaXN0CkBAIC05ODIsNiArOTgyLDEwIEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJhbnNhY3Rpb25Nb2RlLmNwcAogJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJUcmFuc2FjdGlvbk1vZGUu
aAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJz
aW9uQ2hhbmdlRXZlbnQuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0lEQlZlcnNpb25DaGFuZ2VFdmVudC5oCiskKEJVSUxUX1BST0RVQ1RTX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lJUkZpbHRlck5vZGUuY3BwCiskKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lJUkZpbHRlck5vZGUuaAorJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJPcHRpb25z
LmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJG
aWx0ZXJPcHRpb25zLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSWRsZURlYWRsaW5lLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNJZGxlRGVhZGxpbmUuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNJZGxlUmVxdWVzdENhbGxiYWNrLmNwcApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLm1ha2UKaW5kZXggYmExMDc5MjUzNGJiM2YyZDU3ZTYyMjExZDYwMzE2NjM3ZjZl
NjkyZC4uZTJmYjhhOTI1NTg0ZjMxMDJmZGFjYjQ0N2QyZTc0M2YzZmQ1NDM5ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC00MjAsNiArNDIwLDggQEAgSlNfQklORElOR19JRExT
ID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JP
cHRpb25zLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0dhaW5Ob2RlLmlk
bCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbCBcCisg
ICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsIFwKKyAgICAk
KFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5pZGwgXAogICAgICQo
V2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRs
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3Vy
Y2VPcHRpb25zLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhU3Ry
ZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuaWRsIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2FzeW5jLWNsaXBib2FyZC9DbGlwYm9hcmQuY3BwCmluZGV4IDk2ZmQwOTExMDE3NGFm
MmVlZTQ5MzVhNTdjMDdmZDFlMGVmZGQwMTcuLjY0ZjFjNDNlMjM2NGFkMWQ2NDJmYjhlODljMmEy
NGI0NDEzMzhkZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXN5bmMtY2xp
cGJvYXJkL0NsaXBib2FyZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hc3luYy1j
bGlwYm9hcmQvQ2xpcGJvYXJkLmNwcApAQCAtMjE3LDcgKzIxNyw3IEBAIHZvaWQgQ2xpcGJvYXJk
OjpnZXRUeXBlKENsaXBib2FyZEl0ZW0mIGl0ZW0sIGNvbnN0IFN0cmluZyYgdHlwZSwgUmVmPERl
ZmVycmVkUHJvCiAgICAgfQogCiAgICAgaWYgKHR5cGUgPT0gImltYWdlL3BuZyJfcykgewotICAg
ICAgICBDbGlwYm9hcmRJbWFnZVJlYWRlciBpbWFnZVJlYWRlciB7IHR5cGUgfTsKKyAgICAgICAg
Q2xpcGJvYXJkSW1hZ2VSZWFkZXIgaW1hZ2VSZWFkZXIgeyBmcmFtZS0+ZG9jdW1lbnQoKSwgdHlw
ZSB9OwogICAgICAgICBhY3RpdmVQYXN0ZWJvYXJkKCkucmVhZChpbWFnZVJlYWRlciwgaXRlbUlu
ZGV4KTsKICAgICAgICAgYXV0byBpbWFnZUJsb2IgPSBpbWFnZVJlYWRlci50YWtlUmVzdWx0KCk7
CiAgICAgICAgIGlmICh1cGRhdGVTZXNzaW9uVmFsaWRpdHkoKSA9PSBTZXNzaW9uSXNWYWxpZDo6
WWVzICYmIGltYWdlQmxvYikKQEAgLTI1Miw3ICsyNTIsNyBAQCB2b2lkIENsaXBib2FyZDo6Z2V0
VHlwZShDbGlwYm9hcmRJdGVtJiBpdGVtLCBjb25zdCBTdHJpbmcmIHR5cGUsIFJlZjxEZWZlcnJl
ZFBybwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgcHJvbWlzZS0+cmVzb2x2ZTxJRExJ
bnRlcmZhY2U8QmxvYj4+KENsaXBib2FyZEl0ZW06OmJsb2JGcm9tU3RyaW5nKHJlc3VsdEFzU3Ry
aW5nLCB0eXBlKSk7CisgICAgcHJvbWlzZS0+cmVzb2x2ZTxJRExJbnRlcmZhY2U8QmxvYj4+KENs
aXBib2FyZEl0ZW06OmJsb2JGcm9tU3RyaW5nKGZyYW1lLT5kb2N1bWVudCgpLCByZXN1bHRBc1N0
cmluZywgdHlwZSkpOwogfQogCiBDbGlwYm9hcmQ6OlNlc3Npb25Jc1ZhbGlkIENsaXBib2FyZDo6
dXBkYXRlU2Vzc2lvblZhbGlkaXR5KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZEltYWdlUmVhZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2FzeW5jLWNsaXBib2FyZC9DbGlwYm9hcmRJbWFnZVJlYWRlci5oCmluZGV4IGQ4
ODg1NDFjMzc0MDVjZDhjYmJhZWRiNDM1MzI2NDI4NWY0MDI1MWUuLjA2ZDE3Y2JjM2ZiOWVjYTU2
MGQxZGE4OGJkOWMzMGFjN2QwMjM3NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZEltYWdlUmVhZGVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9hc3luYy1jbGlwYm9hcmQvQ2xpcGJvYXJkSW1hZ2VSZWFkZXIuaApAQCAt
MzMsOCArMzMsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiAK
IHN0cnVjdCBDbGlwYm9hcmRJbWFnZVJlYWRlciA6IFBhc3RlYm9hcmRGaWxlUmVhZGVyIHsKLSAg
ICBDbGlwYm9hcmRJbWFnZVJlYWRlcihjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQorICAgIENsaXBi
b2FyZEltYWdlUmVhZGVyKERvY3VtZW50KiBkb2N1bWVudCwgY29uc3QgU3RyaW5nJiBtaW1lVHlw
ZSkKICAgICAgICAgOiBQYXN0ZWJvYXJkRmlsZVJlYWRlcigpCisgICAgICAgICwgbV9kb2N1bWVu
dChkb2N1bWVudCkKICAgICAgICAgLCBtX21pbWVUeXBlKG1pbWVUeXBlKQogICAgIHsKICAgICB9
CkBAIC00Nyw2ICs0OCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBzaG91bGRSZWFkQnVmZmVyKGNv
bnN0IFN0cmluZyYpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgcmVhZEJ1ZmZlcihjb25zdCBTdHJp
bmcmIGZpbGVuYW1lLCBjb25zdCBTdHJpbmcmIHR5cGUsIFJlZjxTaGFyZWRCdWZmZXI+JiYpIGZp
bmFsOwogCisgICAgUmVmUHRyPERvY3VtZW50PiBtX2RvY3VtZW50OwogICAgIFN0cmluZyBtX21p
bWVUeXBlOwogICAgIFJlZlB0cjxCbG9iPiBtX3Jlc3VsdDsKIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2FzeW5jLWNsaXBib2FyZC9DbGlwYm9hcmRJdGVtLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZEl0ZW0uY3BwCmlu
ZGV4IGE0Zjk5YjRiM2QyNmMzMmU2YmM3M2U3MGFhYTFiZTFiY2I5YTNmZjAuLjc5MzVkN2EyOTY0
NGZkNjAyZTg2OWZjOWI2ZjkzMDEyNGIzOWVkMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZEl0ZW0uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZEl0ZW0uY3BwCkBAIC0zOSwx
MCArMzksMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBDbGlwYm9hcmRJdGVtOjp+Q2xpcGJv
YXJkSXRlbSgpID0gZGVmYXVsdDsKIAotUmVmPEJsb2I+IENsaXBib2FyZEl0ZW06OmJsb2JGcm9t
U3RyaW5nKGNvbnN0IFN0cmluZyYgc3RyaW5nRGF0YSwgY29uc3QgU3RyaW5nJiB0eXBlKQorUmVm
PEJsb2I+IENsaXBib2FyZEl0ZW06OmJsb2JGcm9tU3RyaW5nKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgc3RyaW5nRGF0YSwgY29uc3QgU3RyaW5nJiB0eXBl
KQogewogICAgIGF1dG8gdXRmOCA9IHN0cmluZ0RhdGEudXRmOCgpOwotICAgIHJldHVybiBCbG9i
OjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUodXRmOC5kYXRhKCksIHV0ZjgubGVuZ3RoKCkp
LCBCbG9iOjpub3JtYWxpemVkQ29udGVudFR5cGUodHlwZSkpOworICAgIHJldHVybiBCbG9iOjpj
cmVhdGUoY29udGV4dCwgU2hhcmVkQnVmZmVyOjpjcmVhdGUodXRmOC5kYXRhKCksIHV0ZjgubGVu
Z3RoKCkpLCBCbG9iOjpub3JtYWxpemVkQ29udGVudFR5cGUodHlwZSkpOwogfQogCiBzdGF0aWMg
Q2xpcGJvYXJkSXRlbTo6UHJlc2VudGF0aW9uU3R5bGUgY2xpcGJvYXJkSXRlbVByZXNlbnRhdGlv
blN0eWxlKGNvbnN0IFBhc3RlYm9hcmRJdGVtSW5mbyYgaW5mbykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZEl0ZW0uaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL0NsaXBib2FyZEl0ZW0uaAppbmRleCAy
MjJkZjE0M2Y4ZTgxODllZTdkNGJkNWE5OTMzZjcxMDg2YmVkNjlhLi4yN2UxNzFhMjllYTdiZjI4
ODY4YmVhNDIwYjRjMWRiYjljYjdkZjVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2FzeW5jLWNsaXBib2FyZC9DbGlwYm9hcmRJdGVtLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9hc3luYy1jbGlwYm9hcmQvQ2xpcGJvYXJkSXRlbS5oCkBAIC00MSw2ICs0MSw3IEBA
IGNsYXNzIERlZmVycmVkUHJvbWlzZTsKIGNsYXNzIERPTVByb21pc2U7CiBjbGFzcyBOYXZpZ2F0
b3I7CiBjbGFzcyBQYXN0ZWJvYXJkQ3VzdG9tRGF0YTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQ7CiBzdHJ1Y3QgUGFzdGVib2FyZEl0ZW1JbmZvOwogCiBjbGFzcyBDbGlwYm9hcmRJdGVt
IDogcHVibGljIFJlZkNvdW50ZWQ8Q2xpcGJvYXJkSXRlbT4gewpAQCAtNTUsNyArNTYsNyBAQCBw
dWJsaWM6CiAKICAgICBzdGF0aWMgUmVmPENsaXBib2FyZEl0ZW0+IGNyZWF0ZShWZWN0b3I8S2V5
VmFsdWVQYWlyPFN0cmluZywgUmVmUHRyPERPTVByb21pc2U+Pj4mJiwgY29uc3QgT3B0aW9ucyYp
OwogICAgIHN0YXRpYyBSZWY8Q2xpcGJvYXJkSXRlbT4gY3JlYXRlKENsaXBib2FyZCYsIGNvbnN0
IFBhc3RlYm9hcmRJdGVtSW5mbyYpOwotICAgIHN0YXRpYyBSZWY8QmxvYj4gYmxvYkZyb21TdHJp
bmcoY29uc3QgU3RyaW5nJiBzdHJpbmdEYXRhLCBjb25zdCBTdHJpbmcmIHR5cGUpOworICAgIHN0
YXRpYyBSZWY8QmxvYj4gYmxvYkZyb21TdHJpbmcoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNv
bnN0IFN0cmluZyYgc3RyaW5nRGF0YSwgY29uc3QgU3RyaW5nJiB0eXBlKTsKIAogICAgIFZlY3Rv
cjxTdHJpbmc+IHR5cGVzKCkgY29uc3Q7CiAgICAgdm9pZCBnZXRUeXBlKGNvbnN0IFN0cmluZyYs
IFJlZjxEZWZlcnJlZFByb21pc2U+JiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9hc3luYy1jbGlwYm9hcmQvQ2xpcGJvYXJkSXRlbUJpbmRpbmdzRGF0YVNvdXJjZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FzeW5jLWNsaXBib2FyZC9DbGlwYm9hcmRJdGVtQmlu
ZGluZ3NEYXRhU291cmNlLmNwcAppbmRleCA2MTFmNzJlYzk0YWY5MGIwODBlZmM4NmM1NWFkZTg4
Yjk0Y2MxNDc0Li4wOWZkODNlMDRjMThlMzAxM2UyZDRkNzE5NWUzMWI3Yzg0ZjBiYWQ0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FzeW5jLWNsaXBib2FyZC9DbGlwYm9hcmRJ
dGVtQmluZGluZ3NEYXRhU291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Fz
eW5jLWNsaXBib2FyZC9DbGlwYm9hcmRJdGVtQmluZGluZ3NEYXRhU291cmNlLmNwcApAQCAtMTA3
LDcgKzEwNyw3IEBAIHZvaWQgQ2xpcGJvYXJkSXRlbUJpbmRpbmdzRGF0YVNvdXJjZTo6Z2V0VHlw
ZShjb25zdCBTdHJpbmcmIHR5cGUsIFJlZjxEZWZlcnJlZFByCiAgICAgICAgIFN0cmluZyBzdHJp
bmc7CiAgICAgICAgIHJlc3VsdC5nZXRTdHJpbmcoaXRlbVByb21pc2UtPmdsb2JhbE9iamVjdCgp
LCBzdHJpbmcpOwogICAgICAgICBpZiAoIXN0cmluZy5pc051bGwoKSkgewotICAgICAgICAgICAg
cHJvbWlzZS0+cmVzb2x2ZTxJRExJbnRlcmZhY2U8QmxvYj4+KENsaXBib2FyZEl0ZW06OmJsb2JG
cm9tU3RyaW5nKHN0cmluZywgdHlwZSkpOworICAgICAgICAgICAgcHJvbWlzZS0+cmVzb2x2ZTxJ
RExJbnRlcmZhY2U8QmxvYj4+KENsaXBib2FyZEl0ZW06OmJsb2JGcm9tU3RyaW5nKHByb21pc2Ut
PnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgc3RyaW5nLCB0eXBlKSk7CiAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9h
c3luYy1jbGlwYm9hcmQvaW9zL0NsaXBib2FyZEltYWdlUmVhZGVySU9TLm1tIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9hc3luYy1jbGlwYm9hcmQvaW9zL0NsaXBib2FyZEltYWdlUmVhZGVySU9T
Lm1tCmluZGV4IDgzNDIyYTEwMjk4OTc2YzRlMGRjMjA3ZTZkYzMzMGJmNDMxNjYzYWEuLjE1OWVl
ODk1MGIwNDBkNmQ4ZTI3ZWNkNjlhOTViZTI0ODdmMzNiYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL2lvcy9DbGlwYm9hcmRJbWFnZVJlYWRlcklP
Uy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FzeW5jLWNsaXBib2FyZC9pb3MvQ2xp
cGJvYXJkSW1hZ2VSZWFkZXJJT1MubW0KQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCiAKKyNpbXBvcnQgIkRvY3VtZW50LmgiCiAjaW1wb3J0ICJTaGFyZWRCdWZm
ZXIuaCIKICNpbXBvcnQgPHBhbC9pb3MvVUlLaXRTb2Z0TGluay5oPgogCkBAIC0zOCw3ICszOSw3
IEBAIHZvaWQgQ2xpcGJvYXJkSW1hZ2VSZWFkZXI6OnJlYWRCdWZmZXIoY29uc3QgU3RyaW5nJiwg
Y29uc3QgU3RyaW5nJiwgUmVmPFNoYXJlZEJ1CiAgICAgaWYgKG1fbWltZVR5cGUgPT0gImltYWdl
L3BuZyIpIHsKICAgICAgICAgYXV0byBpbWFnZSA9IGFkb3B0TlMoW1BBTDo6YWxsb2NVSUltYWdl
SW5zdGFuY2UoKSBpbml0V2l0aERhdGE6YnVmZmVyLT5jcmVhdGVOU0RhdGEoKS5nZXQoKV0pOwog
ICAgICAgICBpZiAoYXV0byBuc0RhdGEgPSBVSUltYWdlUE5HUmVwcmVzZW50YXRpb24oaW1hZ2Uu
Z2V0KCkpKQotICAgICAgICAgICAgbV9yZXN1bHQgPSBCbG9iOjpjcmVhdGUoU2hhcmVkQnVmZmVy
OjpjcmVhdGUobnNEYXRhKSwgbV9taW1lVHlwZSk7CisgICAgICAgICAgICBtX3Jlc3VsdCA9IEJs
b2I6OmNyZWF0ZShtX2RvY3VtZW50LmdldCgpLCBTaGFyZWRCdWZmZXI6OmNyZWF0ZShuc0RhdGEp
LCBtX21pbWVUeXBlKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvYXN5bmMtY2xpcGJvYXJkL21hYy9DbGlwYm9hcmRJbWFnZVJlYWRlck1hYy5tbSBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvYXN5bmMtY2xpcGJvYXJkL21hYy9DbGlwYm9hcmRJbWFnZVJl
YWRlck1hYy5tbQppbmRleCA0YmNhNmI5NzlkNTRmNmI2ZWJkZjY4YTQ0NDBkYTY5YWYwNTNlN2E1
Li5kOTE0Y2QwZDQwZjkzZWJmNmYwMTNkM2E0ZDQyMzkzYjc3MWY0MjRhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2FzeW5jLWNsaXBib2FyZC9tYWMvQ2xpcGJvYXJkSW1hZ2VS
ZWFkZXJNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hc3luYy1jbGlwYm9hcmQv
bWFjL0NsaXBib2FyZEltYWdlUmVhZGVyTWFjLm1tCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpZiBQ
TEFURk9STShNQUMpCiAKKyNpbXBvcnQgIkRvY3VtZW50LmgiCiAjaW1wb3J0ICJTaGFyZWRCdWZm
ZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzgsNyArMzksNyBAQCB2b2lkIENsaXBi
b2FyZEltYWdlUmVhZGVyOjpyZWFkQnVmZmVyKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYs
IFJlZjxTaGFyZWRCdQogICAgICAgICBhdXRvIGltYWdlID0gYWRvcHROUyhbW05TSW1hZ2UgYWxs
b2NdIGluaXRXaXRoRGF0YTpidWZmZXItPmNyZWF0ZU5TRGF0YSgpLmdldCgpXSk7CiAgICAgICAg
IGlmIChhdXRvIGNnSW1hZ2UgPSBbaW1hZ2UgQ0dJbWFnZUZvclByb3Bvc2VkUmVjdDpuaWwgY29u
dGV4dDpuaWwgaGludHM6bmlsXSkgewogICAgICAgICAgICAgYXV0byByZXByZXNlbnRhdGlvbiA9
IGFkb3B0TlMoW1tOU0JpdG1hcEltYWdlUmVwIGFsbG9jXSBpbml0V2l0aENHSW1hZ2U6Y2dJbWFn
ZV0pOwotICAgICAgICAgICAgbV9yZXN1bHQgPSBCbG9iOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpj
cmVhdGUoW3JlcHJlc2VudGF0aW9uIHJlcHJlc2VudGF0aW9uVXNpbmdUeXBlOk5TQml0bWFwSW1h
Z2VGaWxlVHlwZVBORyBwcm9wZXJ0aWVzOkB7IH1dKSwgbV9taW1lVHlwZSk7CisgICAgICAgICAg
ICBtX3Jlc3VsdCA9IEJsb2I6OmNyZWF0ZShtX2RvY3VtZW50LmdldCgpLCBTaGFyZWRCdWZmZXI6
OmNyZWF0ZShbcmVwcmVzZW50YXRpb24gcmVwcmVzZW50YXRpb25Vc2luZ1R5cGU6TlNCaXRtYXBJ
bWFnZUZpbGVUeXBlUE5HIHByb3BlcnRpZXM6QHsgfV0pLCBtX21pbWVUeXBlKTsKICAgICAgICAg
fQogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW50cmllc2Fw
aS9ET01GaWxlU3lzdGVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW50cmllc2FwaS9E
T01GaWxlU3lzdGVtLmNwcAppbmRleCAxNjFhZTAzNDE0OWI1ZjRiMGEzMjQ3NjlmMzE3NWEwMDc0
MTM2OWExLi5kYTlkOWY0YzBkMDQ3MWRhNGMxNmQxMGY5NzVhNzVmY2JlMWIwNjFlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VudHJpZXNhcGkvRE9NRmlsZVN5c3RlbS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbnRyaWVzYXBpL0RPTUZpbGVTeXN0ZW0uY3Bw
CkBAIC0zMzMsMTcgKzMzMywxNyBAQCB2b2lkIERPTUZpbGVTeXN0ZW06OmdldEVudHJ5KFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEZpbGVTeXN0ZW1EaXJlY3RvcgogICAgIH0pOwog
fQogCi12b2lkIERPTUZpbGVTeXN0ZW06OmdldEZpbGUoRmlsZVN5c3RlbUZpbGVFbnRyeSYgZmls
ZUVudHJ5LCBHZXRGaWxlQ2FsbGJhY2smJiBjb21wbGV0aW9uQ2FsbGJhY2spCit2b2lkIERPTUZp
bGVTeXN0ZW06OmdldEZpbGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgRmlsZVN5
c3RlbUZpbGVFbnRyeSYgZmlsZUVudHJ5LCBHZXRGaWxlQ2FsbGJhY2smJiBjb21wbGV0aW9uQ2Fs
bGJhY2spCiB7CiAgICAgYXV0byB2aXJ0dWFsUGF0aCA9IGZpbGVFbnRyeS52aXJ0dWFsUGF0aCgp
OwogICAgIGF1dG8gZnVsbFBhdGggPSBldmFsdWF0ZVBhdGgodmlydHVhbFBhdGgpOwotICAgIG1f
d29ya1F1ZXVlLT5kaXNwYXRjaChbZnVsbFBhdGggPSBjcm9zc1RocmVhZENvcHkoZnVsbFBhdGgp
LCB2aXJ0dWFsUGF0aCA9IGNyb3NzVGhyZWFkQ29weSh2aXJ0dWFsUGF0aCksIGNvbXBsZXRpb25D
YWxsYmFjayA9IFdURk1vdmUoY29tcGxldGlvbkNhbGxiYWNrKV0oKSBtdXRhYmxlIHsKKyAgICBt
X3dvcmtRdWV1ZS0+ZGlzcGF0Y2goW2Z1bGxQYXRoID0gY3Jvc3NUaHJlYWRDb3B5KGZ1bGxQYXRo
KSwgdmlydHVhbFBhdGggPSBjcm9zc1RocmVhZENvcHkodmlydHVhbFBhdGgpLCBjb250ZXh0ID0g
bWFrZVJlZihjb250ZXh0KSwgY29tcGxldGlvbkNhbGxiYWNrID0gV1RGTW92ZShjb21wbGV0aW9u
Q2FsbGJhY2spXSgpIG11dGFibGUgewogICAgICAgICBhdXRvIHZhbGlkYXRlZFZpcnR1YWxQYXRo
ID0gdmFsaWRhdGVQYXRoSXNFeHBlY3RlZFR5cGUoZnVsbFBhdGgsIFdURk1vdmUodmlydHVhbFBh
dGgpLCBGaWxlTWV0YWRhdGE6OlR5cGU6OkZpbGUpOwotICAgICAgICBjYWxsT25NYWluVGhyZWFk
KFtmdWxsUGF0aCA9IGNyb3NzVGhyZWFkQ29weShmdWxsUGF0aCksIHZhbGlkYXRlZFZpcnR1YWxQ
YXRoID0gY3Jvc3NUaHJlYWRDb3B5KHZhbGlkYXRlZFZpcnR1YWxQYXRoKSwgY29tcGxldGlvbkNh
bGxiYWNrID0gV1RGTW92ZShjb21wbGV0aW9uQ2FsbGJhY2spXSgpIG11dGFibGUgeworICAgICAg
ICBjYWxsT25NYWluVGhyZWFkKFtmdWxsUGF0aCA9IGNyb3NzVGhyZWFkQ29weShmdWxsUGF0aCks
IHZhbGlkYXRlZFZpcnR1YWxQYXRoID0gY3Jvc3NUaHJlYWRDb3B5KHZhbGlkYXRlZFZpcnR1YWxQ
YXRoKSwgY29udGV4dCA9IFdURk1vdmUoY29udGV4dCksIGNvbXBsZXRpb25DYWxsYmFjayA9IFdU
Rk1vdmUoY29tcGxldGlvbkNhbGxiYWNrKV0oKSBtdXRhYmxlIHsKICAgICAgICAgICAgIGlmICh2
YWxpZGF0ZWRWaXJ0dWFsUGF0aC5oYXNFeGNlcHRpb24oKSkKICAgICAgICAgICAgICAgICBjb21w
bGV0aW9uQ2FsbGJhY2sodmFsaWRhdGVkVmlydHVhbFBhdGgucmVsZWFzZUV4Y2VwdGlvbigpKTsK
ICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBjb21wbGV0aW9uQ2FsbGJhY2soRmls
ZTo6Y3JlYXRlKGZ1bGxQYXRoKSk7CisgICAgICAgICAgICAgICAgY29tcGxldGlvbkNhbGxiYWNr
KEZpbGU6OmNyZWF0ZShjb250ZXh0LnB0cigpLCBmdWxsUGF0aCkpOwogICAgICAgICB9KTsKICAg
ICB9KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW50cmllc2FwaS9E
T01GaWxlU3lzdGVtLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VudHJpZXNhcGkvRE9NRmls
ZVN5c3RlbS5oCmluZGV4IDc0YTNjZTZjM2VjNWRkZjA1ZjAzNDI2NjFmNzYwNzNjNWU1NTljMWUu
LjM4MzZiODc3YTY3ZDZiZDRjMzk4Mjg5NTdkNWY1NDZhNDhmYjYzNjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZW50cmllc2FwaS9ET01GaWxlU3lzdGVtLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9lbnRyaWVzYXBpL0RPTUZpbGVTeXN0ZW0uaApAQCAtNjMsNyAr
NjMsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBnZXRFbnRyeShTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiwgRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5JiwgY29uc3QgU3RyaW5nJiB2aXJ0dWFsUGF0aCwg
Y29uc3QgRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5OjpGbGFncyYsIEdldEVudHJ5Q2FsbGJhY2sm
Jik7CiAKICAgICB1c2luZyBHZXRGaWxlQ2FsbGJhY2sgPSBXVEY6OkZ1bmN0aW9uPHZvaWQoRXhj
ZXB0aW9uT3I8UmVmPEZpbGU+PiYmKT47Ci0gICAgdm9pZCBnZXRGaWxlKEZpbGVTeXN0ZW1GaWxl
RW50cnkmLCBHZXRGaWxlQ2FsbGJhY2smJik7CisgICAgdm9pZCBnZXRGaWxlKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQmLCBGaWxlU3lzdGVtRmlsZUVudHJ5JiwgR2V0RmlsZUNhbGxiYWNrJiYpOwog
CiBwcml2YXRlOgogICAgIGV4cGxpY2l0IERPTUZpbGVTeXN0ZW0oUmVmPEZpbGU+JiYpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbnRyaWVzYXBpL0ZpbGVTeXN0ZW1GaWxl
RW50cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbnRyaWVzYXBpL0ZpbGVTeXN0ZW1G
aWxlRW50cnkuY3BwCmluZGV4IDA5NTkwOWYwY2QyMjk4OWEwMzMzZDY5NzJiYzRhNTcxNjM1MmIy
MjAuLjgxMGJjMjM1ZWUxYzA2MzFlZGRhMjlkNWYwOGVlZWY5MzllN2QxNjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW50cmllc2FwaS9GaWxlU3lzdGVtRmlsZUVudHJ5LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VudHJpZXNhcGkvRmlsZVN5c3RlbUZpbGVF
bnRyeS5jcHAKQEAgLTQxLDkgKzQxLDkgQEAgRmlsZVN5c3RlbUZpbGVFbnRyeTo6RmlsZVN5c3Rl
bUZpbGVFbnRyeShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBET01GaWwKIHsKIH0K
IAotdm9pZCBGaWxlU3lzdGVtRmlsZUVudHJ5OjpmaWxlKFJlZjxGaWxlQ2FsbGJhY2s+JiYgc3Vj
Y2Vzc0NhbGxiYWNrLCBSZWZQdHI8RXJyb3JDYWxsYmFjaz4mJiBlcnJvckNhbGxiYWNrKQordm9p
ZCBGaWxlU3lzdGVtRmlsZUVudHJ5OjpmaWxlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRl
eHQsIFJlZjxGaWxlQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBSZWZQdHI8RXJyb3JDYWxs
YmFjaz4mJiBlcnJvckNhbGxiYWNrKQogewotICAgIGZpbGVzeXN0ZW0oKS5nZXRGaWxlKCp0aGlz
LCBbdGhpcywgcGVuZGluZ0FjdGl2aXR5ID0gbWFrZVBlbmRpbmdBY3Rpdml0eSgqdGhpcyksIHN1
Y2Nlc3NDYWxsYmFjayA9IFdURk1vdmUoc3VjY2Vzc0NhbGxiYWNrKSwgZXJyb3JDYWxsYmFjayA9
IFdURk1vdmUoZXJyb3JDYWxsYmFjayldKGF1dG8mJiByZXN1bHQpIG11dGFibGUgeworICAgIGZp
bGVzeXN0ZW0oKS5nZXRGaWxlKGNvbnRleHQsICp0aGlzLCBbdGhpcywgcGVuZGluZ0FjdGl2aXR5
ID0gbWFrZVBlbmRpbmdBY3Rpdml0eSgqdGhpcyksIHN1Y2Nlc3NDYWxsYmFjayA9IFdURk1vdmUo
c3VjY2Vzc0NhbGxiYWNrKSwgZXJyb3JDYWxsYmFjayA9IFdURk1vdmUoZXJyb3JDYWxsYmFjayld
KGF1dG8mJiByZXN1bHQpIG11dGFibGUgewogICAgICAgICBhdXRvKiBkb2N1bWVudCA9IHRoaXMt
PmRvY3VtZW50KCk7CiAgICAgICAgIGlmICghZG9jdW1lbnQpCiAgICAgICAgICAgICByZXR1cm47
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VudHJpZXNhcGkvRmlsZVN5c3Rl
bUZpbGVFbnRyeS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbnRyaWVzYXBpL0ZpbGVTeXN0
ZW1GaWxlRW50cnkuaAppbmRleCBlYTc5ZTNiMzk0YzJhMTNkM2ZiZGQ3YjZhYTRiYTFhMDNhMDli
MWJhLi5hYjk2ZTAyMTQwYmMzY2Y4OTU2YzZkZWJhYTc0NGMxOGRjMmMyMzE1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VudHJpZXNhcGkvRmlsZVN5c3RlbUZpbGVFbnRyeS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW50cmllc2FwaS9GaWxlU3lzdGVtRmlsZUVu
dHJ5LmgKQEAgLTQwLDcgKzQwLDcgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBGaWxlU3lzdGVtRmlsZUVudHJ5KGNvbnRleHQsIGZpbGVzeXN0ZW0sIHZpcnR1YWxQYXRo
KSk7CiAgICAgfQogCi0gICAgdm9pZCBmaWxlKFJlZjxGaWxlQ2FsbGJhY2s+JiYsIFJlZlB0cjxF
cnJvckNhbGxiYWNrPiYmID0gbnVsbHB0cik7CisgICAgdm9pZCBmaWxlKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQmLCBSZWY8RmlsZUNhbGxiYWNrPiYmLCBSZWZQdHI8RXJyb3JDYWxsYmFjaz4mJiA9
IG51bGxwdHIpOwogCiBwcml2YXRlOgogICAgIGJvb2wgaXNGaWxlKCkgY29uc3QgZmluYWwgeyBy
ZXR1cm4gdHJ1ZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbnRyaWVz
YXBpL0ZpbGVTeXN0ZW1GaWxlRW50cnkuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9lbnRy
aWVzYXBpL0ZpbGVTeXN0ZW1GaWxlRW50cnkuaWRsCmluZGV4IDJkNzM1MmI1MTJkMGJiN2VhY2Vj
NmEwNTkyZThmZWVhOTE4MzljMTkuLmRhZDk3YjljNDA3MGFjY2FmN2ViM2YzMWQ3N2U1YzkzOTU1
NDBiYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZW50cmllc2FwaS9GaWxl
U3lzdGVtRmlsZUVudHJ5LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2VudHJpZXNh
cGkvRmlsZVN5c3RlbUZpbGVFbnRyeS5pZGwKQEAgLTI2LDUgKzI2LDUgQEAKIFsKICAgICBFbmFi
bGVkQXRSdW50aW1lPURpcmVjdG9yeVVwbG9hZCwKIF0gaW50ZXJmYWNlIEZpbGVTeXN0ZW1GaWxl
RW50cnkgOiBGaWxlU3lzdGVtRW50cnkgewotICAgIHZvaWQgZmlsZShGaWxlQ2FsbGJhY2sgc3Vj
Y2Vzc0NhbGxiYWNrLCBvcHRpb25hbCBFcnJvckNhbGxiYWNrPyBlcnJvckNhbGxiYWNrKTsKKyAg
ICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gdm9pZCBmaWxlKEZpbGVDYWxsYmFj
ayBzdWNjZXNzQ2FsbGJhY2ssIG9wdGlvbmFsIEVycm9yQ2FsbGJhY2s/IGVycm9yQ2FsbGJhY2sp
OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5LmNwcAppbmRleCA3
ZTliMTkyOGExODFhZGIwYjY3ODY2M2U0MTI5NTVlZjc1ZjkzZTc1Li40ZTNlYjZjMTU5Y2FhZWE4
ODU3NjBjNDBjNmNjMzJlZjgwNjY3M2VjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZldGNoL0ZldGNoQm9keS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRj
aC9GZXRjaEJvZHkuY3BwCkBAIC03Nyw3ICs3Nyw3IEBAIEV4Y2VwdGlvbk9yPEZldGNoQm9keT4g
RmV0Y2hCb2R5OjpleHRyYWN0KEluaXQmJiB2YWx1ZSwgU3RyaW5nJiBjb250ZW50VHlwZSkKICAg
ICB9KTsKIH0KIAotT3B0aW9uYWw8RmV0Y2hCb2R5PiBGZXRjaEJvZHk6OmZyb21Gb3JtRGF0YShG
b3JtRGF0YSYgZm9ybURhdGEpCitPcHRpb25hbDxGZXRjaEJvZHk+IEZldGNoQm9keTo6ZnJvbUZv
cm1EYXRhKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEZvcm1EYXRhJiBmb3JtRGF0
YSkKIHsKICAgICBBU1NFUlQoIWZvcm1EYXRhLmlzRW1wdHkoKSk7CiAKQEAgLTkwLDcgKzkwLDcg
QEAgT3B0aW9uYWw8RmV0Y2hCb2R5PiBGZXRjaEJvZHk6OmZyb21Gb3JtRGF0YShGb3JtRGF0YSYg
Zm9ybURhdGEpCiAgICAgYXV0byB1cmwgPSBmb3JtRGF0YS5hc0Jsb2JVUkwoKTsKICAgICBpZiAo
IXVybC5pc051bGwoKSkgewogICAgICAgICAvLyBGSVhNRTogUHJvcGVybHkgc2V0IG1pbWUgdHlw
ZSBhbmQgc2l6ZSBvZiB0aGUgYmxvYi4KLSAgICAgICAgUmVmPGNvbnN0IEJsb2I+IGJsb2IgPSBC
bG9iOjpkZXNlcmlhbGl6ZSh1cmwsIHsgfSwgeyB9LCB7IH0pOworICAgICAgICBSZWY8Y29uc3Qg
QmxvYj4gYmxvYiA9IEJsb2I6OmRlc2VyaWFsaXplKCZjb250ZXh0LCB1cmwsIHsgfSwgeyB9LCB7
IH0pOwogICAgICAgICByZXR1cm4gRmV0Y2hCb2R5IHsgV1RGTW92ZShibG9iKSB9OwogICAgIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaEJvZHkuaCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5LmgKaW5kZXggMzU5YTAxMDU2
YjE1MWEzMDVhOTFlNDExMjFhMzdkMDNmMGVhNGY5Yi4uMzE4N2Y5MGNmZDJhMThmN2M2ZTE1ODI5
YWVkZDc0MWI3NzZiYjE5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRj
aC9GZXRjaEJvZHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoQm9k
eS5oCkBAIC01Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgRXhjZXB0aW9uT3I8RmV0
Y2hCb2R5PiBleHRyYWN0KEluaXQmJiwgU3RyaW5nJik7CiAgICAgRmV0Y2hCb2R5KCkgPSBkZWZh
dWx0OwogCi0gICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIE9wdGlvbmFsPEZldGNoQm9keT4gZnJv
bUZvcm1EYXRhKEZvcm1EYXRhJik7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIE9wdGlvbmFs
PEZldGNoQm9keT4gZnJvbUZvcm1EYXRhKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBGb3JtRGF0
YSYpOwogCiAgICAgdm9pZCBsb2FkaW5nRmFpbGVkKGNvbnN0IEV4Y2VwdGlvbiYpOwogICAgIHZv
aWQgbG9hZGluZ1N1Y2NlZWRlZChjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5Q29uc3VtZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaEJvZHlDb25zdW1lci5jcHAKaW5kZXgg
NWVhMTVhMzUwZWIzMzhmY2NhNmZiM2Q1ZTRiMDRmOTU1NDQxZTk1Yy4uN2RlNzI2YmZhOWY1Y2Yx
YmQ0ZmEyODg1YTI3NGNkYzRmMjY4M2YyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9mZXRjaC9GZXRjaEJvZHlDb25zdW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9mZXRjaC9GZXRjaEJvZHlDb25zdW1lci5jcHAKQEAgLTM4LDExICszOCwxMSBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0YXRpYyBpbmxpbmUgUmVmPEJsb2I+IGJsb2JGcm9tRGF0
YShjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IFN0cmlu
ZyYgY29udGVudFR5cGUpCitzdGF0aWMgaW5saW5lIFJlZjxCbG9iPiBibG9iRnJvbURhdGEoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwg
dW5zaWduZWQgbGVuZ3RoLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKQogewogICAgIFZlY3Rv
cjx1aW50OF90PiB2YWx1ZShsZW5ndGgpOwogICAgIG1lbWNweSh2YWx1ZS5kYXRhKCksIGRhdGEs
IGxlbmd0aCk7Ci0gICAgcmV0dXJuIEJsb2I6OmNyZWF0ZShXVEZNb3ZlKHZhbHVlKSwgQmxvYjo6
bm9ybWFsaXplZENvbnRlbnRUeXBlKGNvbnRlbnRUeXBlKSk7CisgICAgcmV0dXJuIEJsb2I6OmNy
ZWF0ZShjb250ZXh0LCBXVEZNb3ZlKHZhbHVlKSwgQmxvYjo6bm9ybWFsaXplZENvbnRlbnRUeXBl
KGNvbnRlbnRUeXBlKSk7CiB9CiAKIC8vIGh0dHBzOi8vbWltZXNuaWZmLnNwZWMud2hhdHdnLm9y
Zy8jaHR0cC1xdW90ZWQtc3RyaW5nLXRva2VuLWNvZGUtcG9pbnQKQEAgLTEyNiw5ICsxMjYsOSBA
QCBzdGF0aWMgT3B0aW9uYWw8TWltZVR5cGU+IHBhcnNlTUlNRVR5cGUoY29uc3QgU3RyaW5nJiBj
b250ZW50VHlwZSkKIH0KIAogLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNl
cHQtYm9keS1wYWNrYWdlLWRhdGEKLXN0YXRpYyBSZWZQdHI8RE9NRm9ybURhdGE+IHBhY2thZ2VG
b3JtRGF0YShjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBjb25zdCBjaGFyKiBkYXRhLCBzaXpl
X3QgbGVuZ3RoKQorc3RhdGljIFJlZlB0cjxET01Gb3JtRGF0YT4gcGFja2FnZUZvcm1EYXRhKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUs
IGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBsZW5ndGgpCiB7Ci0gICAgYXV0byBwYXJzZU11bHRp
cGFydFBhcnQgPSBbXSAoY29uc3QgY2hhciogcGFydCwgc2l6ZV90IHBhcnRMZW5ndGgsIERPTUZv
cm1EYXRhJiBmb3JtKSAtPiBib29sIHsKKyAgICBhdXRvIHBhcnNlTXVsdGlwYXJ0UGFydCA9IFtj
b250ZXh0XSAoY29uc3QgY2hhciogcGFydCwgc2l6ZV90IHBhcnRMZW5ndGgsIERPTUZvcm1EYXRh
JiBmb3JtKSAtPiBib29sIHsKICAgICAgICAgY29uc3QgY2hhciogaGVhZGVyRW5kID0gc3RhdGlj
X2Nhc3Q8Y29uc3QgY2hhcio+KG1lbW1lbShwYXJ0LCBwYXJ0TGVuZ3RoLCAiXHJcblxyXG4iLCA0
KSk7CiAgICAgICAgIGlmICghaGVhZGVyRW5kKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpA
QCAtMTY3LDcgKzE2Nyw3IEBAIHN0YXRpYyBSZWZQdHI8RE9NRm9ybURhdGE+IHBhY2thZ2VGb3Jt
RGF0YShjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBjb25zdCBjaGFyCiAgICAgICAgICAgICAg
ICAgY29udGVudFR5cGUgPSBzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0hUVFBTcGFjZXMoaGVhZGVy
LnN1YnN0cmluZyhjb250ZW50VHlwZUJlZ2luICsgY29udGVudFR5cGVQcmVmaXhMZW5ndGgsIGNv
bnRlbnRUeXBlRW5kIC0gY29udGVudFR5cGVCZWdpbiAtIGNvbnRlbnRUeXBlUHJlZml4TGVuZ3Ro
KSk7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIGZvcm0uYXBwZW5kKG5hbWUsIEZpbGU6
OmNyZWF0ZShCbG9iOjpjcmVhdGUoU2hhcmVkQnVmZmVyOjpjcmVhdGUoYm9keUJlZ2luLCBib2R5
TGVuZ3RoKS5nZXQoKSwgQmxvYjo6bm9ybWFsaXplZENvbnRlbnRUeXBlKGNvbnRlbnRUeXBlKSku
Z2V0KCksIGZpbGVuYW1lKS5nZXQoKSwgZmlsZW5hbWUpOworICAgICAgICAgICAgZm9ybS5hcHBl
bmQobmFtZSwgRmlsZTo6Y3JlYXRlKGNvbnRleHQsIEJsb2I6OmNyZWF0ZShjb250ZXh0LCBTaGFy
ZWRCdWZmZXI6OmNyZWF0ZShib2R5QmVnaW4sIGJvZHlMZW5ndGgpLmdldCgpLCBCbG9iOjpub3Jt
YWxpemVkQ29udGVudFR5cGUoY29udGVudFR5cGUpKS5nZXQoKSwgZmlsZW5hbWUpLmdldCgpLCBm
aWxlbmFtZSk7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfTsKQEAgLTIx
MywxMyArMjEzLDE1IEBAIHN0YXRpYyBSZWZQdHI8RE9NRm9ybURhdGE+IHBhY2thZ2VGb3JtRGF0
YShjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBjb25zdCBjaGFyCiAKIHN0YXRpYyB2b2lkIHJl
c29sdmVXaXRoVHlwZUFuZERhdGEoUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlLCBGZXRj
aEJvZHlDb25zdW1lcjo6VHlwZSB0eXBlLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBjb25z
dCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsZW5ndGgpCiB7CisgICAgYXV0byogY29u
dGV4dCA9IHByb21pc2UtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKwogICAgIHN3aXRjaCAo
dHlwZSkgewogICAgIGNhc2UgRmV0Y2hCb2R5Q29uc3VtZXI6OlR5cGU6OkFycmF5QnVmZmVyOgog
ICAgICAgICBmdWxmaWxsUHJvbWlzZVdpdGhBcnJheUJ1ZmZlcihXVEZNb3ZlKHByb21pc2UpLCBk
YXRhLCBsZW5ndGgpOwogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBGZXRjaEJvZHlDb25zdW1l
cjo6VHlwZTo6QmxvYjoKLSAgICAgICAgcHJvbWlzZS0+cmVzb2x2ZUNhbGxiYWNrVmFsdWVXaXRo
TmV3bHlDcmVhdGVkPElETEludGVyZmFjZTxCbG9iPj4oWyZkYXRhLCAmbGVuZ3RoLCAmY29udGVu
dFR5cGVdKGF1dG8mKSB7Ci0gICAgICAgICAgICByZXR1cm4gYmxvYkZyb21EYXRhKGRhdGEsIGxl
bmd0aCwgY29udGVudFR5cGUpOworICAgICAgICBwcm9taXNlLT5yZXNvbHZlQ2FsbGJhY2tWYWx1
ZVdpdGhOZXdseUNyZWF0ZWQ8SURMSW50ZXJmYWNlPEJsb2I+PihbJmRhdGEsICZsZW5ndGgsICZj
b250ZW50VHlwZSwgY29udGV4dF0oYXV0byYpIHsKKyAgICAgICAgICAgIHJldHVybiBibG9iRnJv
bURhdGEoY29udGV4dCwgZGF0YSwgbGVuZ3RoLCBjb250ZW50VHlwZSk7CiAgICAgICAgIH0pOwog
ICAgICAgICByZXR1cm47CiAgICAgY2FzZSBGZXRjaEJvZHlDb25zdW1lcjo6VHlwZTo6SlNPTjoK
QEAgLTIyOSw3ICsyMzEsNyBAQCBzdGF0aWMgdm9pZCByZXNvbHZlV2l0aFR5cGVBbmREYXRhKFJl
ZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSwgRmV0Y2hCb2R5Q29ucwogICAgICAgICBwcm9t
aXNlLT5yZXNvbHZlPElETERPTVN0cmluZz4oVGV4dFJlc291cmNlRGVjb2Rlcjo6dGV4dEZyb21V
VEY4KGRhdGEsIGxlbmd0aCkpOwogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBGZXRjaEJvZHlD
b25zdW1lcjo6VHlwZTo6Rm9ybURhdGE6Ci0gICAgICAgIGlmIChhdXRvIGZvcm1EYXRhID0gcGFj
a2FnZUZvcm1EYXRhKGNvbnRlbnRUeXBlLCByZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihk
YXRhKSwgbGVuZ3RoKSkKKyAgICAgICAgaWYgKGF1dG8gZm9ybURhdGEgPSBwYWNrYWdlRm9ybURh
dGEoY29udGV4dCwgY29udGVudFR5cGUsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgY2hhcio+KGRh
dGEpLCBsZW5ndGgpKQogICAgICAgICAgICAgcHJvbWlzZS0+cmVzb2x2ZTxJRExJbnRlcmZhY2U8
RE9NRm9ybURhdGE+PigqZm9ybURhdGEpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBwcm9t
aXNlLT5yZWplY3QoVHlwZUVycm9yKTsKQEAgLTI4NiwxNCArMjg4LDE2IEBAIHZvaWQgRmV0Y2hC
b2R5Q29uc3VtZXI6OnJlc29sdmUoUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlLCBjb25z
dCBTdHJpbmcmIGNvCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICBhdXRvKiBjb250ZXh0
ID0gcHJvbWlzZS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOworCiAgICAgQVNTRVJUKG1fdHlw
ZSAhPSBUeXBlOjpOb25lKTsKICAgICBzd2l0Y2ggKG1fdHlwZSkgewogICAgIGNhc2UgVHlwZTo6
QXJyYXlCdWZmZXI6CiAgICAgICAgIGZ1bGZpbGxQcm9taXNlV2l0aEFycmF5QnVmZmVyKFdURk1v
dmUocHJvbWlzZSksIHRha2VBc0FycmF5QnVmZmVyKCkuZ2V0KCkpOwogICAgICAgICByZXR1cm47
CiAgICAgY2FzZSBUeXBlOjpCbG9iOgotICAgICAgICBwcm9taXNlLT5yZXNvbHZlQ2FsbGJhY2tW
YWx1ZVdpdGhOZXdseUNyZWF0ZWQ8SURMSW50ZXJmYWNlPEJsb2I+PihbdGhpc10oYXV0byYpIHsK
LSAgICAgICAgICAgIHJldHVybiB0YWtlQXNCbG9iKCk7CisgICAgICAgIHByb21pc2UtPnJlc29s
dmVDYWxsYmFja1ZhbHVlV2l0aE5ld2x5Q3JlYXRlZDxJRExJbnRlcmZhY2U8QmxvYj4+KFt0aGlz
LCBjb250ZXh0XShhdXRvJikgeworICAgICAgICAgICAgcmV0dXJuIHRha2VBc0Jsb2IoY29udGV4
dCk7CiAgICAgICAgIH0pOwogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBUeXBlOjpKU09OOgpA
QCAtMzA0LDcgKzMwOCw3IEBAIHZvaWQgRmV0Y2hCb2R5Q29uc3VtZXI6OnJlc29sdmUoUmVmPERl
ZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlLCBjb25zdCBTdHJpbmcmIGNvCiAgICAgICAgIHJldHVy
bjsKICAgICBjYXNlIEZldGNoQm9keUNvbnN1bWVyOjpUeXBlOjpGb3JtRGF0YTogewogICAgICAg
ICBhdXRvIGJ1ZmZlciA9IHRha2VEYXRhKCk7Ci0gICAgICAgIGlmIChhdXRvIGZvcm1EYXRhID0g
cGFja2FnZUZvcm1EYXRhKGNvbnRlbnRUeXBlLCBidWZmZXIgPyBidWZmZXItPmRhdGEoKSA6IG51
bGxwdHIsIGJ1ZmZlciA/IGJ1ZmZlci0+c2l6ZSgpIDogMCkpCisgICAgICAgIGlmIChhdXRvIGZv
cm1EYXRhID0gcGFja2FnZUZvcm1EYXRhKGNvbnRleHQsIGNvbnRlbnRUeXBlLCBidWZmZXIgPyBi
dWZmZXItPmRhdGEoKSA6IG51bGxwdHIsIGJ1ZmZlciA/IGJ1ZmZlci0+c2l6ZSgpIDogMCkpCiAg
ICAgICAgICAgICBwcm9taXNlLT5yZXNvbHZlPElETEludGVyZmFjZTxET01Gb3JtRGF0YT4+KCpm
b3JtRGF0YSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHByb21pc2UtPnJlamVjdChUeXBl
RXJyb3IpOwpAQCAtMzQ5LDEzICszNTMsMTMgQEAgUmVmUHRyPEpTQzo6QXJyYXlCdWZmZXI+IEZl
dGNoQm9keUNvbnN1bWVyOjp0YWtlQXNBcnJheUJ1ZmZlcigpCiAgICAgcmV0dXJuIGFycmF5QnVm
ZmVyOwogfQogCi1SZWY8QmxvYj4gRmV0Y2hCb2R5Q29uc3VtZXI6OnRha2VBc0Jsb2IoKQorUmVm
PEJsb2I+IEZldGNoQm9keUNvbnN1bWVyOjp0YWtlQXNCbG9iKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQpCiB7CiAgICAgaWYgKCFtX2J1ZmZlcikKLSAgICAgICAgcmV0dXJuIEJsb2I6
OmNyZWF0ZShWZWN0b3I8dWludDhfdD4oKSwgQmxvYjo6bm9ybWFsaXplZENvbnRlbnRUeXBlKG1f
Y29udGVudFR5cGUpKTsKKyAgICAgICAgcmV0dXJuIEJsb2I6OmNyZWF0ZShjb250ZXh0LCBWZWN0
b3I8dWludDhfdD4oKSwgQmxvYjo6bm9ybWFsaXplZENvbnRlbnRUeXBlKG1fY29udGVudFR5cGUp
KTsKIAogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgdHJ5IHRvIG1vdmUgbV9idWZmZXIgdG8gQmxv
YiB3aXRob3V0IGRvaW5nIGV4dHJhIGNvcHkuCi0gICAgcmV0dXJuIGJsb2JGcm9tRGF0YShyZWlu
dGVycHJldF9jYXN0PGNvbnN0IHVuc2lnbmVkIGNoYXIqPihtX2J1ZmZlci0+ZGF0YSgpKSwgbV9i
dWZmZXItPnNpemUoKSwgbV9jb250ZW50VHlwZSk7CisgICAgcmV0dXJuIGJsb2JGcm9tRGF0YShj
b250ZXh0LCByZWludGVycHJldF9jYXN0PGNvbnN0IHVuc2lnbmVkIGNoYXIqPihtX2J1ZmZlci0+
ZGF0YSgpKSwgbV9idWZmZXItPnNpemUoKSwgbV9jb250ZW50VHlwZSk7CiB9CiAKIFN0cmluZyBG
ZXRjaEJvZHlDb25zdW1lcjo6dGFrZUFzVGV4dCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZldGNoL0ZldGNoQm9keUNvbnN1bWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZldGNoL0ZldGNoQm9keUNvbnN1bWVyLmgKaW5kZXggNDc5YzQ1MmZjMmZkODY2N2IwYTNi
MjQ3YzYwZDczN2JjOGM0MzU4ZC4uMzdkMDU0YjEwY2U4ZGJlZDE5MWM3Yjg1Zjg4MWRlZTQ2ZTA0
YjBkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaEJvZHlD
b25zdW1lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5Q29u
c3VtZXIuaApAQCAtNzUsNyArNzUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRBc0xvYWRpbmco
KSB7IG1faXNMb2FkaW5nID0gdHJ1ZTsgfQogCiBwcml2YXRlOgotICAgIFJlZjxCbG9iPiB0YWtl
QXNCbG9iKCk7CisgICAgUmVmPEJsb2I+IHRha2VBc0Jsb2IoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCopOwogICAgIHZvaWQgcmVzZXRDb25zdW1lUHJvbWlzZSgpOwogCiAgICAgVHlwZSBtX3R5cGU7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoQm9keU93bmVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5T3duZXIuY3BwCmlu
ZGV4IGU2OTJmMTYwMzdmOGY1MWRmOTFhZTVhNWYxMmE3MzZiZjFiYTliZmMuLmYyZDAwMmNkZDQ2
MWJlNmY1NmQwMWM3MGZmODg2ZTdmZWM1YjY0MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5T3duZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmV0Y2gvRmV0Y2hCb2R5T3duZXIuY3BwCkBAIC0xMjMsOCArMTIzLDkgQEAgdm9pZCBG
ZXRjaEJvZHlPd25lcjo6YmxvYihSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHByb21pc2UpCiAgICAg
fQogCiAgICAgaWYgKGlzQm9keU51bGxPck9wYXF1ZSgpKSB7Ci0gICAgICAgIHByb21pc2UtPnJl
c29sdmVDYWxsYmFja1ZhbHVlV2l0aE5ld2x5Q3JlYXRlZDxJRExJbnRlcmZhY2U8QmxvYj4+KFt0
aGlzXShhdXRvJikgewotICAgICAgICAgICAgcmV0dXJuIEJsb2I6OmNyZWF0ZShWZWN0b3I8dWlu
dDhfdD4geyB9LCBCbG9iOjpub3JtYWxpemVkQ29udGVudFR5cGUoZXh0cmFjdE1JTUVUeXBlRnJv
bU1lZGlhVHlwZShtX2NvbnRlbnRUeXBlKSkpOworICAgICAgICBhdXRvKiBjb250ZXh0ID0gcHJv
bWlzZS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOworICAgICAgICBwcm9taXNlLT5yZXNvbHZl
Q2FsbGJhY2tWYWx1ZVdpdGhOZXdseUNyZWF0ZWQ8SURMSW50ZXJmYWNlPEJsb2I+PihbdGhpcywg
Y29udGV4dF0oYXV0byYpIHsKKyAgICAgICAgICAgIHJldHVybiBCbG9iOjpjcmVhdGUoY29udGV4
dCwgVmVjdG9yPHVpbnQ4X3Q+IHsgfSwgQmxvYjo6bm9ybWFsaXplZENvbnRlbnRUeXBlKGV4dHJh
Y3RNSU1FVHlwZUZyb21NZWRpYVR5cGUobV9jb250ZW50VHlwZSkpKTsKICAgICAgICAgfSk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci5jcHAKaW5kZXggZTZmMmZmZjU2YjkyYWE1N2Zh
MjFhYjc2OTI5ZWExNTlhMzMyN2U4MC4uYjkxOGI1ZmQ5ZTEyMjEyNDUxOGUzYWMwYjU2MjEyODVl
MGJlMjI0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXJlY29yZGVy
L01lZGlhUmVjb3JkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFyZWNv
cmRlci9NZWRpYVJlY29yZGVyLmNwcApAQCAtMTgyLDcgKzE4Miw3IEBAIEV4Y2VwdGlvbk9yPHZv
aWQ+IE1lZGlhUmVjb3JkZXI6OnN0b3BSZWNvcmRpbmcoKQogICAgICAgICBxdWV1ZVRhc2tLZWVw
aW5nT2JqZWN0QWxpdmUoKnRoaXMsIFRhc2tTb3VyY2U6Ok5ldHdvcmtpbmcsIFt0aGlzLCBidWZm
ZXIgPSBXVEZNb3ZlKGJ1ZmZlciksIG1pbWVUeXBlXSgpIG11dGFibGUgewogICAgICAgICAgICAg
aWYgKCFtX2lzQWN0aXZlKQogICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIGRp
c3BhdGNoRXZlbnQoQmxvYkV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmRhdGFhdmFpbGFibGVF
dmVudCwgRXZlbnQ6OkNhbkJ1YmJsZTo6Tm8sIEV2ZW50OjpJc0NhbmNlbGFibGU6Ok5vLCBidWZm
ZXIgPyBCbG9iOjpjcmVhdGUoYnVmZmVyLnJlbGVhc2VOb25OdWxsKCksIG1pbWVUeXBlKSA6IEJs
b2I6OmNyZWF0ZSgpKSk7CisgICAgICAgICAgICBkaXNwYXRjaEV2ZW50KEJsb2JFdmVudDo6Y3Jl
YXRlKGV2ZW50TmFtZXMoKS5kYXRhYXZhaWxhYmxlRXZlbnQsIEV2ZW50OjpDYW5CdWJibGU6Ok5v
LCBFdmVudDo6SXNDYW5jZWxhYmxlOjpObywgYnVmZmVyID8gQmxvYjo6Y3JlYXRlKHNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoKSwgYnVmZmVyLnJlbGVhc2VOb25OdWxsKCksIG1pbWVUeXBlKSA6IEJs
b2I6OmNyZWF0ZShzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpKSk7CiAKICAgICAgICAgICAgIGlm
ICghbV9pc0FjdGl2ZSkKICAgICAgICAgICAgICAgICByZXR1cm47CkBAIC0yMDQsNyArMjA0LDcg
QEAgRXhjZXB0aW9uT3I8dm9pZD4gTWVkaWFSZWNvcmRlcjo6cmVxdWVzdERhdGEoKQogICAgICAg
ICAgICAgaWYgKCFtX2lzQWN0aXZlKQogICAgICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAg
ICAgICAgZGlzcGF0Y2hFdmVudChCbG9iRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGF0YWF2
YWlsYWJsZUV2ZW50LCBFdmVudDo6Q2FuQnViYmxlOjpObywgRXZlbnQ6OklzQ2FuY2VsYWJsZTo6
Tm8sIGJ1ZmZlciA/IEJsb2I6OmNyZWF0ZShidWZmZXIucmVsZWFzZU5vbk51bGwoKSwgbWltZVR5
cGUpIDogQmxvYjo6Y3JlYXRlKCkpKTsKKyAgICAgICAgICAgIGRpc3BhdGNoRXZlbnQoQmxvYkV2
ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmRhdGFhdmFpbGFibGVFdmVudCwgRXZlbnQ6OkNhbkJ1
YmJsZTo6Tm8sIEV2ZW50OjpJc0NhbmNlbGFibGU6Ok5vLCBidWZmZXIgPyBCbG9iOjpjcmVhdGUo
c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCBidWZmZXIucmVsZWFzZU5vbk51bGwoKSwgbWltZVR5
cGUpIDogQmxvYjo6Y3JlYXRlKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkpKTsKIAogICAgICAg
ICAgICAgaWYgKG1fdGltZVNsaWNlKQogICAgICAgICAgICAgICAgIG1fdGltZVNsaWNlVGltZXIu
c3RhcnRPbmVTaG90KFNlY29uZHM6OmZyb21NaWxsaXNlY29uZHMoKm1fdGltZVNsaWNlKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ0RhdGFDaGFu
bmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5u
ZWwuY3BwCmluZGV4IDAwMWQ0ZTI2NzUyYjBmNzU2M2ZjNTc4ZDI2NjJkZDFmMzQzZmNkNTkuLjIw
NjdhYzY3NDNlYzFkOTRiNzNjZTAzOTAzOWVhNDhmYzVkYTgxZGUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDRGF0YUNoYW5uZWwuY3BwCkBAIC0y
MDEsNyArMjAxLDcgQEAgdm9pZCBSVENEYXRhQ2hhbm5lbDo6ZGlkUmVjZWl2ZVJhd0RhdGEoY29u
c3QgY2hhciogZGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgpCiB7CiAgICAgc3dpdGNoIChtX2JpbmFy
eVR5cGUpIHsKICAgICBjYXNlIEJpbmFyeVR5cGU6OkJsb2I6Ci0gICAgICAgIHNjaGVkdWxlRGlz
cGF0Y2hFdmVudChNZXNzYWdlRXZlbnQ6OmNyZWF0ZShCbG9iOjpjcmVhdGUoU2hhcmVkQnVmZmVy
OjpjcmVhdGUoZGF0YSwgZGF0YUxlbmd0aCksIGVtcHR5U3RyaW5nKCkpLCB7IH0pKTsKKyAgICAg
ICAgc2NoZWR1bGVEaXNwYXRjaEV2ZW50KE1lc3NhZ2VFdmVudDo6Y3JlYXRlKEJsb2I6OmNyZWF0
ZShzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKGRhdGEsIGRh
dGFMZW5ndGgpLCBlbXB0eVN0cmluZygpKSwgeyB9KSk7CiAgICAgICAgIHJldHVybjsKICAgICBj
YXNlIEJpbmFyeVR5cGU6OkFycmF5QnVmZmVyOgogICAgICAgICBzY2hlZHVsZURpc3BhdGNoRXZl
bnQoTWVzc2FnZUV2ZW50OjpjcmVhdGUoQXJyYXlCdWZmZXI6OmNyZWF0ZShkYXRhLCBkYXRhTGVu
Z3RoKSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuY3Bw
CmluZGV4IDQxZGQxM2RlYTdlN2NhNzQ3NDZiNjY0NTk4ZDAzZDAwZGI0MWY1YTkuLmJiMmFlOTBl
NGRiMmE3MGM1NWQ3NDAzNDdiOTBmNDBkNzYxYWYwODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKQEAgLTk0LDcgKzk0LDggQEAgU3RyaW5nIGNv
bnZlcnRFbnVtZXJhdGlvblRvU3RyaW5nKEF1ZGlvTm9kZTo6Tm9kZVR5cGUgZW51bWVyYXRpb25W
YWx1ZSkKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpO
b2RlVHlwZUJhc2ljSW5zcGVjdG9yKSA9PSAxOCwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVCYXNpY0lu
c3BlY3RvciBpcyBub3QgMTggYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRp
Y19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUNvbnN0YW50KSA9PSAxOSwgIkF1ZGlv
Tm9kZTo6Tm9kZVR5cGVFbmQgaXMgbm90IDE5IGFzIGV4cGVjdGVkIik7CiAgICAgc3RhdGljX2Fz
c2VydChzdGF0aWNfY2FzdDxzaXplX3Q+KEF1ZGlvTm9kZTo6Tm9kZVR5cGVTdGVyZW8pID09IDIw
LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbyBpcyBub3QgMjAgYXMgZXhwZWN0ZWQiKTsKLSAg
ICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUVu
ZCkgPT0gMjEsICJBdWRpb05vZGU6Ok5vZGVUeXBlQ29uc3RhbnQgaXMgbm90IDIxIGFzIGV4cGVj
dGVkIik7CisgICAgc3RhdGljX2Fzc2VydChzdGF0aWNfY2FzdDxzaXplX3Q+KEF1ZGlvTm9kZTo6
Tm9kZVR5cGVJSVJGaWx0ZXIpID09IDIxLCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlciBp
cyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNp
emVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCkgPT0gMjIsICJBdWRpb05vZGU6Ok5vZGVUeXBl
Q29uc3RhbnQgaXMgbm90IDIyIGFzIGV4cGVjdGVkIik7CiAKICAgICBBU1NFUlQoc3RhdGljX2Nh
c3Q8c2l6ZV90PihlbnVtZXJhdGlvblZhbHVlKSA8IFdURl9BUlJBWV9MRU5HVEgodmFsdWVzKSk7
CiAgICAgCkBAIC01NTMsNyArNTU0LDcgQEAgdm9pZCBBdWRpb05vZGU6OmRpc2FibGVPdXRwdXRz
SWZOZWNlc3NhcnkoKQogICAgICAgICAvLyBsb25nZXIgYW55IGFjdGl2ZSBjb25uZWN0aW9ucy4K
ICAgICAgICAgLy8gQWxzbywgV2F2ZVNoYXBlck5vZGUgbWF5IHByb2R1Y2Ugbm9uLXNpbGVuY2Ug
ZXZlbiB3aGVuIGl0IG5vIGxvbmdlciBoYXMgYW55IG91dHB1dC4gRm9yIHRoaXMgcmVhc29uLCB3
ZSBjYW5ub3QKICAgICAgICAgLy8gZGlzYWJsZSBpdCBlaXRoZXIuCi0gICAgICAgIGlmIChub2Rl
VHlwZSgpICE9IE5vZGVUeXBlQ29udm9sdmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxh
eSAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlV2F2ZVNoYXBlcikgeworICAgICAgICBpZiAobm9k
ZVR5cGUoKSAhPSBOb2RlVHlwZUNvbnZvbHZlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlRGVs
YXkgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZVdhdmVTaGFwZXIgJiYgbm9kZVR5cGUoKSAhPSBO
b2RlVHlwZUlJUkZpbHRlcikgewogICAgICAgICAgICAgbV9pc0Rpc2FibGVkID0gdHJ1ZTsKICAg
ICAgICAgICAgIGZvciAoYXV0byYgb3V0cHV0IDogbV9vdXRwdXRzKQogICAgICAgICAgICAgICAg
IG91dHB1dC0+ZGlzYWJsZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9BdWRpb05vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVk
aW9Ob2RlLmgKaW5kZXggNzFiY2JkYzVjNjRjYmExNTFhOGM3ZWM1NWFhYzNkOGQxMWFlYzdjNy4u
Zjk2NWVhMDUyZGQ5OTk2MTdhMDM2MGIzN2RiOWZhNDlmY2IwZmMwMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oCkBAIC05MSw2ICs5MSw3IEBAIHB1Ymxp
YzoKICAgICAgICAgTm9kZVR5cGVCYXNpY0luc3BlY3RvciwKICAgICAgICAgTm9kZVR5cGVDb25z
dGFudCwKICAgICAgICAgTm9kZVR5cGVTdGVyZW8sCisgICAgICAgIE5vZGVUeXBlSUlSRmlsdGVy
LAogICAgICAgICBOb2RlVHlwZUVuZAogICAgIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3BwCmluZGV4IDgyNTQ0YzZhNjRj
MjllM2Q5NDUxNmEzM2Y3Zjc0MzFiODFkZWVlZWIuLjIzZTc2ZDhmMTUxNGFiZTA4NTNmN2NmNTMx
ODdiYWNiNGU3MTM4NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vQmFzZUF1ZGlvQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcApAQCAtNjAsNiArNjAsOCBAQAogI2luY2x1ZGUgIkdl
bmVyaWNFdmVudFF1ZXVlLmgiCiAjaW5jbHVkZSAiSFJURkRhdGFiYXNlTG9hZGVyLmgiCiAjaW5j
bHVkZSAiSFJURlBhbm5lci5oIgorI2luY2x1ZGUgIklJUkZpbHRlck5vZGUuaCIKKyNpbmNsdWRl
ICJJSVJGaWx0ZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiSlNBdWRpb0J1ZmZlci5oIgogI2luY2x1
ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgpAQCAtNjMw
LDYgKzYzMiwxNyBAQCBFeGNlcHRpb25PcjxSZWY8U3RlcmVvUGFubmVyTm9kZT4+IEJhc2VBdWRp
b0NvbnRleHQ6OmNyZWF0ZVN0ZXJlb1Bhbm5lcigpCiAgICAgcmV0dXJuIFN0ZXJlb1Bhbm5lck5v
ZGU6OmNyZWF0ZSgqdGhpcyk7CiB9CiAKK0V4Y2VwdGlvbk9yPFJlZjxJSVJGaWx0ZXJOb2RlPj4g
QmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlSUlSRmlsdGVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGZvcndhcmQsIFZl
Y3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spCit7CisgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVS
KTsKKworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgSUlSRmlsdGVyT3B0aW9ucyBv
cHRpb25zOworICAgIG9wdGlvbnMuZmVlZGZvcndhcmQgPSBXVEZNb3ZlKGZlZWRmb3J3YXJkKTsK
KyAgICBvcHRpb25zLmZlZWRiYWNrID0gV1RGTW92ZShmZWVkYmFjayk7CisgICAgcmV0dXJuIElJ
UkZpbHRlck5vZGU6OmNyZWF0ZShzY3JpcHRFeGVjdXRpb25Db250ZXh0LCAqdGhpcywgV1RGTW92
ZShvcHRpb25zKSk7Cit9CisKIHZvaWQgQmFzZUF1ZGlvQ29udGV4dDo6bm90aWZ5Tm9kZUZpbmlz
aGVkUHJvY2Vzc2luZyhBdWRpb05vZGUqIG5vZGUpCiB7CiAgICAgQVNTRVJUKGlzQXVkaW9UaHJl
YWQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VB
dWRpb0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlv
Q29udGV4dC5oCmluZGV4IDQ0YzJjZTc2ZTBkYzY1NzBiNWZmMWE1OTQ4YjkwZWJiMWRhYmI5M2Yu
LjY3ZjM0OTI0OTcwMWVjMDNiNjg4MDk0MWY4MWY5Yjg3NWJmYzg5ZTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oCkBAIC03MCw2
ICs3MCw3IEBAIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRHluYW1pY3NDb21wcmVzc29yTm9kZTsK
IGNsYXNzIEdhaW5Ob2RlOwogY2xhc3MgSFRNTE1lZGlhRWxlbWVudDsKK2NsYXNzIElJUkZpbHRl
ck5vZGU7CiBjbGFzcyBNYWluVGhyZWFkR2VuZXJpY0V2ZW50UXVldWU7CiBjbGFzcyBNZWRpYUVs
ZW1lbnRBdWRpb1NvdXJjZU5vZGU7CiBjbGFzcyBNZWRpYVN0cmVhbTsKQEAgLTc4LDYgKzc5LDcg
QEAgY2xhc3MgTWVkaWFTdHJlYW1BdWRpb1NvdXJjZU5vZGU7CiBjbGFzcyBPc2NpbGxhdG9yTm9k
ZTsKIGNsYXNzIFBhbm5lck5vZGU7CiBjbGFzcyBQZXJpb2RpY1dhdmU7CitjbGFzcyBTY3JpcHRF
eGVjdXRpb25Db250ZXh0OwogY2xhc3MgU2NyaXB0UHJvY2Vzc29yTm9kZTsKIGNsYXNzIFNlY3Vy
aXR5T3JpZ2luOwogY2xhc3MgU3RlcmVvUGFubmVyTm9kZTsKQEAgLTE2NCw2ICsxNjYsNyBAQCBw
dWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8UmVmPFBlcmlvZGljV2F2ZT4+IGNyZWF0ZVBlcmlvZGlj
V2F2ZShWZWN0b3I8ZmxvYXQ+JiYgcmVhbCwgVmVjdG9yPGZsb2F0PiYmIGltYWdpbmFyeSwgY29u
c3QgUGVyaW9kaWNXYXZlQ29uc3RyYWludHMmID0geyB9KTsKICAgICBFeGNlcHRpb25PcjxSZWY8
Q29uc3RhbnRTb3VyY2VOb2RlPj4gY3JlYXRlQ29uc3RhbnRTb3VyY2UoKTsKICAgICBFeGNlcHRp
b25PcjxSZWY8U3RlcmVvUGFubmVyTm9kZT4+IGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOworICAgIEV4
Y2VwdGlvbk9yPFJlZjxJSVJGaWx0ZXJOb2RlPj4gY3JlYXRlSUlSRmlsdGVyKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQmLCBWZWN0b3I8ZG91YmxlPiYmIGZlZWRmb3J3YXJkLCBWZWN0b3I8ZG91Ymxl
PiYmIGZlZWRiYWNrKTsKIAogICAgIC8vIFdoZW4gYSBzb3VyY2Ugbm9kZSBoYXMgbm8gbW9yZSBw
cm9jZXNzaW5nIHRvIGRvIChoYXMgZmluaXNoZWQgcGxheWluZyksIHRoZW4gaXQgdGVsbHMgdGhl
IGNvbnRleHQgdG8gZGVyZWZlcmVuY2UgaXQuCiAgICAgdm9pZCBub3RpZnlOb2RlRmluaXNoZWRQ
cm9jZXNzaW5nKEF1ZGlvTm9kZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKaW5kZXggYzY1Y2IxOTZiNzM2MWY5N2YwZjk5
YzA1ZjdhOWUxMDZiMGI0MWNhYS4uMzFmMDFiYmVlNDcxZmQ0NmVkMGFjNTg0NTg1NjRlYzM1ZTAy
NmE5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVk
aW9Db250ZXh0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VB
dWRpb0NvbnRleHQuaWRsCkBAIC02Niw2ICs2Niw3IEBACiAgICAgW01heVRocm93RXhjZXB0aW9u
XSBQZXJpb2RpY1dhdmUgY3JlYXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0PiByZWFsLCBz
ZXF1ZW5jZTxmbG9hdD4gaW1hZywgb3B0aW9uYWwgUGVyaW9kaWNXYXZlT3B0aW9ucyBvcHRpb25z
KTsKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIENvbnN0YW50U291cmNlTm9kZSBjcmVhdGVDb25z
dGFudFNvdXJjZSgpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gU3RlcmVvUGFubmVyTm9kZSBj
cmVhdGVTdGVyZW9QYW5uZXIoKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb24sIENhbGxXaXRoPVNj
cmlwdEV4ZWN1dGlvbkNvbnRleHRdIElJUkZpbHRlck5vZGUgY3JlYXRlSUlSRmlsdGVyKHNlcXVl
bmNlPGRvdWJsZT4gZmVlZGZvcndhcmQsIHNlcXVlbmNlPGRvdWJsZT4gZmVlZGJhY2spOwogCiAg
ICAgLy8gQ2hhbm5lbCBzcGxpdHRpbmcgYW5kIG1lcmdpbmcKICAgICBbTWF5VGhyb3dFeGNlcHRp
b25dIENoYW5uZWxTcGxpdHRlck5vZGUgY3JlYXRlQ2hhbm5lbFNwbGl0dGVyKG9wdGlvbmFsIHVu
c2lnbmVkIGxvbmcgbnVtYmVyT2ZPdXRwdXRzID0gNik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDQ2ZjE3YTEzZmMy
NWZkZDlmZTc3YjczOTUzNTM0NTUyOTQ2NzA2OAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2VybmVsLmNwcApAQCAtMCwwICsxLDcxIEBA
CisvKgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
CisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShXRUJf
QVVESU8pCisjaW5jbHVkZSAiSUlSRFNQS2VybmVsLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsK
KworSUlSRFNQS2VybmVsOjpJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJiBwcm9jZXNzb3IpCisg
ICAgOiBBdWRpb0RTUEtlcm5lbCgmcHJvY2Vzc29yKQorICAgICwgbV9paXJGaWx0ZXIocHJvY2Vz
c29yLmZlZWRmb3J3YXJkKCksIHByb2Nlc3Nvci5mZWVkYmFjaygpKQoreworICAgIG1fdGFpbFRp
bWUgPSBtX2lpckZpbHRlci50YWlsVGltZShwcm9jZXNzb3Iuc2FtcGxlUmF0ZSgpLCBwcm9jZXNz
b3IuaXNGaWx0ZXJTdGFibGUoKSk7Cit9CisKK3ZvaWQgSUlSRFNQS2VybmVsOjpnZXRGcmVxdWVu
Y3lSZXNwb25zZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3lIeiwgZmxv
YXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSkKK3sKKyAgICBBU1NFUlQoZnJl
cXVlbmN5SHopOworICAgIEFTU0VSVChtYWdSZXNwb25zZSk7CisgICAgQVNTRVJUKHBoYXNlUmVz
cG9uc2UpOworCisgICAgVmVjdG9yPGZsb2F0PiBmcmVxdWVuY3kobGVuZ3RoKTsKKyAgICBkb3Vi
bGUgbnlxdWlzdCA9IHRoaXMtPm55cXVpc3QoKTsKKworICAgIC8vIENvbnZlcnQgZnJvbSBmcmVx
dWVuY3kgaW4gSHogdG8gbm9ybWFsaXplZCBmcmVxdWVuY3kgKDAgLT4gMSksIHdpdGggMSBlcXVh
bCB0byB0aGUgTnlxdWlzdCBmcmVxdWVuY3kuCisgICAgZm9yICh1bnNpZ25lZCBrID0gMDsgayA8
IGxlbmd0aDsgKytrKQorICAgICAgICBmcmVxdWVuY3lba10gPSBmcmVxdWVuY3lIeltrXSAvIG55
cXVpc3Q7CisKKyAgICBtX2lpckZpbHRlci5nZXRGcmVxdWVuY3lSZXNwb25zZShsZW5ndGgsIGZy
ZXF1ZW5jeS5kYXRhKCksIG1hZ1Jlc3BvbnNlLCBwaGFzZVJlc3BvbnNlKTsKK30KKwordm9pZCBJ
SVJEU1BLZXJuZWw6OnByb2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0
aW9uLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQoreworICAgIEFTU0VSVChzb3VyY2UpOworICAg
IEFTU0VSVChkZXN0aW5hdGlvbik7CisKKyAgICBtX2lpckZpbHRlci5wcm9jZXNzKHNvdXJjZSwg
ZGVzdGluYXRpb24sIGZyYW1lc1RvUHJvY2Vzcyk7Cit9CisKK3ZvaWQgSUlSRFNQS2VybmVsOjpy
ZXNldCgpCit7CisgICAgbV9paXJGaWx0ZXIucmVzZXQoKTsKK30KKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9BVURJTykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2VybmVsLmggYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIyNjA3MmUyZGQ0
ZjhiMWVmMDA0MTBmZmViYWRkZGJkM2EzYTI5YTAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5oCkBAIC0wLDAgKzEsNTQgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
KyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJBdWRpb0RTUEtlcm5l
bC5oIgorI2luY2x1ZGUgIklJUkZpbHRlci5oIgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkRTUEtlcm5lbCBmaW5hbCA6IHB1Ymxp
YyBBdWRpb0RTUEtlcm5lbCB7CitwdWJsaWM6CisgICAgZXhwbGljaXQgSUlSRFNQS2VybmVsKElJ
UlByb2Nlc3NvciYpOworCisgICAgLy8gR2V0IHRoZSBtYWduaXR1ZGUgYW5kIHBoYXNlIHJlc3Bv
bnNlIG9mIHRoZSBmaWx0ZXIgYXQgdGhlIGdpdmVuIHNldCBvZiBmcmVxdWVuY2llcyAoaW4gSHop
LiBUaGUgcGhhc2UgcmVzcG9uc2UgaXMgaW4gcmFkaWFucy4KKyAgICB2b2lkIGdldEZyZXF1ZW5j
eVJlc3BvbnNlKHVuc2lnbmVkIGxlbmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9h
dCogbWFnUmVzcG9uc2UsIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKKworICAgIC8vIEF1ZGlvRFNQ
S2VybmVsCisgICAgdm9pZCBwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZsb2F0KiBkZXN0
aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykgZmluYWw7CisgICAgZG91YmxlIHRhaWxU
aW1lKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV90YWlsVGltZTsgfQorICAgIGRvdWJsZSBsYXRl
bmN5VGltZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIDA7IH0KKyAgICB2b2lkIHJlc2V0KCkgZmlu
YWw7CisKK3ByaXZhdGU6CisgICAgSUlSUHJvY2Vzc29yKiBpaXJQcm9jZXNzb3IoKSB7IHJldHVy
biBzdGF0aWNfY2FzdDxJSVJQcm9jZXNzb3IqPihwcm9jZXNzb3IoKSk7IH0KKworICAgIElJUkZp
bHRlciBtX2lpckZpbHRlcjsKKyAgICBkb3VibGUgbV90YWlsVGltZTsKK307CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vSUlSRmlsdGVyTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck5vZGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyOWYxNGExZDc3NWZmZTgzMjgxOWIyZThlODNh
ZTM0N2I0OGEyYzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck5vZGUuY3BwCkBAIC0wLDAgKzEsMTQwIEBACisvKgorICogQ29weXJp
Z2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAor
ICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
CisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShXRUJfQVVESU8pCisjaW5jbHVk
ZSAiSUlSRmlsdGVyTm9kZS5oIgorCisjaW5jbHVkZSAiSUlSRmlsdGVyLmgiCisjaW5jbHVkZSAi
U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1dURl9N
QUtFX0lTT19BTExPQ0FURURfSU1QTChJSVJGaWx0ZXJOb2RlKTsKKworLy8gRGV0ZXJtaW5lIGlm
IGZpbHRlciBpcyBzdGFibGUgYmFzZWQgb24gdGhlIGZlZWRiYWNrIGNvZWZmaWNpZW50cy4KKy8v
IFdlIGNvbXB1dGUgdGhlIHJlZmxlY3Rpb24gY29lZmZpY2llbnRzIGZvciB0aGUgZmlsdGVyLiBJ
ZiwgYXQgYW55CisvLyBwb2ludCwgdGhlIG1hZ25pdHVkZSBvZiB0aGUgcmVmbGVjdGlvbiBjb2Vm
ZmljaWVudCBpcyBncmVhdGVyIHRoYW4KKy8vIG9yIGVxdWFsIHRvIDEsIHRoZSBmaWx0ZXIgaXMg
ZGVjbGFyZWQgdW5zdGFibGUuCisvLworLy8gTGV0IEEoeikgYmUgdGhlIGZlZWRiYWNrIHBvbHlu
b21pYWwgZ2l2ZW4gYnkKKy8vICAgQVtuXSh6KSA9IDEgKyBhWzFdL3ogKyBhWzJdL3peMiArIC4u
LiArIGFbbl0vel5uCisvLworLy8gVGhlIGZpcnN0IHJlZmxlY3Rpb24gY29lZmZpY2llbnQga1tu
XSA9IGFbbl0uIFRoZW4sIHJlY3Vyc2l2ZWx5IGNvbXB1dGUKKy8vCisvLyAgIEFbbi0xXSh6KSA9
IChBW25dKHopIC0ga1tuXSpBW25dKDEveikvel5uKS8oMS1rW25dXjIpOworLy8KKy8vIHN0b3Bw
aW5nIGF0IEFbMV0oeikuIElmIGF0IGFueSBwb2ludCB8a1tuXXwgPj0gMSwgdGhlIGZpbHRlciBp
cyB1bnN0YWJsZS4KK3N0YXRpYyBib29sIGlzRmlsdGVyU3RhYmxlKGNvbnN0IFZlY3Rvcjxkb3Vi
bGU+JiBmZWVkYmFjaykKK3sKKyAgICAvLyBNYWtlIGEgY29weSBvZiB0aGUgZmVlZGJhY2sgY29l
ZmZpY2llbnRzCisgICAgVmVjdG9yPGRvdWJsZT4gY29lZmZpY2llbnRzKGZlZWRiYWNrKTsKKyAg
ICBpbnQgb3JkZXIgPSBjb2VmZmljaWVudHMuc2l6ZSgpIC0gMTsKKworICAgIC8vIElmIG5lY2Vz
c2FyeSwgbm9ybWFsaXplIGZpbHRlciBjb2VmZmljaWVudHMgc28gdGhhdCBjb25zdGFudCB0ZXJt
IGlzIDEuCisgICAgaWYgKGNvZWZmaWNpZW50c1swXSAhPSAxKSB7CisgICAgICAgIGZvciAoaW50
IG0gPSAxOyBtIDw9IG9yZGVyOyArK20pCisgICAgICAgICAgICBjb2VmZmljaWVudHNbbV0gLz0g
Y29lZmZpY2llbnRzWzBdOworICAgICAgICBjb2VmZmljaWVudHNbMF0gPSAxOworICAgIH0KKwor
ICAgIC8vIEJlZ2luIHJlY3Vyc2lvbiwgdXNpbmcgYSB3b3JrIGFycmF5IHRvIGhvbGQgaW50ZXJt
ZWRpYXRlIHJlc3VsdHMuCisgICAgVmVjdG9yPGRvdWJsZT4gd29yayhvcmRlciArIDEpOworICAg
IGZvciAoaW50IG4gPSBvcmRlcjsgbiA+PSAxOyAtLW4pIHsKKyAgICAgICAgZG91YmxlIGsgPSBj
b2VmZmljaWVudHNbbl07CisKKyAgICAgICAgaWYgKHN0ZDo6ZmFicyhrKSA+PSAxKQorICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIC8vIE5vdGUgdGhhdCBBW25dKDEveikvel5u
IGlzIGJhc2ljYWxseSB0aGUgY29lZmZpY2llbnRzIG9mIEFbbl0KKyAgICAgICAgLy8gaW4gcmV2
ZXJzZSBvcmRlci4KKyAgICAgICAgZG91YmxlIGZhY3RvciA9IDEgLSBrICogazsKKyAgICAgICAg
Zm9yIChpbnQgbSA9IDA7IG0gPD0gbjsgKyttKQorICAgICAgICAgICAgd29ya1ttXSA9IChjb2Vm
ZmljaWVudHNbbV0gLSBrICogY29lZmZpY2llbnRzW24gLSBtXSkgLyBmYWN0b3I7CisgICAgICAg
IGNvZWZmaWNpZW50cy5zd2FwKHdvcmspOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQor
CitFeGNlcHRpb25PcjxSZWY8SUlSRmlsdGVyTm9kZT4+IElJUkZpbHRlck5vZGU6OmNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0JiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBCYXNlQXVkaW9D
b250ZXh0JiBjb250ZXh0LCBJSVJGaWx0ZXJPcHRpb25zJiYgb3B0aW9ucykKK3sKKyAgICBpZiAo
Y29udGV4dC5pc1N0b3BwZWQoKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRT
dGF0ZUVycm9yIH07CisKKyAgICBjb250ZXh0LmxhenlJbml0aWFsaXplKCk7CisKKyAgICBpZiAo
IW9wdGlvbnMuZmVlZGZvcndhcmQuc2l6ZSgpIHx8IG9wdGlvbnMuZmVlZGZvcndhcmQuc2l6ZSgp
ID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1
cHBvcnRlZEVycm9yLCAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdl
ZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGF1dG8gbm9uWmVyb1ZhbHVlSW5kZXggPSBvcHRpb25z
LmZlZWRmb3J3YXJkLmZpbmRNYXRjaGluZyhbXShhdXRvJiB2YWx1ZSkgeyByZXR1cm4gISF2YWx1
ZTsgfSk7CisgICAgaWYgKG5vblplcm9WYWx1ZUluZGV4ID09IG5vdEZvdW5kKQorICAgICAgICBy
ZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJmZWVkZm9yd2FyZCBhcnJheSBt
dXN0IGNvbnRhaW4gYSBub24temVybyB2YWx1ZSJfcyB9OworCisgICAgaWYgKCFvcHRpb25zLmZl
ZWRiYWNrLnNpemUoKSB8fCBvcHRpb25zLmZlZWRiYWNrLnNpemUoKSA+IElJUkZpbHRlcjo6bWF4
T3JkZXIpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciwgImZl
ZWRiYWNrIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDIwIl9zIH07CisK
KyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2tbMF0pCisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgImZpcnN0IHZhbHVlIG9mIGZlZWRiYWNrIGFycmF5IGNhbm5v
dCBiZSB6ZXJvIl9zIH07CisKKyAgICBib29sIGlzRmlsdGVyU3RhYmxlID0gV2ViQ29yZTo6aXNG
aWx0ZXJTdGFibGUob3B0aW9ucy5mZWVkYmFjayk7CisgICAgaWYgKCFpc0ZpbHRlclN0YWJsZSkK
KyAgICAgICAgc2NyaXB0RXhlY3V0aW9uQ29udGV4dC5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdl
U291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpXYXJuaW5nLCAiSUlSRmlsdGVyIGlzIHVuc3RhYmxl
IHdpdGggcHJvdmlkZWQgZmVlZGJhY2sgY29lZmZpY2llbnRzIl9zKTsKKworICAgIGF1dG8gbm9k
ZSA9IGFkb3B0UmVmKCpuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCBvcHRpb25zLmZlZWRmb3J3
YXJkLCBvcHRpb25zLmZlZWRiYWNrLCBpc0ZpbHRlclN0YWJsZSkpOworCisgICAgYXV0byByZXN1
bHQgPSBub2RlLT5oYW5kbGVBdWRpb05vZGVPcHRpb25zKG9wdGlvbnMsIHsgMiwgQ2hhbm5lbENv
dW50TW9kZTo6TWF4LCBDaGFubmVsSW50ZXJwcmV0YXRpb246OlNwZWFrZXJzIH0pOworICAgIGlm
IChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiByZXN1bHQucmVsZWFzZUV4
Y2VwdGlvbigpOworCisgICAgcmV0dXJuIG5vZGU7Cit9CisKK0lJUkZpbHRlck5vZGU6OklJUkZp
bHRlck5vZGUoQmFzZUF1ZGlvQ29udGV4dCYgY29udGV4dCwgY29uc3QgVmVjdG9yPGRvdWJsZT4m
IGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0
ZXJTdGFibGUpCisgICAgOiBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZShjb250ZXh0KQoreworICAg
IHNldE5vZGVUeXBlKE5vZGVUeXBlSUlSRmlsdGVyKTsKKyAgICBtX3Byb2Nlc3NvciA9IG1ha2VV
bmlxdWU8SUlSUHJvY2Vzc29yPihjb250ZXh0LnNhbXBsZVJhdGUoKSwgMSwgZmVlZGZvcndhcmQs
IGZlZWRiYWNrLCBpc0ZpbHRlclN0YWJsZSk7CisKKyAgICBpbml0aWFsaXplKCk7Cit9CisKK0V4
Y2VwdGlvbk9yPHZvaWQ+IElJUkZpbHRlck5vZGU6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0
MzJBcnJheSYgZnJlcXVlbmN5SHosIEZsb2F0MzJBcnJheSYgbWFnUmVzcG9uc2UsIEZsb2F0MzJB
cnJheSYgcGhhc2VSZXNwb25zZSkKK3sKKyAgICBhdXRvIGV4cGVjdGVkTGVuZ3RoID0gZnJlcXVl
bmN5SHoubGVuZ3RoKCk7CisgICAgaWYgKG1hZ1Jlc3BvbnNlLmxlbmd0aCgpICE9IGV4cGVjdGVk
TGVuZ3RoIHx8IHBoYXNlUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGgpCisgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IsICJBcnJheXMgbXVzdCBo
YXZlIHRoZSBzYW1lIGxlbmd0aCJfcyB9OworCisgICAgLy8gTm90aGluZyB0byBkbyBpZiB0aGUg
bGVuZ3RoIGlzIDAuCisgICAgaWYgKGV4cGVjdGVkTGVuZ3RoID4gMCkKKyAgICAgICAgaWlyUHJv
Y2Vzc29yKCktPmdldEZyZXF1ZW5jeVJlc3BvbnNlKGV4cGVjdGVkTGVuZ3RoLCBmcmVxdWVuY3lI
ei5kYXRhKCksIG1hZ1Jlc3BvbnNlLmRhdGEoKSwgcGhhc2VSZXNwb25zZS5kYXRhKCkpOworCisg
ICAgcmV0dXJuIHsgfTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8g
RU5BQkxFKFdFQl9BVURJTykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vSUlSRmlsdGVyTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9J
SVJGaWx0ZXJOb2RlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDZhMDUwMzY3OWEzNzA4OTdmNzA0NGRjMDQ1MDNh
ZmI4MzdlOWQ3NAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vSUlSRmlsdGVyTm9kZS5oCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQg
MjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAq
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZS5oIgorI2lu
Y2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIKKyNpbmNsdWRlICJJSVJQcm9jZXNzb3IuaCIKKyNp
bmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9GbG9hdDMyQXJyYXkuaD4KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBJSVJGaWx0ZXJOb2RlIGZpbmFsIDogcHVibGljIEF1ZGlvQmFzaWNQcm9j
ZXNzb3JOb2RlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKElJUkZpbHRlck5vZGUpOwor
cHVibGljOgorICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8SUlSRmlsdGVyTm9kZT4+IGNyZWF0
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgQmFzZUF1ZGlvQ29udGV4dCYsIElJUkZpbHRlck9w
dGlvbnMmJik7CisKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBnZXRGcmVxdWVuY3lSZXNwb25zZShG
bG9hdDMyQXJyYXkmIGZyZXF1ZW5jeUh6LCBGbG9hdDMyQXJyYXkmIG1hZ1Jlc3BvbnNlLCBGbG9h
dDMyQXJyYXkmIHBoYXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJUkZpbHRlck5vZGUo
QmFzZUF1ZGlvQ29udGV4dCYsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29u
c3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3RhYmxlKTsKKworICAg
IElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29yKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8SUlSUHJv
Y2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUu
aWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmlkbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5iZGRjNWFjM2NmMjc4OWMxMzczY2ZmMjA0Njc3ODQxODRjZTY0YzIyCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmlkbApAQCAtMCwwICsxLDMyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAgQ29uZGl0aW9uYWw9
V0VCX0FVRElPLAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorICAgIEVuYWJsZWRCeVNldHRp
bmc9TW9kZXJuVW5wcmVmaXhlZFdlYkF1ZGlvLAorXSBpbnRlcmZhY2UgSUlSRmlsdGVyTm9kZSA6
IEF1ZGlvTm9kZSB7CisgICAgW01heVRocm93RXhjZXB0aW9uLCBDYWxsV2l0aD1TY3JpcHRFeGVj
dXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihCYXNlQXVkaW9Db250ZXh0IGF1ZGlvQ29udGV4dCwg
SUlSRmlsdGVyT3B0aW9ucyBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHZvaWQg
Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5IGZyZXF1ZW5jeUh6LCBGbG9hdDMyQXJy
YXkgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSBwaGFzZVJlc3BvbnNlKTsKK307CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjFiMDJmNTk3NjM5NTRkNDIzZjU0YjQ3MmVkZjFlZjliMGM2ZjFlMzEKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlv
bnMuaApAQCAtMCwwICsxLDQxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEVO
QUJMRShXRUJfQVVESU8pCisKKyNpbmNsdWRlICJBdWRpb05vZGVPcHRpb25zLmgiCisjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVjdCBJSVJGaWx0
ZXJPcHRpb25zIDogQXVkaW9Ob2RlT3B0aW9ucyB7CisgICAgVmVjdG9yPGRvdWJsZT4gZmVlZGZv
cndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gZmVlZGJhY2s7Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25zLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5pZGwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNjFmMzQ3ODc3MWVlMTI0OTFiYjZhNTAxZTVmOGIyZTI4MjI2MWUzMQotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5p
ZGwKQEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworWworICAgIENvbmRpdGlvbmFsPVdFQl9B
VURJTworXSBkaWN0aW9uYXJ5IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05vZGVPcHRpb25zIHsK
KyAgICByZXF1aXJlZCBzZXF1ZW5jZTxkb3VibGU+IGZlZWRmb3J3YXJkOworICAgIHJlcXVpcmVk
IHNlcXVlbmNlPGRvdWJsZT4gZmVlZGJhY2s7Cit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1YjQyNzMwOWEzNzcx
MjQyYWEwMDVkY2NiZTA1OWZlZGVkZGIwMzEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5jcHAKQEAgLTAsMCArMSwxMDUgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
KyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9B
VURJTykKKyNpbmNsdWRlICJJSVJQcm9jZXNzb3IuaCIKKworI2luY2x1ZGUgIklJUkRTUEtlcm5l
bC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0lJUlByb2Nlc3Nvcjo6SUlSUHJvY2Vzc29y
KGZsb2F0IHNhbXBsZVJhdGUsIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMsIGNvbnN0IFZlY3Rv
cjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrLCBi
b29sIGlzRmlsdGVyU3RhYmxlKQorICAgIDogQXVkaW9EU1BLZXJuZWxQcm9jZXNzb3Ioc2FtcGxl
UmF0ZSwgbnVtYmVyT2ZDaGFubmVscykKKyAgICAsIG1fZmVlZGZvcndhcmQoZmVlZGZvcndhcmQp
CisgICAgLCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQorICAgICwgbV9pc0ZpbHRlclN0YWJsZShpc0Zp
bHRlclN0YWJsZSkKK3sKKyAgICB1bnNpZ25lZCBmZWVkYmFja0xlbmd0aCA9IGZlZWRiYWNrLnNp
emUoKTsKKyAgICB1bnNpZ25lZCBmZWVkZm9yd2FyZExlbmd0aCA9IGZlZWRmb3J3YXJkLnNpemUo
KTsKKyAgICBBU1NFUlQoZmVlZGJhY2tMZW5ndGggPiAwKTsKKyAgICBBU1NFUlQoZmVlZGZvcndh
cmRMZW5ndGggPiAwKTsKKworICAgIC8vIE5lZWQgdG8gc2NhbGUgdGhlIGZlZWRiYWNrIGFuZCBm
ZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgYXBwcm9wcmlhdGVseS4KKyAgICAvLyAoSXQncyB1cCB0
byB0aGUgY2FsbGVyIHRvIGVuc3VyZSBmZWVkYmFja0NvZWZbMF0gaXMgbm90IDAuKQorICAgIEFT
U0VSVCghIWZlZWRiYWNrWzBdKTsKKworICAgIGlmIChmZWVkYmFja1swXSAhPSAxKSB7CisgICAg
ICAgIC8vIFRoZSBwcm92aWRlZCBmaWx0ZXIgaXM6CisgICAgICAgIC8vCisgICAgICAgIC8vICAg
YVswXSp5KG4pICsgYVsxXSp5KG4tMSkgKyAuLi4gPSBiWzBdKngobikgKyBiWzFdKngobi0xKSAr
IC4uLgorICAgICAgICAvLworICAgICAgICAvLyBXZSB3YW50IHRoZSBsZWFkaW5nIGNvZWZmaWNp
ZW50IG9mIHkobikgdG8gYmUgMToKKyAgICAgICAgLy8KKyAgICAgICAgLy8gICB5KG4pICsgYVsx
XS9hWzBdKnkobi0xKSArIC4uLiA9IGJbMF0vYVswXSp4KG4pICsgYlsxXS9hWzBdKngobi0xKSAr
IC4uLgorICAgICAgICAvLworICAgICAgICAvLyBUaHVzLCB0aGUgZmVlZGJhY2sgYW5kIGZlZWRm
b3J3YXJkIGNvZWZmaWNpZW50cyBuZWVkIHRvIGJlIHNjYWxlZCBieSAxL2FbMF0uCisgICAgICAg
IGZsb2F0IHNjYWxlID0gZmVlZGJhY2tbMF07CisgICAgICAgIGZvciAodW5zaWduZWQgayA9IDE7
IGsgPCBmZWVkYmFja0xlbmd0aDsgKytrKQorICAgICAgICAgICAgbV9mZWVkYmFja1trXSAvPSBz
Y2FsZTsKKworICAgICAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgZmVlZGZvcndhcmRMZW5n
dGg7ICsraykKKyAgICAgICAgICAgIG1fZmVlZGZvcndhcmRba10gLz0gc2NhbGU7CisKKyAgICAg
ICAgLy8gVGhlIElJUkZpbHRlciBjaGVja3MgdG8gbWFrZSBzdXJlIHRoaXMgY29lZmZpY2llbnQg
aXMgMSwgc28gbWFrZSBpdCBzby4KKyAgICAgICAgbV9mZWVkYmFja1swXSA9IDE7CisgICAgfQor
CisgICAgbV9yZXNwb25zZUtlcm5lbCA9IG1ha2VVbmlxdWU8SUlSRFNQS2VybmVsPigqdGhpcyk7
Cit9CisKK0lJUlByb2Nlc3Nvcjo6fklJUlByb2Nlc3NvcigpCit7CisgICAgaWYgKGlzSW5pdGlh
bGl6ZWQoKSkKKyAgICAgICAgdW5pbml0aWFsaXplKCk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjxB
dWRpb0RTUEtlcm5lbD4gSUlSUHJvY2Vzc29yOjpjcmVhdGVLZXJuZWwoKQoreworICAgIHJldHVy
biBtYWtlVW5pcXVlPElJUkRTUEtlcm5lbD4oKnRoaXMpOworfQorCit2b2lkIElJUlByb2Nlc3Nv
cjo6cHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyogZGVzdGluYXRpb24s
IHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgaWYgKCFpc0luaXRpYWxpemVkKCkpIHsK
KyAgICAgICAgZGVzdGluYXRpb24tPnplcm8oKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIC8vIEZvciBlYWNoIGNoYW5uZWwgb2Ygb3VyIGlucHV0LCBwcm9jZXNzIHVzaW5nIHRoZSBj
b3JyZXNwb25kaW5nIElJUkRTUEtlcm5lbAorICAgIC8vIGludG8gdGhlIG91dHB1dCBjaGFubmVs
LgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9rZXJuZWxzLnNpemUoKTsgKytpKQorICAg
ICAgICBtX2tlcm5lbHNbaV0tPnByb2Nlc3Moc291cmNlLT5jaGFubmVsKGkpLT5kYXRhKCksIGRl
c3RpbmF0aW9uLT5jaGFubmVsKGkpLT5tdXRhYmxlRGF0YSgpLCBmcmFtZXNUb1Byb2Nlc3MpOwor
fQorCit2b2lkIElJUlByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVu
Z3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQq
IHBoYXNlUmVzcG9uc2UpCit7CisgICAgbV9yZXNwb25zZUtlcm5lbC0+Z2V0RnJlcXVlbmN5UmVz
cG9uc2UobGVuZ3RoLCBmcmVxdWVuY3lIeiwgbWFnUmVzcG9uc2UsIHBoYXNlUmVzcG9uc2UpOwor
fQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElP
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNz
b3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSUHJvY2Vzc29yLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNDRjNWVkOWRmOGU1OWI3ZTczYzIwNGViMGMzYTE0MjY1Y2E2NDJkZAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSUHJvY2Vzc29y
LmgKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1bSBB
dXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lu
Y2x1ZGUgIkF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkRTUEtlcm5lbDsKKworY2xhc3Mg
SUlSUHJvY2Vzc29yIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yIHsKK3B1
YmxpYzoKKyAgICBJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5zaWduZWQgbnVtYmVy
T2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0
b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOworICAgIH5JSVJQcm9j
ZXNzb3IoKTsKKworICAgIC8vIEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLgorICAgIHZvaWQgcHJv
Y2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyogZGVzdGluYXRpb24sIHNpemVf
dCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOworICAgIHN0ZDo6dW5pcXVlX3B0cjxBdWRpb0RTUEtl
cm5lbD4gY3JlYXRlS2VybmVsKCkgZmluYWw7CisKKyAgICAvLyBHZXQgdGhlIG1hZ25pdHVkZSBh
bmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4gc2V0IG9mIGZyZXF1
ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBpbiByYWRpYW5zLgorICAgIHZv
aWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJl
cXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpOworCisg
ICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkKCkgY29uc3QgeyByZXR1cm4gbV9m
ZWVkZm9yd2FyZDsgfQorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaygpIGNvbnN0
IHsgcmV0dXJuIG1fZmVlZGJhY2s7IH0KKyAgICBib29sIGlzRmlsdGVyU3RhYmxlKCkgY29uc3Qg
eyByZXR1cm4gbV9pc0ZpbHRlclN0YWJsZTsgfQorCitwcml2YXRlOgorICAgIFZlY3Rvcjxkb3Vi
bGU+IG1fZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVkYmFjazsKKyAgICBi
b29sIG1faXNGaWx0ZXJTdGFibGU7CisKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8SUlSRFNQS2VybmVs
PiBtX3Jlc3BvbnNlS2VybmVsOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0LmNwcAppbmRleCBhMTA5
NTBkMGU0MWQ3MmNkYTQyNTI4NGVlODVkOGI3MTgzZTI2M2IzLi40NDJlODNjMThkMzI1Y2E2MWM0
NjhhMDI1MTMxODEyMjA2MWRlMmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYnNvY2tldHMvV2ViU29ja2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YnNvY2tldHMvV2ViU29ja2V0LmNwcApAQCAtNTk1LDcgKzU5NSw3IEBAIHZvaWQgV2ViU29ja2V0
OjpkaWRSZWNlaXZlQmluYXJ5RGF0YShWZWN0b3I8dWludDhfdD4mJiBiaW5hcnlEYXRhKQogICAg
IHN3aXRjaCAobV9iaW5hcnlUeXBlKSB7CiAgICAgY2FzZSBCaW5hcnlUeXBlOjpCbG9iOgogICAg
ICAgICAvLyBGSVhNRTogV2UganVzdCByZWNlaXZlZCB0aGUgZGF0YSBmcm9tIE5ldHdvcmtQcm9j
ZXNzLCBhbmQgYXJlIHNlbmRpbmcgaXQgYmFjay4gVGhpcyBpcyBpbmVmZmljaWVudC4KLSAgICAg
ICAgZGlzcGF0Y2hFdmVudChNZXNzYWdlRXZlbnQ6OmNyZWF0ZShCbG9iOjpjcmVhdGUoV1RGTW92
ZShiaW5hcnlEYXRhKSwgZW1wdHlTdHJpbmcoKSksIFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUobV91
cmwpLT50b1N0cmluZygpKSk7CisgICAgICAgIGRpc3BhdGNoRXZlbnQoTWVzc2FnZUV2ZW50Ojpj
cmVhdGUoQmxvYjo6Y3JlYXRlKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgV1RGTW92ZShiaW5h
cnlEYXRhKSwgZW1wdHlTdHJpbmcoKSksIFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUobV91cmwpLT50
b1N0cmluZygpKSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQmluYXJ5VHlwZTo6QXJyYXlC
dWZmZXI6CiAgICAgICAgIGRpc3BhdGNoRXZlbnQoTWVzc2FnZUV2ZW50OjpjcmVhdGUoQXJyYXlC
dWZmZXI6OmNyZWF0ZShiaW5hcnlEYXRhLmRhdGEoKSwgYmluYXJ5RGF0YS5zaXplKCkpLCBTZWN1
cml0eU9yaWdpbjo6Y3JlYXRlKG1fdXJsKS0+dG9TdHJpbmcoKSkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dvcmtlclRocmVhZGFibGVXZWJTb2NrZXRD
aGFubmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9Xb3JrZXJUaHJl
YWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5jcHAKaW5kZXggYzliZWM3YTdkNTQ0NzhlZWQzZTE2YTRi
M2Y1NGJhNTRjZjM4Mzg4Zi4uMmRjOGUxNDIwNThhNmUyYmI3MWYyNWRmNDlmYzJhZGMzNDRhZDAx
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dvcmtlclRo
cmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYnNvY2tldHMvV29ya2VyVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuY3BwCkBAIC00Nzgs
NyArNDc4LDcgQEAgVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWw6OlNlbmRSZXN1bHQgV29ya2Vy
VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWw6OkJyaWRnZToKICAgICAgICAgQVNTRVJUX1VOVVNF
RChjb250ZXh0LCBjb250ZXh0LmlzRG9jdW1lbnQoKSk7CiAgICAgICAgIEFTU0VSVChwZWVyKTsK
IAotICAgICAgICBwZWVyLT5zZW5kKEJsb2I6OmRlc2VyaWFsaXplKHVybCwgdHlwZSwgc2l6ZSwg
eyB9KSk7CisgICAgICAgIHBlZXItPnNlbmQoQmxvYjo6ZGVzZXJpYWxpemUoJmNvbnRleHQsIHVy
bCwgdHlwZSwgc2l6ZSwgeyB9KSk7CiAgICAgfSk7CiAKICAgICBSZWY8QnJpZGdlPiBwcm90ZWN0
ZWRUaGlzKCp0aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0IGIv
U291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKaW5kZXggZGU0OWZkMjY2YjZhODRiOWM4NTNiNmM1
ZDk0ZmUzOGIyNjAzMTMzNy4uMzYyNjY1YWIxNzEzMWYyY2YzN2Y4YWRmODkwNTQwNWJmMjk3MjZj
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dl
YkNvcmUvU291cmNlcy50eHQKQEAgLTIyMSw2ICsyMjEsOSBAQCBNb2R1bGVzL3dlYmF1ZGlvL0Rl
bGF5Tm9kZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vRGVsYXlQcm9jZXNzb3IuY3BwCiBNb2R1bGVz
L3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlvL0dh
aW5Ob2RlLmNwcAorTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BLZXJuZWwuY3BwCitNb2R1bGVzL3dl
YmF1ZGlvL0lJUkZpbHRlck5vZGUuY3BwCitNb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5j
cHAKIE1vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmNwcAogTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmNwcAogTW9kdWxl
cy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvU291cmNlLmNwcApAQCAtMTc5OSw2ICsxODAyLDcg
QEAgcGxhdGZvcm0vYXVkaW8vSFJURkRhdGFiYXNlTG9hZGVyLmNwcAogcGxhdGZvcm0vYXVkaW8v
SFJURkVsZXZhdGlvbi5jcHAKIHBsYXRmb3JtL2F1ZGlvL0hSVEZLZXJuZWwuY3BwCiBwbGF0Zm9y
bS9hdWRpby9IUlRGUGFubmVyLmNwcAorcGxhdGZvcm0vYXVkaW8vSUlSRmlsdGVyLmNwcAogcGxh
dGZvcm0vYXVkaW8vTXVsdGlDaGFubmVsUmVzYW1wbGVyLmNwcAogcGxhdGZvcm0vYXVkaW8vUGFu
bmVyLmNwcAogcGxhdGZvcm0vYXVkaW8vUGxhdGZvcm1NZWRpYVNlc3Npb24uY3BwCkBAIC0zMDM0
LDYgKzMwMzgsOCBAQCBKU0lEQlZlcnNpb25DaGFuZ2VFdmVudC5jcHAKIEpTSWRsZURlYWRsaW5l
LmNwcAogSlNJZGxlUmVxdWVzdENhbGxiYWNrLmNwcAogSlNJZGxlUmVxdWVzdE9wdGlvbnMuY3Bw
CitKU0lJUkZpbHRlck5vZGUuY3BwCitKU0lJUkZpbHRlck9wdGlvbnMuY3BwCiBKU0ltYWdlQml0
bWFwLmNwcAogSlNJbWFnZUJpdG1hcE9wdGlvbnMuY3BwCiBKU0ltYWdlQml0bWFwUmVuZGVyaW5n
Q29udGV4dC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCAzYTM2MWFhOThlOWMyN2IzOWY3MmJjMjVhZjk4ZmYwMGNhNjAzYjMw
Li5kYzI5ODNiYjUzY2I5MWVhN2ZiZTg4MGE1ZGVkMmVhMmEzZDM2MWY1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yNDMzLDYg
KzI0MzMsNyBAQAogCQk4MzA3ODRCMjFDNTJFRTJDMDAxMDREMUQgLyogWE1MRG9jdW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMDc4NEIxMUM1
MkVFMTkwMDEwNEQxRCAvKiBYTUxEb2N1bWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCTgzMEExQzdEMjREQjc4OEIwMDJFQ0NBRCAvKiBNZWRp
YUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzMEExQzdDMjREQjc4NzAwMDJFQ0NBRCAvKiBNZWRpYUVsZW1l
bnRBdWRpb1NvdXJjZU9wdGlvbnMuaCAqLzsgfTsKIAkJODMwQTM2QkQxREFDNUZBRDAwNkQ3RDA5
IC8qIEpTTW91c2VFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzMEEzNkJCMURBQzVGQTcwMDZEN0QwOSAvKiBKU01vdXNlRXZlbnRJbml0
LmggKi87IH07CisJCTgzMEQwQjY5MjRGNTdENjcwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMEQwQjY2MjRG
NTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCAqLzsgfTsKIAkJODMwRUVBQkEyNERCNkE2
NDAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMEVFQUI3MjREQjZBNTIwMDlFRkJD
RSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi87IH07CiAJCTgzMTAyQjI3MUY5
RUFERDkwMEU0MDRCOSAvKiBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMTAyQjIzMUY5RUFEQzIwMEU0MDRC
OSAvKiBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuaCAqLzsgfTsKIAkJODMxMUMwMDMxRkFBMkU5
NTAwRTNDOEU1IC8qIFNXU2VydmVySm9iUXVldWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMTFDMDAyMUZBQTJFODkwMEUzQzhFNSAvKiBTV1NlcnZl
ckpvYlF1ZXVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKQEAgLTI0NTksMTIgKzI0NjAsMTUgQEAKIAkJODM0OEJGQUMxQjg1NzI5ODAwOTEyRjM2IC8q
IENsYXNzQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODM0OEJGQUExQjg1NzI5NTAwOTEyRjM2IC8qIENsYXNzQ29sbGVjdGlvbi5oICov
OyB9OwogCQk4MzRDQkZDMjI0REM3ODY3MDBDMkEzRDggLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJj
ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNENCRkJGMjREQzc4NTUwMEMyQTNEOCAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlT3B0aW9u
cy5oICovOyB9OwogCQk4MzRERkFEMDFGN0RBRTVEMDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFz
aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM0REZB
Q0MxRjdEQUU1NjAwQzI3MjVCIC8qIFNoYXJlZFN0cmluZ0hhc2guaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4MzUwNTFBNDI0RjU3M0M0MDA5OTEx
RDcgLyogSUlSRmlsdGVyTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODM1MDUxQTIyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCAq
LzsgfTsKKwkJODM1MDUxQTUyNEY1NzNDODAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTA1MUEwMjRG
NTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggKi87IH07CiAJCTgzNTIwQzdFMUE3
MUJGQ0MwMDZCRDJBQSAvKiBDU1NGb250RmFtaWx5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzUyMEM3RDFBNzFCRkNDMDA2QkQyQUEgLyogQ1NTRm9u
dEZhbWlseS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTgzNTZGOTdGMjREOUY4MTgwMDZDM0U0MSAvKiBXZWJLaXRBdWRpb0xpc3RlbmVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzU2Rjk3RTI0RDlG
ODA5MDA2QzNFNDEgLyogV2ViS2l0QXVkaW9MaXN0ZW5lci5oICovOyB9OwogCQk4MzU4Q0I3MDFD
NTMyNzc1MDBFMEMyRDggLyogSlNYTUxEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNGNTcwQUQxQzUzMjY4RTAwN0ZENkNCIC8qIEpTWE1M
RG9jdW1lbnQuaCAqLzsgfTsKIAkJODM1RDJENzgxRjVGMUZCRDAwMTQxREVEIC8qIEhUTUxJbnB1
dEVsZW1lbnRFbnRyaWVzQVBJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzVEMkQ3NTFGNUYxRkI4MDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVu
dHJpZXNBUEkuaCAqLzsgfTsKIAkJODM1RDM2MzcxOUZGNjE5MzAwNEM5M0FCIC8qIFN0eWxlQnVp
bGRlckN1c3RvbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODM1RDM2MzYxOUZGNjE5MzAwNEM5M0FCIC8qIFN0eWxlQnVpbGRlckN1c3RvbS5oICovOyB9
OwogCQk4MzVENTRDNTFGNERFNTM4MDBFNjA2NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVENTRD
MjFGNERFNTM0MDBFNjA2NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmggKi87IH07CisJ
CTgzNURBOTAyMjRGNTgyNjUwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNURBOTAxMjRGNTgyNTcwMDIyRERB
NCAvKiBJSVJEU1BLZXJuZWwuaCAqLzsgfTsKIAkJODM2MkU4QzEyMENFRjlDQjAwMjQ1ODg2IC8q
IFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODM2MkU4QkYyMENFRjlDQjAwMjQ1ODg2IC8qIFNob3VsZFRy
ZWF0QXNDb250aW51aW5nTG9hZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCTgzNjU4OURFMUY1NEE3NjkwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1E
aXJlY3RvcnlSZWFkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDgzNjU4OUQ5MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlS
ZWFkZXIuaCAqLzsgfTsKIAkJODM2NTg5RTAxRjU0QTc2RTAwREMzMUY0IC8qIEpTRmlsZVN5c3Rl
bUVudHJpZXNDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODM2NTg5RDgxRjU0QTc2MjAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbUVudHJpZXND
YWxsYmFjay5oICovOyB9OwpAQCAtMjUwNCw2ICsyNTA4LDcgQEAKIAkJODM5OTQ3MTAxRjUwQjZG
QTAwRTlEODZCIC8qIEpTRE9NRmlsZVN5c3RlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODM5OTQ3MEUxRjUwQjZGMzAwRTlEODZCIC8qIEpTRE9NRmls
ZVN5c3RlbS5oICovOyB9OwogCQk4MzlBMkYyRTFFMjA0QTcxMDAzOTA1N0UgLyogV2ViR0xTdGF0
ZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzOUEyRjJDMUUyMDRBNkQwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTgzOUFBRkVEMUEwQzBD
OEQwMDYwNUY5OSAvKiBIVE1MV0JSRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QUFGRUIxQTBDMEM4RDAwNjA1Rjk5IC8qIEhUTUxXQlJF
bGVtZW50LmggKi87IH07CisJCTgzOUJFNkQ1MjRGNTg3NjIwMDRERjUwRiAvKiBJSVJGaWx0ZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOUJFNkQy
MjRGNTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLzsgfTsKIAkJODNBMkFCREIyNEQ4NkRF
MDAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODNBMkFCRDgyNEQ4NkRDNjAwRTJENzNEIC8qIERlbGF5T3B0aW9u
cy5oICovOyB9OwogCQk4M0E4QUM0MDFGQUJCRkU1MDAyMDY0QUMgLyogU2VydmljZVdvcmtlcklk
ZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzQThBQzNFMUZBQkJGRDEwMDIwNjRBQyAvKiBTZXJ2aWNlV29ya2VySWRlbnRpZmllci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTgzQjFBNzAy
MjQ5OTg1RjAwMEZFNTk2MSAvKiBXZWJLaXRBdWRpb0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzQjFBNkZGMjQ5OTg1RDAwMEZFNTk2MSAv
KiBXZWJLaXRBdWRpb0NvbnRleHQuaCAqLzsgfTsKQEAgLTEwNDQ1LDYgKzEwNDUwLDggQEAKIAkJ
ODMwQTFDN0MyNERCNzg3MDAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9u
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODMwQTM2QkExREFDNUZBNzAwNkQ3RDA5IC8qIEpT
TW91c2VFdmVudEluaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNNb3VzZUV2ZW50SW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEEz
NkJCMURBQzVGQTcwMDZEN0QwOSAvKiBKU01vdXNlRXZlbnRJbml0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTTW91c2VFdmVudEluaXQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODMwRDBCNjYyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJSVJQcm9jZXNzb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODMwRDBCNjgyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBJSVJQcm9jZXNzb3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk4MzBFRUFCNzI0REI2QTUyMDA5RUZCQ0UgLyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9k
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEVFQUI5MjREQjZBNTIwMDlFRkJDRSAvKiBXZWJL
aXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJLaXREeW5hbWljc0NvbXByZXNz
b3JOb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODMxMDJCMjMxRjlFQURD
MjAwRTQwNEI5IC8qIEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTEwNDk4LDYgKzEwNTA1LDExIEBACiAJCTgzNERENEYzMUJFMDg5
ODkwMDJDOUMzRSAvKiBQYWdlTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gUGFnZU1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM0REZB
Q0MxRjdEQUU1NjAwQzI3MjVCIC8qIFNoYXJlZFN0cmluZ0hhc2guaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2hhcmVkU3RyaW5nSGFzaC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk4MzRERkFDRTFGN0RBRTU3MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaGFyZWRTdHJpbmdIYXNo
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxOUUyNEY1NzNBRDAwOTkx
MUQ3IC8qIElJUkZpbHRlck5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSUlSRmlsdGVyTm9k
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTA1MUEwMjRGNTczQUUwMDk5
MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElJUkZpbHRlck9wdGlv
bnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTEyNEY1NzNBRTAwOTkx
MUQ3IC8qIElJUkZpbHRlck5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IElJUkZpbHRlck5vZGUuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMjI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmls
dGVyTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJGaWx0ZXJOb2RlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTgzNTA1MUEzMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRp
b25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBJSVJGaWx0ZXJPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJODM1MEMzRTcxREE1OUI2MjAwMzU1NDI0IC8qIFNjcm9sbExvZ2ljYWxQb3NpdGlv
bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxMb2dpY2FsUG9zaXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1MEMzRTcxREE1OUI2MjAwMzU1
NDM1IC8qIFNjcm9sbEludG9WaWV3T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTY3JvbGxJbnRvVmlld09wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJODM1MEMzRTcxREE1OUI2MjAwMzU2NDI0IC8qIFNjcm9sbEJlaGF2aW9yLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbEJlaGF2aW9yLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xMDUyMCw2ICsxMDUzMiw4IEBACiAJCTgzNUQzNjM2MTlGRjYx
OTMwMDRDOTNBQiAvKiBTdHlsZUJ1aWxkZXJDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU3R5bGVCdWlsZGVyQ3VzdG9tLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTgzNUQ1NEMxMUY0REU1MzQwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0
b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlyZWN0b3J5Rmls
ZUxpc3RDcmVhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1RDU0QzIx
RjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1REE4RkYyNEY1ODI1NzAwMjJEREE0IC8qIElJUkRT
UEtlcm5lbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJEU1BLZXJuZWwuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4MzVEQTkwMTI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQ
S2VybmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElJUkRTUEtlcm5lbC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk4MzVGOEIyNjFEMkQ5MEJBMDBFNDA4RUMgLyogU2xvdGFibGUuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFNsb3RhYmxlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJODM2MkU4QkYyMENFRjlDQjAwMjQ1ODg2IC8qIFNob3VsZFRyZWF0QXNDb250aW51
aW5nTG9hZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaG91bGRUcmVhdEFz
Q29udGludWluZ0xvYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM2NTg5RDgx
RjU0QTc2MjAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEwNjA0LDYgKzEwNjE4LDggQEAKIAkJODM5
QTJGMkMxRTIwNEE2RDAwMzkwNTdFIC8qIFdlYkdMU3RhdGVUcmFja2VyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMU3RhdGVUcmFja2VyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTgzOUFBRkVBMUEwQzBDOEQwMDYwNUY5OSAvKiBIVE1MV0JSRWxlbWVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MV0JSRWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzOUFBRkVCMUEwQzBDOEQwMDYw
NUY5OSAvKiBIVE1MV0JSRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBIVE1MV0JSRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzlCRTZE
MjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmlsdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IElJUkZpbHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzlC
RTZENDI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmlsdGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IElJUkZpbHRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTgzQTJBQkQ4MjREODZEQzYwMEUyRDczRCAvKiBEZWxheU9wdGlvbnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRGVsYXlPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgz
QTJBQkRBMjREODZEQzcwMEUyRDczRCAvKiBEZWxheU9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERlbGF5T3B0
aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzQTRBOUY4MUNFN0ZEN0Uw
MDcwOUIwMCAvKiBKU1hNTERvY3VtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTWE1MRG9jdW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjk2NzksNiArMjk2OTUsMTUgQEAKIAkJCQlGRDMxNUZDNDEyQjAyNjc1
MDBDMUEzNTkgLyogR2Fpbk5vZGUuaWRsICovLAogCQkJCTgzNzQ1Q0ZGMjREODk5QzIwMEZCREND
NCAvKiBHYWluT3B0aW9ucy5oICovLAogCQkJCTgzNzQ1RDAxMjREODk5QzIwMEZCRENDNCAvKiBH
YWluT3B0aW9ucy5pZGwgKi8sCisJCQkJODM1REE4RkYyNEY1ODI1NzAwMjJEREE0IC8qIElJUkRT
UEtlcm5lbC5jcHAgKi8sCisJCQkJODM1REE5MDEyNEY1ODI1NzAwMjJEREE0IC8qIElJUkRTUEtl
cm5lbC5oICovLAorCQkJCTgzNTA1MTlFMjRGNTczQUQwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2Rl
LmNwcCAqLywKKwkJCQk4MzUwNTFBMjI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVyTm9kZS5o
ICovLAorCQkJCTgzNTA1MUExMjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmlkbCAq
LywKKwkJCQk4MzUwNTFBMDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICov
LAorCQkJCTgzNTA1MUEzMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmlkbCAq
LywKKwkJCQk4MzBEMEI2ODI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmNwcCAqLywK
KwkJCQk4MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi8sCiAJCQkJ
RkQ2RjI1MjkxM0Y1RUYwRTAwNjUxNjVGIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5j
cHAgKi8sCiAJCQkJRkQ2RjI1MkExM0Y1RUYwRTAwNjUxNjVGIC8qIE1lZGlhRWxlbWVudEF1ZGlv
U291cmNlTm9kZS5oICovLAogCQkJCUZENkYyNTJCMTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRpYUVs
ZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsICovLApAQCAtMjk4MzIsNiArMjk4NTcsOCBAQAogCQkJ
CUZEMzE2MDY5MTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGS2VybmVsLmggKi8sCiAJCQkJRkQzMTYw
NkExMkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZQYW5uZXIuY3BwICovLAogCQkJCUZEMzE2MDZCMTJC
MDI2RjcwMEMxQTM1OSAvKiBIUlRGUGFubmVyLmggKi8sCisJCQkJODM5QkU2RDQyNEY1ODc1NTAw
NERGNTBGIC8qIElJUkZpbHRlci5jcHAgKi8sCisJCQkJODM5QkU2RDIyNEY1ODc1NTAwNERGNTBG
IC8qIElJUkZpbHRlci5oICovLAogCQkJCUZEQjE3MDAzMTRBMkJBQjIwMEEyQjVEOSAvKiBNdWx0
aUNoYW5uZWxSZXNhbXBsZXIuY3BwICovLAogCQkJCUZEQjE3MDA0MTRBMkJBQjIwMEEyQjVEOSAv
KiBNdWx0aUNoYW5uZWxSZXNhbXBsZXIuaCAqLywKIAkJCQk0MTZGRDI1RDI0MEVFMUFFMDA2NjYx
RDggLyogTm93UGxheWluZ0luZm8uaCAqLywKQEAgLTMxNDUwLDYgKzMxNDc3LDExIEBACiAJCQkJ
QzNDRjE3QTcxNUIwMDYzRjAwMjc2RDM5IC8qIElkVGFyZ2V0T2JzZXJ2ZXJSZWdpc3RyeS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJOEFCNEJDNzcxMjZGREI3MTAwREVCNzI3IC8qIElnbm9yZURlc3Ry
dWN0aXZlV3JpdGVDb3VudEluY3JlbWVudGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk0NjczMDIw
MjFDNEVGRTc4MDBCQ0IzNTcgLyogSWdub3JlT3BlbnNEdXJpbmdVbmxvYWRDb3VudEluY3JlbWVu
dGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzVEQTkwMjI0RjU4MjY1MDAyMkREQTQgLyogSUlS
RFNQS2VybmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzlCRTZENTI0RjU4NzYyMDA0REY1MEYg
LyogSUlSRmlsdGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzUwNTFBNDI0RjU3M0M0MDA5OTEx
RDcgLyogSUlSRmlsdGVyTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1MDUxQTUyNEY1NzND
ODAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzMEQw
QjY5MjRGNTdENjcwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUIyNzUzNTcwMEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NTVBMzM2RjkxRDgyMUUzQzAwMjJDNEM3IC8qIEltYWdlQmFja2luZ1N0b3JlLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkzMTgxNUEzMTFGOUE2QzhGMDBGQ0JGODkgLyogSW1hZ2VCaXRtYXAuaCBpbiBI
ZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFs
aXplZFNjcmlwdFZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NlcmlhbGl6
ZWRTY3JpcHRWYWx1ZS5jcHAKaW5kZXggZTg3ZTBmYzI5OGM0ODJjMTk5ZDkwYmFiNTA0M2ZkNDli
ODAzYzQ1OC4uYjBjYWE3MWE3NTY5OTBhYzJiNTNiYmUyNTVmNTU3MGYzMWU1ZjI4MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUu
Y3BwCkBAIC0yMjk2LDcgKzIyOTYsNyBAQCBwcml2YXRlOgogICAgICAgICBpZiAobV9pc0pTSURC
U2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdCkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogCi0g
ICAgICAgIGZpbGUgPSBGaWxlOjpkZXNlcmlhbGl6ZShmaWxlUGF0aCwgVVJMKFVSTCgpLCB1cmwt
PnN0cmluZygpKSwgdHlwZS0+c3RyaW5nKCksIG5hbWUtPnN0cmluZygpLCBvcHRpb25hbExhc3RN
b2RpZmllZCk7CisgICAgICAgIGZpbGUgPSBGaWxlOjpkZXNlcmlhbGl6ZShzY3JpcHRFeGVjdXRp
b25Db250ZXh0RnJvbUV4ZWNTdGF0ZShtX2xleGljYWxHbG9iYWxPYmplY3QpLCBmaWxlUGF0aCwg
VVJMKFVSTCgpLCB1cmwtPnN0cmluZygpKSwgdHlwZS0+c3RyaW5nKCksIG5hbWUtPnN0cmluZygp
LCBvcHRpb25hbExhc3RNb2RpZmllZCk7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIApA
QCAtMzIyNSw3ICszMjI1LDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgICAgICByZXR1cm4gSlNW
YWx1ZSgpOwogICAgICAgICAgICAgaWYgKG1faXNKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmpl
Y3QpCiAgICAgICAgICAgICAgICAgcmV0dXJuIGpzTnVsbCgpOwotICAgICAgICAgICAgcmV0dXJu
IGdldEpTVmFsdWUoQmxvYjo6ZGVzZXJpYWxpemUoVVJMKFVSTCgpLCB1cmwtPnN0cmluZygpKSwg
dHlwZS0+c3RyaW5nKCksIHNpemUsIGJsb2JGaWxlUGF0aEZvckJsb2JVUkwodXJsLT5zdHJpbmco
KSkpLmdldCgpKTsKKyAgICAgICAgICAgIHJldHVybiBnZXRKU1ZhbHVlKEJsb2I6OmRlc2VyaWFs
aXplKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHRGcm9tRXhlY1N0YXRlKG1fbGV4aWNhbEdsb2JhbE9i
amVjdCksIFVSTChVUkwoKSwgdXJsLT5zdHJpbmcoKSksIHR5cGUtPnN0cmluZygpLCBzaXplLCBi
bG9iRmlsZVBhdGhGb3JCbG9iVVJMKHVybC0+c3RyaW5nKCkpKS5nZXQoKSk7CiAgICAgICAgIH0K
ICAgICAgICAgY2FzZSBTdHJpbmdUYWc6IHsKICAgICAgICAgICAgIENhY2hlZFN0cmluZ1JlZiBj
YWNoZWRTdHJpbmc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJD
b3JlQnVpbHRpbk5hbWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVp
bHRpbk5hbWVzLmgKaW5kZXggMjI0ZGJjMmU2MzM5ZTY0ZDUwNjNlYjJjZDViOTgxM2ZmZTczNjJk
OC4uNmQwOWYyMWY2ZGExZDNlY2EyMTkwMWI4NjEzOGUwM2NlNTAwYzI1OCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaApAQCAtMTQzLDYg
KzE0Myw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhJREJSZXF1ZXN0KSBcCiAg
ICAgbWFjcm8oSURCVHJhbnNhY3Rpb24pIFwKICAgICBtYWNybyhJREJWZXJzaW9uQ2hhbmdlRXZl
bnQpIFwKKyAgICBtYWNybyhJSVJGaWx0ZXJOb2RlKSBcCiAgICAgbWFjcm8oSW1hZ2VCaXRtYXAp
IFwKICAgICBtYWNybyhJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQpIFwKICAgICBtYWNybyhJ
ZGxlRGVhZGxpbmUpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJhbnNm
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlci5jcHAKaW5kZXggYjQ1YTEz
ZGIwOGEwNjRjODQxMDNkNmU3YjhhZDNmYjJlZTAzMGY3MS4uOTE1Zjk2Y2UwYTRjZGMyOGViNTg5
ZGEyNTc2NDMyODViMDgwZjNjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFU
cmFuc2Zlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlci5jcHAKQEAg
LTI2OCwxMSArMjY4LDExIEBAIHZvaWQgRGF0YVRyYW5zZmVyOjpzZXREYXRhRnJvbUl0ZW1MaXN0
KGNvbnN0IFN0cmluZyYgdHlwZSwgY29uc3QgU3RyaW5nJiBkYXRhKQogICAgICAgICBtX3Bhc3Rl
Ym9hcmQtPndyaXRlU3RyaW5nKHR5cGUsIHNhbml0aXplZERhdGEpOwogfQogCi12b2lkIERhdGFU
cmFuc2Zlcjo6dXBkYXRlRmlsZUxpc3QoKQordm9pZCBEYXRhVHJhbnNmZXI6OnVwZGF0ZUZpbGVM
aXN0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpCiB7CiAgICAgQVNTRVJUKGNhbldy
aXRlRGF0YSgpKTsKIAotICAgIG1fZmlsZUxpc3QtPm1fZmlsZXMgPSBmaWxlc0Zyb21QYXN0ZWJv
YXJkQW5kSXRlbUxpc3QoKTsKKyAgICBtX2ZpbGVMaXN0LT5tX2ZpbGVzID0gZmlsZXNGcm9tUGFz
dGVib2FyZEFuZEl0ZW1MaXN0KGNvbnRleHQpOwogfQogCiB2b2lkIERhdGFUcmFuc2Zlcjo6ZGlk
QWRkRmlsZVRvSXRlbUxpc3QoKQpAQCAtMjg2LDEwICsyODYsMTAgQEAgdm9pZCBEYXRhVHJhbnNm
ZXI6OmRpZEFkZEZpbGVUb0l0ZW1MaXN0KCkKICAgICBtX2ZpbGVMaXN0LT5hcHBlbmQoKm5ld0l0
ZW0tPmZpbGUoKSk7CiB9CiAKLURhdGFUcmFuc2Zlckl0ZW1MaXN0JiBEYXRhVHJhbnNmZXI6Oml0
ZW1zKCkKK0RhdGFUcmFuc2Zlckl0ZW1MaXN0JiBEYXRhVHJhbnNmZXI6Oml0ZW1zKERvY3VtZW50
JiBkb2N1bWVudCkKIHsKICAgICBpZiAoIW1faXRlbUxpc3QpCi0gICAgICAgIG1faXRlbUxpc3Qg
PSBtYWtlVW5pcXVlPERhdGFUcmFuc2Zlckl0ZW1MaXN0PigqdGhpcyk7CisgICAgICAgIG1faXRl
bUxpc3QgPSBtYWtlVW5pcXVlPERhdGFUcmFuc2Zlckl0ZW1MaXN0Pihkb2N1bWVudCwgKnRoaXMp
OwogICAgIHJldHVybiAqbV9pdGVtTGlzdDsKIH0KIApAQCAtMzQzLDEyICszNDMsMTIgQEAgVmVj
dG9yPFN0cmluZz4gRGF0YVRyYW5zZmVyOjp0eXBlcyhBZGRGaWxlc1R5cGUgYWRkRmlsZXNUeXBl
KSBjb25zdAogICAgIHJldHVybiBzYWZlVHlwZXM7CiB9CiAKLVZlY3RvcjxSZWY8RmlsZT4+IERh
dGFUcmFuc2Zlcjo6ZmlsZXNGcm9tUGFzdGVib2FyZEFuZEl0ZW1MaXN0KCkgY29uc3QKK1ZlY3Rv
cjxSZWY8RmlsZT4+IERhdGFUcmFuc2Zlcjo6ZmlsZXNGcm9tUGFzdGVib2FyZEFuZEl0ZW1MaXN0
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpIGNvbnN0CiB7CiAgICAgYm9vbCBhZGRl
ZEZpbGVzRnJvbVBhc3RlYm9hcmQgPSBmYWxzZTsKICAgICBWZWN0b3I8UmVmPEZpbGU+PiBmaWxl
czsKICAgICBpZiAoKCFmb3JEcmFnKCkgfHwgZm9yRmlsZURyYWcoKSkgJiYgbV9wYXN0ZWJvYXJk
LT5maWxlQ29udGVudFN0YXRlKCkgIT0gUGFzdGVib2FyZDo6RmlsZUNvbnRlbnRTdGF0ZTo6Tm9G
aWxlT3JJbWFnZURhdGEpIHsKLSAgICAgICAgV2ViQ29yZVBhc3RlYm9hcmRGaWxlUmVhZGVyIHJl
YWRlcjsKKyAgICAgICAgV2ViQ29yZVBhc3RlYm9hcmRGaWxlUmVhZGVyIHJlYWRlcihjb250ZXh0
KTsKICAgICAgICAgbV9wYXN0ZWJvYXJkLT5yZWFkKHJlYWRlcik7CiAgICAgICAgIGZpbGVzID0g
V1RGTW92ZShyZWFkZXIuZmlsZXMpOwogICAgICAgICBhZGRlZEZpbGVzRnJvbVBhc3RlYm9hcmQg
PSAhZmlsZXMuaXNFbXB0eSgpOwpAQCAtMzY4LDcgKzM2OCw3IEBAIFZlY3RvcjxSZWY8RmlsZT4+
IERhdGFUcmFuc2Zlcjo6ZmlsZXNGcm9tUGFzdGVib2FyZEFuZEl0ZW1MaXN0KCkgY29uc3QKICAg
ICByZXR1cm4gZmlsZXM7CiB9CiAKLUZpbGVMaXN0JiBEYXRhVHJhbnNmZXI6OmZpbGVzKCkgY29u
c3QKK0ZpbGVMaXN0JiBEYXRhVHJhbnNmZXI6OmZpbGVzKERvY3VtZW50KiBkb2N1bWVudCkgY29u
c3QKIHsKICAgICBpZiAoIWNhblJlYWREYXRhKCkpIHsKICAgICAgICAgaWYgKG1fZmlsZUxpc3Qp
CkBAIC0zNzksMTEgKzM3OSwxNiBAQCBGaWxlTGlzdCYgRGF0YVRyYW5zZmVyOjpmaWxlcygpIGNv
bnN0CiAgICAgfQogCiAgICAgaWYgKCFtX2ZpbGVMaXN0KQotICAgICAgICBtX2ZpbGVMaXN0ID0g
RmlsZUxpc3Q6OmNyZWF0ZShmaWxlc0Zyb21QYXN0ZWJvYXJkQW5kSXRlbUxpc3QoKSk7CisgICAg
ICAgIG1fZmlsZUxpc3QgPSBGaWxlTGlzdDo6Y3JlYXRlKGZpbGVzRnJvbVBhc3RlYm9hcmRBbmRJ
dGVtTGlzdChkb2N1bWVudCkpOwogCiAgICAgcmV0dXJuICptX2ZpbGVMaXN0OwogfQogCitGaWxl
TGlzdCYgRGF0YVRyYW5zZmVyOjpmaWxlcyhEb2N1bWVudCYgZG9jdW1lbnQpIGNvbnN0Cit7Cisg
ICAgcmV0dXJuIGZpbGVzKCZkb2N1bWVudCk7Cit9CisKIHN0cnVjdCBQYXN0ZWJvYXJkRmlsZVR5
cGVSZWFkZXIgZmluYWwgOiBQYXN0ZWJvYXJkRmlsZVJlYWRlciB7CiAgICAgdm9pZCByZWFkRmls
ZW5hbWUoY29uc3QgU3RyaW5nJiBmaWxlbmFtZSkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRGF0YVRyYW5zZmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGF0YVRyYW5z
ZmVyLmgKaW5kZXggM2NjY2Y2N2FjNWFlZDNmZDE5Yzk1YjBkNDMxZDE5MDU5ZDJjMGM1NC4uNWFh
MTNkYjE0MTI2ZWUzOTY4YTIxODRmMzg2MzYyZDY2NTEzMTVhNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRh
VHJhbnNmZXIuaApAQCAtMzksNiArMzksNyBAQCBjbGFzcyBFbGVtZW50OwogY2xhc3MgRmlsZUxp
c3Q7CiBjbGFzcyBGaWxlOwogY2xhc3MgUGFzdGVib2FyZDsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ7CiBlbnVtIGNsYXNzIFdlYkNvbnRlbnRSZWFkaW5nUG9saWN5IDogYm9vbDsKIAog
Y2xhc3MgRGF0YVRyYW5zZmVyIDogcHVibGljIFJlZkNvdW50ZWQ8RGF0YVRyYW5zZmVyPiB7CkBA
IC01NywxMSArNTgsMTIgQEAgcHVibGljOgogICAgIFN0cmluZyBlZmZlY3RBbGxvd2VkKCkgY29u
c3Q7CiAgICAgdm9pZCBzZXRFZmZlY3RBbGxvd2VkKGNvbnN0IFN0cmluZyYpOwogCi0gICAgRGF0
YVRyYW5zZmVySXRlbUxpc3QmIGl0ZW1zKCk7CisgICAgRGF0YVRyYW5zZmVySXRlbUxpc3QmIGl0
ZW1zKERvY3VtZW50Jik7CiAgICAgVmVjdG9yPFN0cmluZz4gdHlwZXMoKSBjb25zdDsKICAgICBW
ZWN0b3I8U3RyaW5nPiB0eXBlc0Zvckl0ZW1MaXN0KCkgY29uc3Q7CiAKLSAgICBGaWxlTGlzdCYg
ZmlsZXMoKSBjb25zdDsKKyAgICBGaWxlTGlzdCYgZmlsZXMoRG9jdW1lbnQqKSBjb25zdDsKKyAg
ICBGaWxlTGlzdCYgZmlsZXMoRG9jdW1lbnQmKSBjb25zdDsKIAogICAgIHZvaWQgY2xlYXJEYXRh
KGNvbnN0IFN0cmluZyYgdHlwZSA9IFN0cmluZygpKTsKIApAQCAtMTA4LDcgKzExMCw3IEBAIHB1
YmxpYzoKICNlbmRpZgogCiAgICAgdm9pZCBkaWRBZGRGaWxlVG9JdGVtTGlzdCgpOwotICAgIHZv
aWQgdXBkYXRlRmlsZUxpc3QoKTsKKyAgICB2b2lkIHVwZGF0ZUZpbGVMaXN0KFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqKTsKIAogcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIFR5cGUgeyBDb3B5QW5k
UGFzdGUsIERyYWdBbmREcm9wRGF0YSwgRHJhZ0FuZERyb3BGaWxlcywgSW5wdXRFdmVudCB9OwpA
QCAtMTI3LDcgKzEyOSw3IEBAIHByaXZhdGU6CiAKICAgICBlbnVtIGNsYXNzIEFkZEZpbGVzVHlw
ZSB7IE5vLCBZZXMgfTsKICAgICBWZWN0b3I8U3RyaW5nPiB0eXBlcyhBZGRGaWxlc1R5cGUpIGNv
bnN0OwotICAgIFZlY3RvcjxSZWY8RmlsZT4+IGZpbGVzRnJvbVBhc3RlYm9hcmRBbmRJdGVtTGlz
dCgpIGNvbnN0OworICAgIFZlY3RvcjxSZWY8RmlsZT4+IGZpbGVzRnJvbVBhc3RlYm9hcmRBbmRJ
dGVtTGlzdChTY3JpcHRFeGVjdXRpb25Db250ZXh0KikgY29uc3Q7CiAKICAgICBTdHJpbmcgbV9v
cmlnaW5JZGVudGlmaWVyOwogICAgIFN0b3JlTW9kZSBtX3N0b3JlTW9kZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJhbnNmZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9t
L0RhdGFUcmFuc2Zlci5pZGwKaW5kZXggMGM2NzdjMWU1NWVjOTQ0ODZkM2RlNDgyMjlhMTQ4ZjE3
NzIxNGIyYi4uODNkNWYzNjg1Yjc1MTE5MzFjMjU1MGNkNGEwMTNiYWU5ZmU5ZWQxZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlci5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RhdGFUcmFuc2Zlci5pZGwKQEAgLTMzLDcgKzMzLDcgQEAKICAgICBhdHRyaWJ1
dGUgRE9NU3RyaW5nIGVmZmVjdEFsbG93ZWQ7CiAKICAgICAvLyBGSVhNRTogaXRlbXMgc2hvdWxk
IHVzZSBbU2FtZU9iamVjdF0gb25jZSB0aGF0IGlzIHN1cHBvcnRlZC4KLSAgICBbRW5hYmxlZEF0
UnVudGltZT1EYXRhVHJhbnNmZXJJdGVtc10gcmVhZG9ubHkgYXR0cmlidXRlIERhdGFUcmFuc2Zl
ckl0ZW1MaXN0IGl0ZW1zOworICAgIFtFbmFibGVkQXRSdW50aW1lPURhdGFUcmFuc2Zlckl0ZW1z
LCBDYWxsV2l0aD1Eb2N1bWVudF0gcmVhZG9ubHkgYXR0cmlidXRlIERhdGFUcmFuc2Zlckl0ZW1M
aXN0IGl0ZW1zOwogCiAgICAgdm9pZCBzZXREcmFnSW1hZ2UoRWxlbWVudD8gaW1hZ2UsIGxvbmcg
eCwgbG9uZyB5KTsgLy8gRklYTUU6IEVsZW1lbnQgYXJndW1lbnQgaXMgbm90IG51bGxhYmxlIGlu
IHRoZSBIVE1MIHN0YW5kYXJkLgogCkBAIC00Miw1ICs0Miw1IEBACiAgICAgdm9pZCBzZXREYXRh
KERPTVN0cmluZyBmb3JtYXQsIERPTVN0cmluZyBkYXRhKTsKICAgICB2b2lkIGNsZWFyRGF0YShv
cHRpb25hbCBET01TdHJpbmcgZm9ybWF0KTsKICAgICAvLyBGSVhNRTogZmlsZXMgc2hvdWxkIHVz
ZSBbU2FtZU9iamVjdF0gb25jZSB0aGF0IGlzIHN1cHBvcnRlZC4KLSAgICByZWFkb25seSBhdHRy
aWJ1dGUgRmlsZUxpc3QgZmlsZXM7CisgICAgW0NhbGxXaXRoPURvY3VtZW50XSByZWFkb25seSBh
dHRyaWJ1dGUgRmlsZUxpc3QgZmlsZXM7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJh
bnNmZXJJdGVtTGlzdC5jcHAKaW5kZXggOTA0ZTBmNWE0MzAzYmEyOTUxMWNlN2RkMjU3YWE2MDAw
Y2I5MGE2YS4uMjRiNzkzNTNhNzdlMDY4OGQ2Njk1NGM0ZjU1ODllNzAyOTFmMmRkYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRGF0YVRyYW5zZmVySXRlbUxpc3QuY3BwCkBAIC0zNyw4ICszNyw5
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKERh
dGFUcmFuc2Zlckl0ZW1MaXN0KTsKIAotRGF0YVRyYW5zZmVySXRlbUxpc3Q6OkRhdGFUcmFuc2Zl
ckl0ZW1MaXN0KERhdGFUcmFuc2ZlciYgZGF0YVRyYW5zZmVyKQotICAgIDogbV9kYXRhVHJhbnNm
ZXIoZGF0YVRyYW5zZmVyKQorRGF0YVRyYW5zZmVySXRlbUxpc3Q6OkRhdGFUcmFuc2Zlckl0ZW1M
aXN0KERvY3VtZW50JiBkb2N1bWVudCwgRGF0YVRyYW5zZmVyJiBkYXRhVHJhbnNmZXIpCisgICAg
OiBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcigmZG9jdW1lbnQpCisgICAgLCBtX2RhdGFUcmFu
c2ZlcihkYXRhVHJhbnNmZXIpCiB7CiB9CiAKQEAgLTEwOSw3ICsxMTAsNyBAQCBFeGNlcHRpb25P
cjx2b2lkPiBEYXRhVHJhbnNmZXJJdGVtTGlzdDo6cmVtb3ZlKHVuc2lnbmVkIGluZGV4KQogICAg
IHJlbW92ZWRJdGVtLT5jbGVhckxpc3RBbmRQdXRJbnRvRGlzYWJsZWRNb2RlKCk7CiAgICAgaXRl
bXMucmVtb3ZlKGluZGV4KTsKICAgICBpZiAocmVtb3ZlZEl0ZW0tPmlzRmlsZSgpKQotICAgICAg
ICBtX2RhdGFUcmFuc2Zlci51cGRhdGVGaWxlTGlzdCgpOworICAgICAgICBtX2RhdGFUcmFuc2Zl
ci51cGRhdGVGaWxlTGlzdChzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwogCiAgICAgcmV0dXJu
IHsgfTsKIH0KQEAgLTEyNyw3ICsxMjgsNyBAQCB2b2lkIERhdGFUcmFuc2Zlckl0ZW1MaXN0Ojpj
bGVhcigpCiAgICAgfQogCiAgICAgaWYgKHJlbW92ZWRJdGVtQ29udGFpbmluZ0ZpbGUpCi0gICAg
ICAgIG1fZGF0YVRyYW5zZmVyLnVwZGF0ZUZpbGVMaXN0KCk7CisgICAgICAgIG1fZGF0YVRyYW5z
ZmVyLnVwZGF0ZUZpbGVMaXN0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiB9CiAKIFZlY3Rv
cjxSZWY8RGF0YVRyYW5zZmVySXRlbT4+JiBEYXRhVHJhbnNmZXJJdGVtTGlzdDo6ZW5zdXJlSXRl
bXMoKSBjb25zdApAQCAtMTQyLDcgKzE0Myw3IEBAIFZlY3RvcjxSZWY8RGF0YVRyYW5zZmVySXRl
bT4+JiBEYXRhVHJhbnNmZXJJdGVtTGlzdDo6ZW5zdXJlSXRlbXMoKSBjb25zdAogICAgICAgICAg
ICAgaXRlbXMuYXBwZW5kKERhdGFUcmFuc2Zlckl0ZW06OmNyZWF0ZShtYWtlV2Vha1B0cigqY29u
c3RfY2FzdDxEYXRhVHJhbnNmZXJJdGVtTGlzdCo+KHRoaXMpKSwgbG93ZXJjYXNlZFR5cGUpKTsK
ICAgICB9CiAKLSAgICBmb3IgKGF1dG8mIGZpbGUgOiBtX2RhdGFUcmFuc2Zlci5maWxlcygpLmZp
bGVzKCkpCisgICAgZm9yIChhdXRvJiBmaWxlIDogbV9kYXRhVHJhbnNmZXIuZmlsZXMoZG9jdW1l
bnQoKSkuZmlsZXMoKSkKICAgICAgICAgaXRlbXMuYXBwZW5kKERhdGFUcmFuc2Zlckl0ZW06OmNy
ZWF0ZShtYWtlV2Vha1B0cigqY29uc3RfY2FzdDxEYXRhVHJhbnNmZXJJdGVtTGlzdCo+KHRoaXMp
KSwgZmlsZS0+dHlwZSgpLCBmaWxlLmNvcHlSZWYoKSkpOwogCiAgICAgbV9pdGVtcyA9IFdURk1v
dmUoaXRlbXMpOwpAQCAtMTkxLDUgKzE5MiwxMCBAQCB2b2lkIERhdGFUcmFuc2Zlckl0ZW1MaXN0
OjpkaWRTZXRTdHJpbmdEYXRhKGNvbnN0IFN0cmluZyYgdHlwZSkKICAgICBtX2l0ZW1zLT5hcHBl
bmQoRGF0YVRyYW5zZmVySXRlbTo6Y3JlYXRlKG1ha2VXZWFrUHRyKCp0aGlzKSwgbG93ZXJjYXNl
ZFR5cGUpKTsKIH0KIAorRG9jdW1lbnQqIERhdGFUcmFuc2Zlckl0ZW1MaXN0Ojpkb2N1bWVudCgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIGRvd25jYXN0PERvY3VtZW50PihzY3JpcHRFeGVjdXRpb25D
b250ZXh0KCkpOworfQorCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRh
VHJhbnNmZXJJdGVtTGlzdC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlckl0ZW1M
aXN0LmgKaW5kZXggYTcxM2QwZGViM2U4YjIzOTBiMGM3MDQ1MDQwMzQyMTgzOTA1ZmQxMS4uZTUy
OGY2NTQ2YjQzNmJjODU2M2ZkYTQ2NTdiZjkzOWUwZGNjYzY1OSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmgKQEAgLTMxLDYgKzMxLDcgQEAKIAogI3ByYWdtYSBv
bmNlCiAKKyNpbmNsdWRlICJDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlci5oIgogI2luY2x1ZGUg
IkRhdGFUcmFuc2Zlci5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAiU2Ny
aXB0V3JhcHBhYmxlLmgiCkBAIC00NCwxMSArNDUsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
Y2xhc3MgRGF0YVRyYW5zZmVySXRlbTsKIGNsYXNzIEZpbGU7CiAKLWNsYXNzIERhdGFUcmFuc2Zl
ckl0ZW1MaXN0IGZpbmFsIDogcHVibGljIFNjcmlwdFdyYXBwYWJsZSwgcHVibGljIENhbk1ha2VX
ZWFrUHRyPERhdGFUcmFuc2Zlckl0ZW1MaXN0PiB7CitjbGFzcyBEYXRhVHJhbnNmZXJJdGVtTGlz
dCBmaW5hbCA6IHB1YmxpYyBTY3JpcHRXcmFwcGFibGUsIHB1YmxpYyBDb250ZXh0RGVzdHJ1Y3Rp
b25PYnNlcnZlciwgcHVibGljIENhbk1ha2VXZWFrUHRyPERhdGFUcmFuc2Zlckl0ZW1MaXN0PiB7
CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoRGF0YVRyYW5zZmVySXRlbUxpc3QpOwogICAgIFdU
Rl9NQUtFX0lTT19BTExPQ0FURUQoRGF0YVRyYW5zZmVySXRlbUxpc3QpOwogcHVibGljOgotICAg
IERhdGFUcmFuc2Zlckl0ZW1MaXN0KERhdGFUcmFuc2ZlciYpOworICAgIERhdGFUcmFuc2Zlckl0
ZW1MaXN0KERvY3VtZW50JiwgRGF0YVRyYW5zZmVyJik7CiAgICAgfkRhdGFUcmFuc2Zlckl0ZW1M
aXN0KCk7CiAKICAgICAvLyBEYXRhVHJhbnNmZXIgb3ducyBEYXRhVHJhbnNmZXJJdGVtTGlzdCwg
YW5kIERhdGFUcmFuc2ZlciBpcyBrZXB0IGFsaXZlIGFzIGxvbmcgYXMgRGF0YVRyYW5zZmVySXRl
bUxpc3QgaXMgYWxpdmUuCkBAIC03NSw2ICs3Niw3IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAg
ICBWZWN0b3I8UmVmPERhdGFUcmFuc2Zlckl0ZW0+PiYgZW5zdXJlSXRlbXMoKSBjb25zdDsKKyAg
ICBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKIAogICAgIERhdGFUcmFuc2ZlciYgbV9kYXRh
VHJhbnNmZXI7CiAgICAgbXV0YWJsZSBPcHRpb25hbDxWZWN0b3I8UmVmPERhdGFUcmFuc2Zlckl0
ZW0+Pj4gbV9pdGVtczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EYXRhVHJhbnNm
ZXJJdGVtTGlzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGF0YVRyYW5zZmVySXRlbUxpc3Qu
aWRsCmluZGV4IDIzODZhN2Y3MDlhYTU0YjAyZGI3YTFjODZmZDEzN2E0ZjAxMzg5ODAuLmE1Nzdj
ZWFjY2M3OWMxZDE4YzU1NWNhMzdmZjUyMDE3NjNmYTA1MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9EYXRhVHJhbnNmZXJJdGVtTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RhdGFUcmFuc2Zlckl0ZW1MaXN0LmlkbApAQCAtMzMsNyArMzMsNiBAQAogICAgIEVuYWJs
ZWRBdFJ1bnRpbWU9RGF0YVRyYW5zZmVySXRlbXMsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2Jq
ZWN0LAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAotICAgIEltcGxlbWVudGF0aW9uTGFja3NW
VGFibGUsCiBdIGludGVyZmFjZSBEYXRhVHJhbnNmZXJJdGVtTGlzdCB7CiAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIGxvbmcgbGVuZ3RoOwogICAgIGdldHRlciBEYXRhVHJhbnNmZXJJdGVtIGl0ZW0o
dW5zaWduZWQgbG9uZyBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L1dlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L1dlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlci5jcHAKaW5kZXggZjY4YTAwZWZhZTdhN2JiNDk1
ODlkMGZmZTI3MzFiYmU2ZTg0MmIwYy4uNWQwNjY0MzdhOGI0Y2E0NjM4MzE3MjEwNGI0YzgxM2Zh
ZWYyZWJlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9XZWJDb3JlUGFzdGVi
b2FyZEZpbGVSZWFkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvV2ViQ29yZVBh
c3RlYm9hcmRGaWxlUmVhZGVyLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIldlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlci5oIgogCisjaW5jbHVk
ZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJGaWxlLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVy
LmgiCiAKQEAgLTM1LDEyICszNiwxMiBAQCBXZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXI6On5X
ZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXIoKSA9IGRlZmF1bHQ7CiAKIHZvaWQgV2ViQ29yZVBh
c3RlYm9hcmRGaWxlUmVhZGVyOjpyZWFkRmlsZW5hbWUoY29uc3QgU3RyaW5nJiBmaWxlbmFtZSkK
IHsKLSAgICBmaWxlcy5hcHBlbmQoRmlsZTo6Y3JlYXRlKGZpbGVuYW1lKSk7CisgICAgZmlsZXMu
YXBwZW5kKEZpbGU6OmNyZWF0ZShjb250ZXh0LmdldCgpLCBmaWxlbmFtZSkpOwogfQogCiB2b2lk
IFdlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlcjo6cmVhZEJ1ZmZlcihjb25zdCBTdHJpbmcmIGZp
bGVuYW1lLCBjb25zdCBTdHJpbmcmIHR5cGUsIFJlZjxTaGFyZWRCdWZmZXI+JiYgYnVmZmVyKQog
ewotICAgIGZpbGVzLmFwcGVuZChGaWxlOjpjcmVhdGUoQmxvYjo6Y3JlYXRlKGJ1ZmZlci5nZXQo
KSwgdHlwZSksIGZpbGVuYW1lKSk7CisgICAgZmlsZXMuYXBwZW5kKEZpbGU6OmNyZWF0ZShjb250
ZXh0LmdldCgpLCBCbG9iOjpjcmVhdGUoY29udGV4dC5nZXQoKSwgYnVmZmVyLmdldCgpLCB0eXBl
KSwgZmlsZW5hbWUpKTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9XZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcv
V2ViQ29yZVBhc3RlYm9hcmRGaWxlUmVhZGVyLmgKaW5kZXggOWIwNjgxNDA2NzYwYWRkMzFkYzA2
Y2FlNmM4NDE4OTc1MGY3MGJlOS4uNWM1MjlkZDdjOGVjYzAwMDQ4ZmNiNGQxNTgxNDYzNWIyNGQ5
MGJiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9XZWJDb3JlUGFzdGVib2Fy
ZEZpbGVSZWFkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1dlYkNvcmVQYXN0ZWJv
YXJkRmlsZVJlYWRlci5oCkBAIC0zMCwxNCArMzAsMjAgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgRmlsZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiAKIHN0cnVjdCBX
ZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXIgZmluYWwgOiBQYXN0ZWJvYXJkRmlsZVJlYWRlciB7
Ci0gICAgV2ViQ29yZVBhc3RlYm9hcmRGaWxlUmVhZGVyKCkgPSBkZWZhdWx0OworICAgIGV4cGxp
Y2l0IFdlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlcihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBj
b250ZXh0KQorICAgICAgICA6IGNvbnRleHQoY29udGV4dCkKKyAgICB7CisgICAgfQorCiAgICAg
fldlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlcigpOwogCiAgICAgdm9pZCByZWFkRmlsZW5hbWUo
Y29uc3QgU3RyaW5nJikgZmluYWw7CiAgICAgdm9pZCByZWFkQnVmZmVyKGNvbnN0IFN0cmluZyYg
ZmlsZW5hbWUsIGNvbnN0IFN0cmluZyYgdHlwZSwgUmVmPFNoYXJlZEJ1ZmZlcj4mJikgZmluYWw7
CiAKKyAgICBSZWZQdHI8U2NyaXB0RXhlY3V0aW9uQ29udGV4dD4gY29udGV4dDsKICAgICBWZWN0
b3I8UmVmPEZpbGU+PiBmaWxlczsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvY29jb2EvV2ViQ29udGVudFJlYWRlckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9jb2NvYS9XZWJDb250ZW50UmVhZGVyQ29jb2EubW0KaW5kZXggMzRhYTdhYmYzM2Y3NDRk
ZTA3ZDhlOTllNmQ1ZDNmNWVjNDIwZTJkNC4uODAxZGIxYWIwOWQ4MzM1Y2I1MDkxZTBmZjVkYmIy
NzMyZGYzNWVkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9XZWJD
b250ZW50UmVhZGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9X
ZWJDb250ZW50UmVhZGVyQ29jb2EubW0KQEAgLTI1Myw3ICsyNTMsNyBAQCBzdGF0aWMgUmVmPERv
Y3VtZW50RnJhZ21lbnQ+IGNyZWF0ZUZyYWdtZW50Rm9ySW1hZ2VBdHRhY2htZW50KEZyYW1lJiBm
cmFtZSwgRG9jdQogICAgICAgICBmcmFtZS5lZGl0b3IoKS5yZWdpc3RlckF0dGFjaG1lbnRJZGVu
dGlmaWVyKGF0dGFjaG1lbnQtPmVuc3VyZVVuaXF1ZUlkZW50aWZpZXIoKSwgY29udGVudFR5cGUs
IGRlZmF1bHRJbWFnZUF0dGFjaG1lbnROYW1lLCBXVEZNb3ZlKGJ1ZmZlcikpOwogICAgICAgICBp
ZiAoY29udGVudFR5cGVJc1N1aXRhYmxlRm9ySW5saW5lSW1hZ2VSZXByZXNlbnRhdGlvbihjb250
ZW50VHlwZSkpIHsKICAgICAgICAgICAgIGF1dG8gaW1hZ2UgPSBIVE1MSW1hZ2VFbGVtZW50Ojpj
cmVhdGUoZG9jdW1lbnQpOwotICAgICAgICAgICAgaW1hZ2UtPnNldEF0dHJpYnV0ZVdpdGhvdXRT
eW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjpzcmNBdHRyLCBET01VUkw6OmNyZWF0ZU9iamVjdFVS
TChkb2N1bWVudCwgQmxvYjo6Y3JlYXRlKGJ1ZmZlci5nZXQoKSwgY29udGVudFR5cGUpKSk7Cisg
ICAgICAgICAgICBpbWFnZS0+c2V0QXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihIVE1M
TmFtZXM6OnNyY0F0dHIsIERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJMKGRvY3VtZW50LCBCbG9iOjpj
cmVhdGUoJmRvY3VtZW50LCBidWZmZXIuZ2V0KCksIGNvbnRlbnRUeXBlKSkpOwogICAgICAgICAg
ICAgaW1hZ2UtPnNldEF0dGFjaG1lbnRFbGVtZW50KFdURk1vdmUoYXR0YWNobWVudCkpOwogICAg
ICAgICAgICAgaWYgKHByZWZlcnJlZFNpemUud2lkdGgpCiAgICAgICAgICAgICAgICAgaW1hZ2Ut
PnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjp3aWR0aEF0dHIs
IEF0b21TdHJpbmc6Om51bWJlcigqcHJlZmVycmVkU2l6ZS53aWR0aCkpOwpAQCAtMjY1LDcgKzI2
NSw3IEBAIHN0YXRpYyBSZWY8RG9jdW1lbnRGcmFnbWVudD4gY3JlYXRlRnJhZ21lbnRGb3JJbWFn
ZUF0dGFjaG1lbnQoRnJhbWUmIGZyYW1lLCBEb2N1CiAgICAgICAgICAgICBmcmFnbWVudC0+YXBw
ZW5kQ2hpbGQoV1RGTW92ZShhdHRhY2htZW50KSk7CiAgICAgICAgIH0KICAgICB9IGVsc2Ugewot
ICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShCbG9iOjpjcmVhdGUoYnVm
ZmVyLmdldCgpLCBjb250ZW50VHlwZSksIGRlZmF1bHRJbWFnZUF0dGFjaG1lbnROYW1lKSwgSFRN
TEF0dGFjaG1lbnRFbGVtZW50OjpVcGRhdGVEaXNwbGF5QXR0cmlidXRlczo6WWVzKTsKKyAgICAg
ICAgYXR0YWNobWVudC0+c2V0RmlsZShGaWxlOjpjcmVhdGUoJmRvY3VtZW50LCBCbG9iOjpjcmVh
dGUoJmRvY3VtZW50LCBidWZmZXIuZ2V0KCksIGNvbnRlbnRUeXBlKSwgZGVmYXVsdEltYWdlQXR0
YWNobWVudE5hbWUpLCBIVE1MQXR0YWNobWVudEVsZW1lbnQ6OlVwZGF0ZURpc3BsYXlBdHRyaWJ1
dGVzOjpZZXMpOwogICAgICAgICBmcmFnbWVudC0+YXBwZW5kQ2hpbGQoV1RGTW92ZShhdHRhY2ht
ZW50KSk7CiAgICAgfQogICAgIHJldHVybiBmcmFnbWVudDsKQEAgLTM1OSw3ICszNTksNyBAQCBz
dGF0aWMgdm9pZCByZXBsYWNlUmljaENvbnRlbnRXaXRoQXR0YWNobWVudHMoRnJhbWUmIGZyYW1l
LCBEb2N1bWVudEZyYWdtZW50JiBmcgogICAgICAgICBpZiAoc3VwcG9ydHNDbGllbnRTaWRlQXR0
YWNobWVudERhdGEoZnJhbWUpKSB7CiAgICAgICAgICAgICBpZiAoaXM8SFRNTEltYWdlRWxlbWVu
dD4ob3JpZ2luYWxFbGVtZW50LmdldCgpKSAmJiBjb250ZW50VHlwZUlzU3VpdGFibGVGb3JJbmxp
bmVJbWFnZVJlcHJlc2VudGF0aW9uKGluZm8uY29udGVudFR5cGUpKSB7CiAgICAgICAgICAgICAg
ICAgYXV0byYgaW1hZ2UgPSBkb3duY2FzdDxIVE1MSW1hZ2VFbGVtZW50PihvcmlnaW5hbEVsZW1l
bnQuZ2V0KCkpOwotICAgICAgICAgICAgICAgIGltYWdlLnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5j
aHJvbml6YXRpb24oSFRNTE5hbWVzOjpzcmNBdHRyLCBET01VUkw6OmNyZWF0ZU9iamVjdFVSTCgq
ZnJhbWUuZG9jdW1lbnQoKSwgQmxvYjo6Y3JlYXRlKGluZm8uZGF0YSwgaW5mby5jb250ZW50VHlw
ZSkpKTsKKyAgICAgICAgICAgICAgICBpbWFnZS5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25p
emF0aW9uKEhUTUxOYW1lczo6c3JjQXR0ciwgRE9NVVJMOjpjcmVhdGVPYmplY3RVUkwoKmZyYW1l
LmRvY3VtZW50KCksIEJsb2I6OmNyZWF0ZShmcmFtZS5kb2N1bWVudCgpLCBpbmZvLmRhdGEsIGlu
Zm8uY29udGVudFR5cGUpKSk7CiAgICAgICAgICAgICAgICAgaW1hZ2Uuc2V0QXR0YWNobWVudEVs
ZW1lbnQoYXR0YWNobWVudC5jb3B5UmVmKCkpOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgICAgICBhdHRhY2htZW50LT51cGRhdGVBdHRyaWJ1dGVzKGluZm8uZGF0YS0+c2l6ZSgp
LCBpbmZvLmNvbnRlbnRUeXBlLCBpbmZvLmZpbGVOYW1lKTsKQEAgLTM2Nyw3ICszNjcsNyBAQCBz
dGF0aWMgdm9pZCByZXBsYWNlUmljaENvbnRlbnRXaXRoQXR0YWNobWVudHMoRnJhbWUmIGZyYW1l
LCBEb2N1bWVudEZyYWdtZW50JiBmcgogICAgICAgICAgICAgfQogICAgICAgICAgICAgZnJhbWUu
ZWRpdG9yKCkucmVnaXN0ZXJBdHRhY2htZW50SWRlbnRpZmllcihhdHRhY2htZW50LT5lbnN1cmVV
bmlxdWVJZGVudGlmaWVyKCksIFdURk1vdmUoaW5mby5jb250ZW50VHlwZSksIFdURk1vdmUoaW5m
by5maWxlTmFtZSksIFdURk1vdmUoaW5mby5kYXRhKSk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAg
ICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShCbG9iOjpjcmVhdGUoV1RG
TW92ZShpbmZvLmRhdGEpLCBXVEZNb3ZlKGluZm8uY29udGVudFR5cGUpKSwgV1RGTW92ZShpbmZv
LmZpbGVOYW1lKSksIEhUTUxBdHRhY2htZW50RWxlbWVudDo6VXBkYXRlRGlzcGxheUF0dHJpYnV0
ZXM6Olllcyk7CisgICAgICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShm
cmFtZS5kb2N1bWVudCgpLCBCbG9iOjpjcmVhdGUoZnJhbWUuZG9jdW1lbnQoKSwgV1RGTW92ZShp
bmZvLmRhdGEpLCBXVEZNb3ZlKGluZm8uY29udGVudFR5cGUpKSwgV1RGTW92ZShpbmZvLmZpbGVO
YW1lKSksIEhUTUxBdHRhY2htZW50RWxlbWVudDo6VXBkYXRlRGlzcGxheUF0dHJpYnV0ZXM6Olll
cyk7CiAgICAgICAgICAgICBwYXJlbnQtPnJlcGxhY2VDaGlsZChXVEZNb3ZlKGF0dGFjaG1lbnQp
LCBXVEZNb3ZlKG9yaWdpbmFsRWxlbWVudCkpOwogICAgICAgICB9CiAgICAgfQpAQCAtNDA5LDcg
KzQwOSw3IEBAIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBjcmVhdGVGcmFnbWVudEFuZEFkZFJl
c291cmNlcyhGcmFtZSYgZnJhbWUsIE5TQXR0cmlidXRlCiAKICAgICBIYXNoTWFwPEF0b21TdHJp
bmcsIEF0b21TdHJpbmc+IGJsb2JVUkxNYXA7CiAgICAgZm9yIChjb25zdCBSZWY8QXJjaGl2ZVJl
c291cmNlPiYgc3VicmVzb3VyY2UgOiBmcmFnbWVudEFuZFJlc291cmNlcy5yZXNvdXJjZXMpIHsK
LSAgICAgICAgYXV0byBibG9iID0gQmxvYjo6Y3JlYXRlKHN1YnJlc291cmNlLT5kYXRhKCksIHN1
YnJlc291cmNlLT5taW1lVHlwZSgpKTsKKyAgICAgICAgYXV0byBibG9iID0gQmxvYjo6Y3JlYXRl
KCZkb2N1bWVudCwgc3VicmVzb3VyY2UtPmRhdGEoKSwgc3VicmVzb3VyY2UtPm1pbWVUeXBlKCkp
OwogICAgICAgICBTdHJpbmcgYmxvYlVSTCA9IERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJMKGRvY3Vt
ZW50LCBibG9iKTsKICAgICAgICAgYmxvYlVSTE1hcC5zZXQoc3VicmVzb3VyY2UtPnVybCgpLnN0
cmluZygpLCBibG9iVVJMKTsKICAgICB9CkBAIC00NTgsNyArNDU4LDcgQEAgc3RhdGljIFN0cmlu
ZyBzYW5pdGl6ZU1hcmt1cFdpdGhBcmNoaXZlKEZyYW1lJiBmcmFtZSwgRG9jdW1lbnQmIGRlc3Rp
bmF0aW9uRG9jdW0KICAgICAgICAgYXV0byYgc3VicmVzb3VyY2VVUkwgPSBzdWJyZXNvdXJjZS0+
dXJsKCk7CiAgICAgICAgIGlmICghc2hvdWxkUmVwbGFjZVN1YnJlc291cmNlVVJMKHN1YnJlc291
cmNlVVJMKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBhdXRvIGJsb2IgPSBCbG9i
OjpjcmVhdGUoc3VicmVzb3VyY2UtPmRhdGEoKSwgc3VicmVzb3VyY2UtPm1pbWVUeXBlKCkpOwor
ICAgICAgICBhdXRvIGJsb2IgPSBCbG9iOjpjcmVhdGUoJmRlc3RpbmF0aW9uRG9jdW1lbnQsIHN1
YnJlc291cmNlLT5kYXRhKCksIHN1YnJlc291cmNlLT5taW1lVHlwZSgpKTsKICAgICAgICAgU3Ry
aW5nIGJsb2JVUkwgPSBET01VUkw6OmNyZWF0ZU9iamVjdFVSTChkZXN0aW5hdGlvbkRvY3VtZW50
LCBibG9iKTsKICAgICAgICAgYmxvYlVSTE1hcC5zZXQoc3VicmVzb3VyY2VVUkwuc3RyaW5nKCks
IGJsb2JVUkwpOwogICAgIH0KQEAgLTQ4NSw3ICs0ODUsNyBAQCBzdGF0aWMgU3RyaW5nIHNhbml0
aXplTWFya3VwV2l0aEFyY2hpdmUoRnJhbWUmIGZyYW1lLCBEb2N1bWVudCYgZGVzdGluYXRpb25E
b2N1bQogICAgICAgICBWZWN0b3I8dWludDhfdD4gYmxvYkJ1ZmZlcjsKICAgICAgICAgYmxvYkJ1
ZmZlci5yZXNlcnZlQ2FwYWNpdHkodXRmOC5sZW5ndGgoKSk7CiAgICAgICAgIGJsb2JCdWZmZXIu
YXBwZW5kKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhfdCo+KHV0ZjguZGF0YSgpKSwgdXRm
OC5sZW5ndGgoKSk7Ci0gICAgICAgIGF1dG8gYmxvYiA9IEJsb2I6OmNyZWF0ZShXVEZNb3ZlKGJs
b2JCdWZmZXIpLCB0eXBlKTsKKyAgICAgICAgYXV0byBibG9iID0gQmxvYjo6Y3JlYXRlKCZkZXN0
aW5hdGlvbkRvY3VtZW50LCBXVEZNb3ZlKGJsb2JCdWZmZXIpLCB0eXBlKTsKIAogICAgICAgICBT
dHJpbmcgc3ViZnJhbWVCbG9iVVJMID0gRE9NVVJMOjpjcmVhdGVPYmplY3RVUkwoZGVzdGluYXRp
b25Eb2N1bWVudCwgYmxvYik7CiAgICAgICAgIGJsb2JVUkxNYXAuc2V0KHN1YmZyYW1lVVJMLnN0
cmluZygpLCBzdWJmcmFtZUJsb2JVUkwpOwpAQCAtNjg1LDcgKzY4NSw3IEBAIGJvb2wgV2ViQ29u
dGVudFJlYWRlcjo6cmVhZEltYWdlKFJlZjxTaGFyZWRCdWZmZXI+JiYgYnVmZmVyLCBjb25zdCBT
dHJpbmcmIHR5cGUsCiAgICAgaWYgKHNob3VsZFJlcGxhY2VSaWNoQ29udGVudFdpdGhBdHRhY2ht
ZW50cygpKQogICAgICAgICBhZGRGcmFnbWVudChjcmVhdGVGcmFnbWVudEZvckltYWdlQXR0YWNo
bWVudChmcmFtZSwgZG9jdW1lbnQsIFdURk1vdmUoYnVmZmVyKSwgdHlwZSwgcHJlZmVycmVkUHJl
c2VudGF0aW9uU2l6ZSkpOwogICAgIGVsc2UKLSAgICAgICAgYWRkRnJhZ21lbnQoY3JlYXRlRnJh
Z21lbnRGb3JJbWFnZUFuZFVSTChkb2N1bWVudCwgRE9NVVJMOjpjcmVhdGVPYmplY3RVUkwoZG9j
dW1lbnQsIEJsb2I6OmNyZWF0ZShidWZmZXIuZ2V0KCksIHR5cGUpKSwgcHJlZmVycmVkUHJlc2Vu
dGF0aW9uU2l6ZSkpOworICAgICAgICBhZGRGcmFnbWVudChjcmVhdGVGcmFnbWVudEZvckltYWdl
QW5kVVJMKGRvY3VtZW50LCBET01VUkw6OmNyZWF0ZU9iamVjdFVSTChkb2N1bWVudCwgQmxvYjo6
Y3JlYXRlKCZkb2N1bWVudCwgYnVmZmVyLmdldCgpLCB0eXBlKSksIHByZWZlcnJlZFByZXNlbnRh
dGlvblNpemUpKTsKIAogICAgIHJldHVybiBmcmFnbWVudDsKIH0KQEAgLTcwNiw3ICs3MDYsNyBA
QCBzdGF0aWMgUmVmPEhUTUxFbGVtZW50PiBhdHRhY2htZW50Rm9yRmlsZVBhdGgoRnJhbWUmIGZy
YW1lLCBjb25zdCBTdHJpbmcmIHBhdGgsCiAgICAgYXV0byBkb2N1bWVudCA9IG1ha2VSZWYoKmZy
YW1lLmRvY3VtZW50KCkpOwogICAgIGF1dG8gYXR0YWNobWVudCA9IEhUTUxBdHRhY2htZW50RWxl
bWVudDo6Y3JlYXRlKEhUTUxOYW1lczo6YXR0YWNobWVudFRhZywgZG9jdW1lbnQpOwogICAgIGlm
ICghc3VwcG9ydHNDbGllbnRTaWRlQXR0YWNobWVudERhdGEoZnJhbWUpKSB7Ci0gICAgICAgIGF0
dGFjaG1lbnQtPnNldEZpbGUoRmlsZTo6Y3JlYXRlKHBhdGgpLCBIVE1MQXR0YWNobWVudEVsZW1l
bnQ6OlVwZGF0ZURpc3BsYXlBdHRyaWJ1dGVzOjpZZXMpOworICAgICAgICBhdHRhY2htZW50LT5z
ZXRGaWxlKEZpbGU6OmNyZWF0ZShkb2N1bWVudC5wdHIoKSwgcGF0aCksIEhUTUxBdHRhY2htZW50
RWxlbWVudDo6VXBkYXRlRGlzcGxheUF0dHJpYnV0ZXM6Olllcyk7CiAgICAgICAgIHJldHVybiBh
dHRhY2htZW50OwogICAgIH0KIApAQCAtNzMzLDcgKzczMyw3IEBAIHN0YXRpYyBSZWY8SFRNTEVs
ZW1lbnQ+IGF0dGFjaG1lbnRGb3JGaWxlUGF0aChGcmFtZSYgZnJhbWUsIGNvbnN0IFN0cmluZyYg
cGF0aCwKIAogICAgIGlmIChjb250ZW50VHlwZUlzU3VpdGFibGVGb3JJbmxpbmVJbWFnZVJlcHJl
c2VudGF0aW9uKGNvbnRlbnRUeXBlKSkgewogICAgICAgICBhdXRvIGltYWdlID0gSFRNTEltYWdl
RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKLSAgICAgICAgaW1hZ2UtPnNldEF0dHJpYnV0ZVdp
dGhvdXRTeW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjpzcmNBdHRyLCBET01VUkw6OmNyZWF0ZU9i
amVjdFVSTChkb2N1bWVudCwgRmlsZTo6Y3JlYXRlKHBhdGgpKSk7CisgICAgICAgIGltYWdlLT5z
ZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6c3JjQXR0ciwgRE9N
VVJMOjpjcmVhdGVPYmplY3RVUkwoZG9jdW1lbnQsIEZpbGU6OmNyZWF0ZShkb2N1bWVudC5wdHIo
KSwgcGF0aCkpKTsKICAgICAgICAgaW1hZ2UtPnNldEF0dGFjaG1lbnRFbGVtZW50KFdURk1vdmUo
YXR0YWNobWVudCkpOwogICAgICAgICBpZiAocHJlZmVycmVkU2l6ZS53aWR0aCkKICAgICAgICAg
ICAgIGltYWdlLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6
d2lkdGhBdHRyLCBBdG9tU3RyaW5nOjpudW1iZXIoKnByZWZlcnJlZFNpemUud2lkdGgpKTsKQEAg
LTc2Miw3ICs3NjIsNyBAQCBzdGF0aWMgUmVmPEhUTUxFbGVtZW50PiBhdHRhY2htZW50Rm9yRGF0
YShGcmFtZSYgZnJhbWUsIFNoYXJlZEJ1ZmZlciYgYnVmZmVyLCBjbwogICAgICAgICBmaWxlTmFt
ZSA9IG5hbWU7CiAKICAgICBpZiAoIXN1cHBvcnRzQ2xpZW50U2lkZUF0dGFjaG1lbnREYXRhKGZy
YW1lKSkgewotICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShCbG9iOjpj
cmVhdGUoYnVmZmVyLCBXVEZNb3ZlKGF0dGFjaG1lbnRUeXBlKSksIGZpbGVOYW1lKSk7CisgICAg
ICAgIGF0dGFjaG1lbnQtPnNldEZpbGUoRmlsZTo6Y3JlYXRlKGRvY3VtZW50LnB0cigpLCBCbG9i
OjpjcmVhdGUoZG9jdW1lbnQucHRyKCksIGJ1ZmZlciwgV1RGTW92ZShhdHRhY2htZW50VHlwZSkp
LCBmaWxlTmFtZSkpOwogICAgICAgICByZXR1cm4gYXR0YWNobWVudDsKICAgICB9CiAKQEAgLTc3
MCw3ICs3NzAsNyBAQCBzdGF0aWMgUmVmPEhUTUxFbGVtZW50PiBhdHRhY2htZW50Rm9yRGF0YShG
cmFtZSYgZnJhbWUsIFNoYXJlZEJ1ZmZlciYgYnVmZmVyLCBjbwogCiAgICAgaWYgKGNvbnRlbnRU
eXBlSXNTdWl0YWJsZUZvcklubGluZUltYWdlUmVwcmVzZW50YXRpb24oYXR0YWNobWVudFR5cGUp
KSB7CiAgICAgICAgIGF1dG8gaW1hZ2UgPSBIVE1MSW1hZ2VFbGVtZW50OjpjcmVhdGUoZG9jdW1l
bnQpOwotICAgICAgICBpbWFnZS0+c2V0QXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihI
VE1MTmFtZXM6OnNyY0F0dHIsIERPTVVSTDo6Y3JlYXRlT2JqZWN0VVJMKGRvY3VtZW50LCBGaWxl
OjpjcmVhdGUoQmxvYjo6Y3JlYXRlKGJ1ZmZlciwgV1RGTW92ZShhdHRhY2htZW50VHlwZSkpLCBX
VEZNb3ZlKGZpbGVOYW1lKSkpKTsKKyAgICAgICAgaW1hZ2UtPnNldEF0dHJpYnV0ZVdpdGhvdXRT
eW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjpzcmNBdHRyLCBET01VUkw6OmNyZWF0ZU9iamVjdFVS
TChkb2N1bWVudCwgRmlsZTo6Y3JlYXRlKGRvY3VtZW50LnB0cigpLCBCbG9iOjpjcmVhdGUoZG9j
dW1lbnQucHRyKCksIGJ1ZmZlciwgV1RGTW92ZShhdHRhY2htZW50VHlwZSkpLCBXVEZNb3ZlKGZp
bGVOYW1lKSkpKTsKICAgICAgICAgaW1hZ2UtPnNldEF0dGFjaG1lbnRFbGVtZW50KFdURk1vdmUo
YXR0YWNobWVudCkpOwogICAgICAgICBpZiAocHJlZmVycmVkU2l6ZS53aWR0aCkKICAgICAgICAg
ICAgIGltYWdlLT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6
d2lkdGhBdHRyLCBBdG9tU3RyaW5nOjpudW1iZXIoKnByZWZlcnJlZFNpemUud2lkdGgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFya3VwLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvbWFya3VwLmNwcAppbmRleCAyN2JjYWVlZDM2ZmVhNjEwOTA0ODE1MTRlMTZl
MjU4MDhhMDIyY2Q1Li4xZjcxOTRhNzMyOGU5NDdhZWJiNjJhYzFjOGQ1OGZlOTJhMTUwYTdlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hcmt1cC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9tYXJrdXAuY3BwCkBAIC0xMDAwLDkgKzEwMDAsOSBAQCBzdGF0aWMg
dm9pZCByZXN0b3JlQXR0YWNobWVudEVsZW1lbnRzSW5GcmFnbWVudChEb2N1bWVudEZyYWdtZW50
JiBmcmFnbWVudCkKICAgICAgICAgYXV0byBhdHRhY2htZW50UGF0aCA9IGF0dGFjaG1lbnQtPmF0
dGFjaG1lbnRQYXRoKCk7CiAgICAgICAgIGF1dG8gYmxvYlVSTCA9IGF0dGFjaG1lbnQtPmJsb2JV
UkwoKTsKICAgICAgICAgaWYgKCFhdHRhY2htZW50UGF0aC5pc0VtcHR5KCkpCi0gICAgICAgICAg
ICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmNyZWF0ZShhdHRhY2htZW50UGF0aCkpOworICAg
ICAgICAgICAgYXR0YWNobWVudC0+c2V0RmlsZShGaWxlOjpjcmVhdGUoZnJhZ21lbnQub3duZXJE
b2N1bWVudCgpLCBhdHRhY2htZW50UGF0aCkpOwogICAgICAgICBlbHNlIGlmICghYmxvYlVSTC5p
c0VtcHR5KCkpCi0gICAgICAgICAgICBhdHRhY2htZW50LT5zZXRGaWxlKEZpbGU6OmRlc2VyaWFs
aXplKHsgfSwgYmxvYlVSTCwgYXR0YWNobWVudC0+YXR0YWNobWVudFR5cGUoKSwgYXR0YWNobWVu
dC0+YXR0YWNobWVudFRpdGxlKCkpKTsKKyAgICAgICAgICAgIGF0dGFjaG1lbnQtPnNldEZpbGUo
RmlsZTo6ZGVzZXJpYWxpemUoZnJhZ21lbnQub3duZXJEb2N1bWVudCgpLCB7IH0sIGJsb2JVUkws
IGF0dGFjaG1lbnQtPmF0dGFjaG1lbnRUeXBlKCksIGF0dGFjaG1lbnQtPmF0dGFjaG1lbnRUaXRs
ZSgpKSk7CiAKICAgICAgICAgLy8gUmVtb3ZlIHRlbXBvcmFyeSBhdHRyaWJ1dGVzIHRoYXQgd2Vy
ZSBwcmV2aW91c2x5IGFkZGVkIGluIFN0eWxlZE1hcmt1cEFjY3VtdWxhdG9yOjphcHBlbmRDdXN0
b21BdHRyaWJ1dGVzLgogICAgICAgICBhdHRhY2htZW50LT5yZW1vdmVBdHRyaWJ1dGUod2Via2l0
YXR0YWNobWVudGlkQXR0cik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Js
b2IuY3BwIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9CbG9iLmNwcAppbmRleCBkNzUxM2I3NmJm
MDFlYmIwNTg3N2M3ZGViNzlhZDY2NmEzNzY3YmZmLi5mNWJjM2NhNzI2OTY0ZDYxNmUwMGZlNjIx
OWI0YTVjYjg5YWRhZGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2Iu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvQmxvYi5jcHAKQEAgLTc0LDIxICs3NCwy
NCBAQCBVUkxSZWdpc3RyeSYgQmxvYlVSTFJlZ2lzdHJ5OjpyZWdpc3RyeSgpCiAgICAgcmV0dXJu
IGluc3RhbmNlOwogfQogCi1CbG9iOjpCbG9iKFVuaW5pdGlhbGl6ZWRDb250cnVjdG9yLCBVUkwm
JiB1cmwsIFN0cmluZyYmIHR5cGUpCi0gICAgOiBtX2ludGVybmFsVVJMKFdURk1vdmUodXJsKSkK
K0Jsb2I6OkJsb2IoVW5pbml0aWFsaXplZENvbnRydWN0b3IsIFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIFVSTCYmIHVybCwgU3RyaW5nJiYgdHlwZSkKKyAgICA6IEFjdGl2ZURPTU9i
amVjdChjb250ZXh0KQorICAgICwgbV9pbnRlcm5hbFVSTChXVEZNb3ZlKHVybCkpCiAgICAgLCBt
X3R5cGUoV1RGTW92ZSh0eXBlKSkKIHsKIH0KIAotQmxvYjo6QmxvYigpCi0gICAgOiBtX3NpemUo
MCkKK0Jsb2I6OkJsb2IoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCkKKyAgICA6IEFj
dGl2ZURPTU9iamVjdChjb250ZXh0KQorICAgICwgbV9zaXplKDApCiB7CiAgICAgbV9pbnRlcm5h
bFVSTCA9IEJsb2JVUkw6OmNyZWF0ZUludGVybmFsVVJMKCk7CiAgICAgVGhyZWFkYWJsZUJsb2JS
ZWdpc3RyeTo6cmVnaXN0ZXJCbG9iVVJMKG1faW50ZXJuYWxVUkwsIHsgfSwgIHsgfSk7CiB9CiAK
LUJsb2I6OkJsb2IoVmVjdG9yPEJsb2JQYXJ0VmFyaWFudD4mJiBibG9iUGFydFZhcmlhbnRzLCBj
b25zdCBCbG9iUHJvcGVydHlCYWcmIHByb3BlcnR5QmFnKQotICAgIDogbV9pbnRlcm5hbFVSTChC
bG9iVVJMOjpjcmVhdGVJbnRlcm5hbFVSTCgpKQorQmxvYjo6QmxvYihTY3JpcHRFeGVjdXRpb25D
b250ZXh0JiBjb250ZXh0LCBWZWN0b3I8QmxvYlBhcnRWYXJpYW50PiYmIGJsb2JQYXJ0VmFyaWFu
dHMsIGNvbnN0IEJsb2JQcm9wZXJ0eUJhZyYgcHJvcGVydHlCYWcpCisgICAgOiBBY3RpdmVET01P
YmplY3QoJmNvbnRleHQpCisgICAgLCBtX2ludGVybmFsVVJMKEJsb2JVUkw6OmNyZWF0ZUludGVy
bmFsVVJMKCkpCiAgICAgLCBtX3R5cGUobm9ybWFsaXplZENvbnRlbnRUeXBlKHByb3BlcnR5QmFn
LnR5cGUpKQogewogICAgIEJsb2JCdWlsZGVyIGJ1aWxkZXIocHJvcGVydHlCYWcuZW5kaW5ncyk7
CkBAIC0xMDMsOCArMTA2LDkgQEAgQmxvYjo6QmxvYihWZWN0b3I8QmxvYlBhcnRWYXJpYW50PiYm
IGJsb2JQYXJ0VmFyaWFudHMsIGNvbnN0IEJsb2JQcm9wZXJ0eUJhZyYgcHIKICAgICBUaHJlYWRh
YmxlQmxvYlJlZ2lzdHJ5OjpyZWdpc3RlckJsb2JVUkwobV9pbnRlcm5hbFVSTCwgYnVpbGRlci5m
aW5hbGl6ZSgpLCBtX3R5cGUpOwogfQogCi1CbG9iOjpCbG9iKGNvbnN0IFNoYXJlZEJ1ZmZlciYg
YnVmZmVyLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKQotICAgIDogbV90eXBlKGNvbnRlbnRU
eXBlKQorQmxvYjo6QmxvYihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBT
aGFyZWRCdWZmZXImIGJ1ZmZlciwgY29uc3QgU3RyaW5nJiBjb250ZW50VHlwZSkKKyAgICA6IEFj
dGl2ZURPTU9iamVjdChjb250ZXh0KQorICAgICwgbV90eXBlKGNvbnRlbnRUeXBlKQogICAgICwg
bV9zaXplKGJ1ZmZlci5zaXplKCkpCiB7CiAgICAgVmVjdG9yPHVpbnQ4X3Q+IGRhdGE7CkBAIC0x
MTYsOCArMTIwLDkgQEAgQmxvYjo6QmxvYihjb25zdCBTaGFyZWRCdWZmZXImIGJ1ZmZlciwgY29u
c3QgU3RyaW5nJiBjb250ZW50VHlwZSkKICAgICBUaHJlYWRhYmxlQmxvYlJlZ2lzdHJ5OjpyZWdp
c3RlckJsb2JVUkwobV9pbnRlcm5hbFVSTCwgV1RGTW92ZShibG9iUGFydHMpLCBjb250ZW50VHlw
ZSk7CiB9CiAKLUJsb2I6OkJsb2IoVmVjdG9yPHVpbnQ4X3Q+JiYgZGF0YSwgY29uc3QgU3RyaW5n
JiBjb250ZW50VHlwZSkKLSAgICA6IG1fdHlwZShjb250ZW50VHlwZSkKK0Jsb2I6OkJsb2IoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgVmVjdG9yPHVpbnQ4X3Q+JiYgZGF0YSwgY29u
c3QgU3RyaW5nJiBjb250ZW50VHlwZSkKKyAgICA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0KQor
ICAgICwgbV90eXBlKGNvbnRlbnRUeXBlKQogICAgICwgbV9zaXplKGRhdGEuc2l6ZSgpKQogewog
ICAgIFZlY3RvcjxCbG9iUGFydD4gYmxvYlBhcnRzOwpAQCAtMTI2LDE2ICsxMzEsMTggQEAgQmxv
Yjo6QmxvYihWZWN0b3I8dWludDhfdD4mJiBkYXRhLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBl
KQogICAgIFRocmVhZGFibGVCbG9iUmVnaXN0cnk6OnJlZ2lzdGVyQmxvYlVSTChtX2ludGVybmFs
VVJMLCBXVEZNb3ZlKGJsb2JQYXJ0cyksIGNvbnRlbnRUeXBlKTsKIH0KIAotQmxvYjo6QmxvYihS
ZWZlcmVuY2luZ0V4aXN0aW5nQmxvYkNvbnN0cnVjdG9yLCBjb25zdCBCbG9iJiBibG9iKQotICAg
IDogbV9pbnRlcm5hbFVSTChCbG9iVVJMOjpjcmVhdGVJbnRlcm5hbFVSTCgpKQorQmxvYjo6Qmxv
YihSZWZlcmVuY2luZ0V4aXN0aW5nQmxvYkNvbnN0cnVjdG9yLCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0LCBjb25zdCBCbG9iJiBibG9iKQorICAgIDogQWN0aXZlRE9NT2JqZWN0KGNv
bnRleHQpCisgICAgLCBtX2ludGVybmFsVVJMKEJsb2JVUkw6OmNyZWF0ZUludGVybmFsVVJMKCkp
CiAgICAgLCBtX3R5cGUoYmxvYi50eXBlKCkpCiAgICAgLCBtX3NpemUoYmxvYi5zaXplKCkpCiB7
CiAgICAgVGhyZWFkYWJsZUJsb2JSZWdpc3RyeTo6cmVnaXN0ZXJCbG9iVVJMKG1faW50ZXJuYWxV
UkwsIHsgQmxvYlBhcnQoYmxvYi51cmwoKSkgfSAsIG1fdHlwZSk7CiB9CiAKLUJsb2I6OkJsb2Io
RGVzZXJpYWxpemF0aW9uQ29udHJ1Y3RvciwgY29uc3QgVVJMJiBzcmNVUkwsIGNvbnN0IFN0cmlu
ZyYgdHlwZSwgT3B0aW9uYWw8dW5zaWduZWQgbG9uZyBsb25nPiBzaXplLCBjb25zdCBTdHJpbmcm
IGZpbGVCYWNrZWRQYXRoKQotICAgIDogbV90eXBlKG5vcm1hbGl6ZWRDb250ZW50VHlwZSh0eXBl
KSkKK0Jsb2I6OkJsb2IoRGVzZXJpYWxpemF0aW9uQ29udHJ1Y3RvciwgU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgY29uc3QgVVJMJiBzcmNVUkwsIGNvbnN0IFN0cmluZyYgdHlwZSwg
T3B0aW9uYWw8dW5zaWduZWQgbG9uZyBsb25nPiBzaXplLCBjb25zdCBTdHJpbmcmIGZpbGVCYWNr
ZWRQYXRoKQorICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRleHQpCisgICAgLCBtX3R5cGUobm9y
bWFsaXplZENvbnRlbnRUeXBlKHR5cGUpKQogICAgICwgbV9zaXplKHNpemUpCiB7CiAgICAgbV9p
bnRlcm5hbFVSTCA9IEJsb2JVUkw6OmNyZWF0ZUludGVybmFsVVJMKCk7CkBAIC0xNDUsOCArMTUy
LDkgQEAgQmxvYjo6QmxvYihEZXNlcmlhbGl6YXRpb25Db250cnVjdG9yLCBjb25zdCBVUkwmIHNy
Y1VSTCwgY29uc3QgU3RyaW5nJiB0eXBlLCBPcHQKICAgICAgICAgVGhyZWFkYWJsZUJsb2JSZWdp
c3RyeTo6cmVnaXN0ZXJCbG9iVVJMT3B0aW9uYWxseUZpbGVCYWNrZWQobV9pbnRlcm5hbFVSTCwg
c3JjVVJMLCBmaWxlQmFja2VkUGF0aCwgbV90eXBlKTsKIH0KIAotQmxvYjo6QmxvYihjb25zdCBV
UkwmIHNyY1VSTCwgbG9uZyBsb25nIHN0YXJ0LCBsb25nIGxvbmcgZW5kLCBjb25zdCBTdHJpbmcm
IHR5cGUpCi0gICAgOiBtX3R5cGUobm9ybWFsaXplZENvbnRlbnRUeXBlKHR5cGUpKQorQmxvYjo6
QmxvYihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBVUkwmIHNyY1VSTCwg
bG9uZyBsb25nIHN0YXJ0LCBsb25nIGxvbmcgZW5kLCBjb25zdCBTdHJpbmcmIHR5cGUpCisgICAg
OiBBY3RpdmVET01PYmplY3QoY29udGV4dCkKKyAgICAsIG1fdHlwZShub3JtYWxpemVkQ29udGVu
dFR5cGUodHlwZSkpCiAgICAgLy8gbV9zaXplIGlzIG5vdCBuZWNlc3NhcmlseSBlcXVhbCB0byBl
bmQgLSBzdGFydCBzbyB3ZSBkbyBub3QgaW5pdGlhbGl6ZSBpdCBoZXJlLgogewogICAgIG1faW50
ZXJuYWxVUkwgPSBCbG9iVVJMOjpjcmVhdGVJbnRlcm5hbFVSTCgpOwpAQCAtMTkzLDcgKzIwMSw3
IEBAIFN0cmluZyBCbG9iOjpub3JtYWxpemVkQ29udGVudFR5cGUoY29uc3QgU3RyaW5nJiBjb250
ZW50VHlwZSkKIAogdm9pZCBCbG9iOjpsb2FkQmxvYihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBj
b250ZXh0LCBGaWxlUmVhZGVyTG9hZGVyOjpSZWFkVHlwZSByZWFkVHlwZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChzdGQ6OnVuaXF1ZV9wdHI8QmxvYkxvYWRlcj4pPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogewotICAgIGF1dG8gYmxvYkxvYWRlciA9IG1ha2VVbmlxdWU8QmxvYkxvYWRlcj4oW3Ro
aXMsIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildKEJsb2JM
b2FkZXImIGJsb2JMb2FkZXIpIG11dGFibGUgeworICAgIGF1dG8gYmxvYkxvYWRlciA9IG1ha2VV
bmlxdWU8QmxvYkxvYWRlcj4oW3RoaXMsIHBlbmRpbmdBY3Rpdml0eSA9IG1ha2VQZW5kaW5nQWN0
aXZpdHkoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpXShCbG9iTG9hZGVyJiBibG9iTG9hZGVyKSBtdXRhYmxlIHsKICAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIobV9ibG9iTG9hZGVycy50YWtlKCZibG9iTG9hZGVyKSk7CiAgICAgfSk7CiAgICAg
YXV0byogYmxvYkxvYWRlclB0ciA9IGJsb2JMb2FkZXIuZ2V0KCk7CkBAIC0yNjIsNSArMjcwLDEw
IEBAIFVSTFJlZ2lzdHJ5JiBCbG9iOjpyZWdpc3RyeSgpIGNvbnN0CiAgICAgcmV0dXJuIEJsb2JV
UkxSZWdpc3RyeTo6cmVnaXN0cnkoKTsKIH0KIAorY29uc3QgY2hhciogQmxvYjo6YWN0aXZlRE9N
T2JqZWN0TmFtZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuICJCbG9iIjsKK30KKwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2Iu
aCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvQmxvYi5oCmluZGV4IDU3ZjI2ZWM5NDk1MGI3ZTY4
NWEzMGYwMDAwMzlkOTU0MTEzY2ZmMjQuLjMwMTgxMTdiYjUxMjZmMjY5ZGQ5OGU5MDhmMDAxZjcx
ZTRlM2U0ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvQmxvYi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvQmxvYi5oCkBAIC01NSwzMyArNTUsNDMgQEAgY2xhc3Mg
U2hhcmVkQnVmZmVyOwogCiB1c2luZyBCbG9iUGFydFZhcmlhbnQgPSBWYXJpYW50PFJlZlB0cjxK
U0M6OkFycmF5QnVmZmVyVmlldz4sIFJlZlB0cjxKU0M6OkFycmF5QnVmZmVyPiwgUmVmUHRyPEJs
b2I+LCBTdHJpbmc+OwogCi1jbGFzcyBCbG9iIDogcHVibGljIFNjcmlwdFdyYXBwYWJsZSwgcHVi
bGljIFVSTFJlZ2lzdHJhYmxlLCBwdWJsaWMgUmVmQ291bnRlZDxCbG9iPiB7CitjbGFzcyBCbG9i
IDogcHVibGljIFNjcmlwdFdyYXBwYWJsZSwgcHVibGljIFVSTFJlZ2lzdHJhYmxlLCBwdWJsaWMg
UmVmQ291bnRlZDxCbG9iPiwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7CiAgICAgV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRF9FWFBPUlQoQmxvYiwgV0VCQ09SRV9FWFBPUlQpOwogcHVibGljOgotICAg
IHN0YXRpYyBSZWY8QmxvYj4gY3JlYXRlKCkKKyAgICBzdGF0aWMgUmVmPEJsb2I+IGNyZWF0ZShT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgQmxvYik7CisgICAgICAgIGF1dG8gYmxvYiA9IGFkb3B0UmVmKCpuZXcgQmxv
Yihjb250ZXh0KSk7CisgICAgICAgIGJsb2ItPnN1c3BlbmRJZk5lZWRlZCgpOworICAgICAgICBy
ZXR1cm4gYmxvYjsKICAgICB9CiAKLSAgICBzdGF0aWMgUmVmPEJsb2I+IGNyZWF0ZShWZWN0b3I8
QmxvYlBhcnRWYXJpYW50PiYmIGJsb2JQYXJ0VmFyaWFudHMsIGNvbnN0IEJsb2JQcm9wZXJ0eUJh
ZyYgcHJvcGVydHlCYWcpCisgICAgc3RhdGljIFJlZjxCbG9iPiBjcmVhdGUoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYgY29udGV4dCwgVmVjdG9yPEJsb2JQYXJ0VmFyaWFudD4mJiBibG9iUGFydFZh
cmlhbnRzLCBjb25zdCBCbG9iUHJvcGVydHlCYWcmIHByb3BlcnR5QmFnKQogICAgIHsKLSAgICAg
ICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQmxvYihXVEZNb3ZlKGJsb2JQYXJ0VmFyaWFudHMpLCBw
cm9wZXJ0eUJhZykpOworICAgICAgICBhdXRvIGJsb2IgPSBhZG9wdFJlZigqbmV3IEJsb2IoY29u
dGV4dCwgV1RGTW92ZShibG9iUGFydFZhcmlhbnRzKSwgcHJvcGVydHlCYWcpKTsKKyAgICAgICAg
YmxvYi0+c3VzcGVuZElmTmVlZGVkKCk7CisgICAgICAgIHJldHVybiBibG9iOwogICAgIH0KIAot
ICAgIHN0YXRpYyBSZWY8QmxvYj4gY3JlYXRlKGNvbnN0IFNoYXJlZEJ1ZmZlciYgYnVmZmVyLCBj
b25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKQorICAgIHN0YXRpYyBSZWY8QmxvYj4gY3JlYXRlKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IFNoYXJlZEJ1ZmZlciYgYnVmZmVy
LCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKCpuZXcgQmxvYihidWZmZXIsIGNvbnRlbnRUeXBlKSk7CisgICAgICAgIGF1dG8gYmxvYiA9
IGFkb3B0UmVmKCpuZXcgQmxvYihjb250ZXh0LCBidWZmZXIsIGNvbnRlbnRUeXBlKSk7CisgICAg
ICAgIGJsb2ItPnN1c3BlbmRJZk5lZWRlZCgpOworICAgICAgICByZXR1cm4gYmxvYjsKICAgICB9
CiAKLSAgICBzdGF0aWMgUmVmPEJsb2I+IGNyZWF0ZShWZWN0b3I8dWludDhfdD4mJiBkYXRhLCBj
b25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKQorICAgIHN0YXRpYyBSZWY8QmxvYj4gY3JlYXRlKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFZlY3Rvcjx1aW50OF90PiYmIGRhdGEsIGNv
bnN0IFN0cmluZyYgY29udGVudFR5cGUpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYo
Km5ldyBCbG9iKFdURk1vdmUoZGF0YSksIGNvbnRlbnRUeXBlKSk7CisgICAgICAgIGF1dG8gYmxv
YiA9IGFkb3B0UmVmKCpuZXcgQmxvYihjb250ZXh0LCBXVEZNb3ZlKGRhdGEpLCBjb250ZW50VHlw
ZSkpOworICAgICAgICBibG9iLT5zdXNwZW5kSWZOZWVkZWQoKTsKKyAgICAgICAgcmV0dXJuIGJs
b2I7CiAgICAgfQogCi0gICAgc3RhdGljIFJlZjxCbG9iPiBkZXNlcmlhbGl6ZShjb25zdCBVUkwm
IHNyY1VSTCwgY29uc3QgU3RyaW5nJiB0eXBlLCBsb25nIGxvbmcgc2l6ZSwgY29uc3QgU3RyaW5n
JiBmaWxlQmFja2VkUGF0aCkKKyAgICBzdGF0aWMgUmVmPEJsb2I+IGRlc2VyaWFsaXplKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IFVSTCYgc3JjVVJMLCBjb25zdCBTdHJp
bmcmIHR5cGUsIGxvbmcgbG9uZyBzaXplLCBjb25zdCBTdHJpbmcmIGZpbGVCYWNrZWRQYXRoKQog
ICAgIHsKICAgICAgICAgQVNTRVJUKEJsb2I6OmlzTm9ybWFsaXplZENvbnRlbnRUeXBlKHR5cGUp
KTsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQmxvYihkZXNlcmlhbGl6YXRpb25Db250
cnVjdG9yLCBzcmNVUkwsIHR5cGUsIHNpemUsIGZpbGVCYWNrZWRQYXRoKSk7CisgICAgICAgIGF1
dG8gYmxvYiA9IGFkb3B0UmVmKCpuZXcgQmxvYihkZXNlcmlhbGl6YXRpb25Db250cnVjdG9yLCBj
b250ZXh0LCBzcmNVUkwsIHR5cGUsIHNpemUsIGZpbGVCYWNrZWRQYXRoKSk7CisgICAgICAgIGJs
b2ItPnN1c3BlbmRJZk5lZWRlZCgpOworICAgICAgICByZXR1cm4gYmxvYjsKICAgICB9CiAKICAg
ICB2aXJ0dWFsIH5CbG9iKCk7CkBAIC0xMDQsMzUgKzExNCw0MCBAQCBwdWJsaWM6CiAgICAgLy8g
VVJMUmVnaXN0cmFibGUKICAgICBVUkxSZWdpc3RyeSYgcmVnaXN0cnkoKSBjb25zdCBvdmVycmlk
ZTsKIAotICAgIFJlZjxCbG9iPiBzbGljZShsb25nIGxvbmcgc3RhcnQsIGxvbmcgbG9uZyBlbmQs
IGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUpIGNvbnN0CisgICAgUmVmPEJsb2I+IHNsaWNlKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGxvbmcgbG9uZyBzdGFydCwgbG9uZyBsb25n
IGVuZCwgY29uc3QgU3RyaW5nJiBjb250ZW50VHlwZSkgY29uc3QKICAgICB7Ci0gICAgICAgIHJl
dHVybiBhZG9wdFJlZigqbmV3IEJsb2IobV9pbnRlcm5hbFVSTCwgc3RhcnQsIGVuZCwgY29udGVu
dFR5cGUpKTsKKyAgICAgICAgYXV0byBibG9iID0gYWRvcHRSZWYoKm5ldyBCbG9iKCZjb250ZXh0
LCBtX2ludGVybmFsVVJMLCBzdGFydCwgZW5kLCBjb250ZW50VHlwZSkpOworICAgICAgICBibG9i
LT5zdXNwZW5kSWZOZWVkZWQoKTsKKyAgICAgICAgcmV0dXJuIGJsb2I7CiAgICAgfQogCiAgICAg
dm9pZCB0ZXh0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZWY8RGVmZXJyZWRQcm9taXNlPiYm
KTsKICAgICB2b2lkIGFycmF5QnVmZmVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZWY8RGVm
ZXJyZWRQcm9taXNlPiYmKTsKIAogcHJvdGVjdGVkOgotICAgIFdFQkNPUkVfRVhQT1JUIEJsb2Io
KTsKLSAgICBCbG9iKFZlY3RvcjxCbG9iUGFydFZhcmlhbnQ+JiYsIGNvbnN0IEJsb2JQcm9wZXJ0
eUJhZyYpOwotICAgIEJsb2IoY29uc3QgU2hhcmVkQnVmZmVyJiwgY29uc3QgU3RyaW5nJiBjb250
ZW50VHlwZSk7Ci0gICAgQmxvYihWZWN0b3I8dWludDhfdD4mJiwgY29uc3QgU3RyaW5nJiBjb250
ZW50VHlwZSk7CisgICAgV0VCQ09SRV9FWFBPUlQgZXhwbGljaXQgQmxvYihTY3JpcHRFeGVjdXRp
b25Db250ZXh0Kik7CisgICAgQmxvYihTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgVmVjdG9yPEJs
b2JQYXJ0VmFyaWFudD4mJiwgY29uc3QgQmxvYlByb3BlcnR5QmFnJik7CisgICAgQmxvYihTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2hhcmVkQnVmZmVyJiwgY29uc3QgU3RyaW5nJiBj
b250ZW50VHlwZSk7CisgICAgQmxvYihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgVmVjdG9yPHVp
bnQ4X3Q+JiYsIGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUpOwogCiAgICAgZW51bSBSZWZlcmVu
Y2luZ0V4aXN0aW5nQmxvYkNvbnN0cnVjdG9yIHsgcmVmZXJlbmNpbmdFeGlzdGluZ0Jsb2JDb25z
dHJ1Y3RvciB9OwotICAgIEJsb2IoUmVmZXJlbmNpbmdFeGlzdGluZ0Jsb2JDb25zdHJ1Y3Rvciwg
Y29uc3QgQmxvYiYpOworICAgIEJsb2IoUmVmZXJlbmNpbmdFeGlzdGluZ0Jsb2JDb25zdHJ1Y3Rv
ciwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IEJsb2ImKTsKIAogICAgIGVudW0gVW5p
bml0aWFsaXplZENvbnRydWN0b3IgeyB1bmluaXRpYWxpemVkQ29udHJ1Y3RvciB9OwotICAgIEJs
b2IoVW5pbml0aWFsaXplZENvbnRydWN0b3IsIFVSTCYmLCBTdHJpbmcmJiB0eXBlKTsKKyAgICBC
bG9iKFVuaW5pdGlhbGl6ZWRDb250cnVjdG9yLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgVVJM
JiYsIFN0cmluZyYmIHR5cGUpOwogCiAgICAgZW51bSBEZXNlcmlhbGl6YXRpb25Db250cnVjdG9y
IHsgZGVzZXJpYWxpemF0aW9uQ29udHJ1Y3RvciB9OwotICAgIEJsb2IoRGVzZXJpYWxpemF0aW9u
Q29udHJ1Y3RvciwgY29uc3QgVVJMJiBzcmNVUkwsIGNvbnN0IFN0cmluZyYgdHlwZSwgT3B0aW9u
YWw8dW5zaWduZWQgbG9uZyBsb25nPiBzaXplLCBjb25zdCBTdHJpbmcmIGZpbGVCYWNrZWRQYXRo
KTsKKyAgICBCbG9iKERlc2VyaWFsaXphdGlvbkNvbnRydWN0b3IsIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqLCBjb25zdCBVUkwmIHNyY1VSTCwgY29uc3QgU3RyaW5nJiB0eXBlLCBPcHRpb25hbDx1
bnNpZ25lZCBsb25nIGxvbmc+IHNpemUsIGNvbnN0IFN0cmluZyYgZmlsZUJhY2tlZFBhdGgpOwog
CiAgICAgLy8gRm9yIHNsaWNpbmcuCi0gICAgQmxvYihjb25zdCBVUkwmIHNyY1VSTCwgbG9uZyBs
b25nIHN0YXJ0LCBsb25nIGxvbmcgZW5kLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKTsKKyAg
ICBCbG9iKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBVUkwmIHNyY1VSTCwgbG9uZyBs
b25nIHN0YXJ0LCBsb25nIGxvbmcgZW5kLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlKTsKIAog
cHJpdmF0ZToKICAgICB2b2lkIGxvYWRCbG9iKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBGaWxl
UmVhZGVyTG9hZGVyOjpSZWFkVHlwZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6OnVuaXF1
ZV9wdHI8QmxvYkxvYWRlcj4pPiYmKTsKIAorICAgIC8vIEFjdGl2ZURPTU9iamVjdC4KKyAgICBj
b25zdCBjaGFyKiBhY3RpdmVET01PYmplY3ROYW1lKCkgY29uc3Qgb3ZlcnJpZGU7CisKICAgICAv
LyBUaGlzIGlzIGFuIGludGVybmFsIFVSTCByZWZlcnJpbmcgdG8gdGhlIGJsb2IgZGF0YSBhc3Nv
Y2lhdGVkIHdpdGggdGhpcyBvYmplY3QuIEl0IHNlcnZlcwogICAgIC8vIGFzIGFuIGlkZW50aWZp
ZXIgZm9yIHRoaXMgYmxvYi4gVGhlIGludGVybmFsIFVSTCBpcyBuZXZlciB1c2VkIHRvIHNvdXJj
ZSB0aGUgYmxvYidzIGNvbnRlbnQKICAgICAvLyBpbnRvIGFuIEhUTUwgb3IgZm9yIEZpbGVSZWFk
J2luZywgcHVibGljIGJsb2IgVVJMcyBtdXN0IGJlIHVzZWQgZm9yIHRob3NlIHB1cnBvc2VzLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9CbG9iLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL2ZpbGVhcGkvQmxvYi5pZGwKaW5kZXggY2Q4MDg3ODRjMDk2OTY0MzNlYzQ3OTJhZDM4MDhh
ZjNmYmJjYzM2Ni4uNzlmMzkzMDA5NzZhZjRjYjdlNmRkNjVmMmJmZWMyMDhhYTA1MmYwZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9CbG9iLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9maWxlYXBpL0Jsb2IuaWRsCkBAIC0zMSwxNiArMzEsMTcgQEAKIHR5cGVkZWYgKEJ1ZmZl
clNvdXJjZSBvciBCbG9iIG9yIFVTVlN0cmluZykgQmxvYlBhcnQ7CiAKIFsKKyAgICBBY3RpdmVE
T01PYmplY3QsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlciksCiAgICAgR2VuZXJhdGVJc1Jl
YWNoYWJsZT1JbXBsLAogICAgIEN1c3RvbVRvSlNPYmplY3QsCiBdIGludGVyZmFjZSBCbG9iIHsK
LSAgICBjb25zdHJ1Y3RvcihvcHRpb25hbCBzZXF1ZW5jZTxCbG9iUGFydD4gYmxvYlBhcnRzLCBv
cHRpb25hbCBCbG9iUHJvcGVydHlCYWcgb3B0aW9ucyk7CisgICAgW0NhbGxXaXRoPVNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9yKG9wdGlvbmFsIHNlcXVlbmNlPEJsb2JQYXJ0PiBi
bG9iUGFydHMsIG9wdGlvbmFsIEJsb2JQcm9wZXJ0eUJhZyBvcHRpb25zKTsKIAogICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxvbmcgc2l6ZTsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgRE9NU3RyaW5nIHR5cGU7CiAKLSAgICBCbG9iIHNsaWNlKG9wdGlvbmFsIGxvbmcgbG9u
ZyBzdGFydCA9IDAsIG9wdGlvbmFsIGxvbmcgbG9uZyBlbmQgPSAweDdGRkZGRkZGRkZGRkZGRkYs
IG9wdGlvbmFsIERPTVN0cmluZyBjb250ZW50VHlwZSA9ICIiKTsKKyAgICBbQ2FsbFdpdGg9U2Ny
aXB0RXhlY3V0aW9uQ29udGV4dF0gQmxvYiBzbGljZShvcHRpb25hbCBsb25nIGxvbmcgc3RhcnQg
PSAwLCBvcHRpb25hbCBsb25nIGxvbmcgZW5kID0gMHg3RkZGRkZGRkZGRkZGRkZGLCBvcHRpb25h
bCBET01TdHJpbmcgY29udGVudFR5cGUgPSAiIik7CiAKICAgICAvLyBbTmV3T2JqZWN0XSBSZWFk
YWJsZVN0cmVhbSBzdHJlYW0oKTsKICAgICBbTmV3T2JqZWN0LCBDYWxsV2l0aD1TY3JpcHRFeGVj
dXRpb25Db250ZXh0XSBQcm9taXNlPFVTVlN0cmluZz4gdGV4dCgpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmls
ZS5jcHAKaW5kZXggY2E2OWU3MWZhZWU3Y2JjN2JhOGUzODI2ZmM5YjJjMTAxN2M5MjdhMC4uOTQ5
ZjkyN2VkNzgxYjA3OGE3MjE3ZGM3ZTExOGJjM2Y4N2U0ZjU4NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Zp
bGUuY3BwCkBAIC0zOSwxNCArMzksMTUgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFL
RV9JU09fQUxMT0NBVEVEX0lNUEwoRmlsZSk7CiAKLVJlZjxGaWxlPiBGaWxlOjpjcmVhdGVXaXRo
UmVsYXRpdmVQYXRoKGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiByZWxhdGl2ZVBh
dGgpCitSZWY8RmlsZT4gRmlsZTo6Y3JlYXRlV2l0aFJlbGF0aXZlUGF0aChTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0cmluZyYgcmVs
YXRpdmVQYXRoKQogewotICAgIGF1dG8gZmlsZSA9IEZpbGU6OmNyZWF0ZShwYXRoKTsKKyAgICBh
dXRvIGZpbGUgPSBGaWxlOjpjcmVhdGUoY29udGV4dCwgcGF0aCk7CiAgICAgZmlsZS0+c2V0UmVs
YXRpdmVQYXRoKHJlbGF0aXZlUGF0aCk7CisgICAgZmlsZS0+c3VzcGVuZElmTmVlZGVkKCk7CiAg
ICAgcmV0dXJuIGZpbGU7CiB9CiAKLVJlZjxGaWxlPiBGaWxlOjpjcmVhdGUoY29uc3QgU3RyaW5n
JiBwYXRoLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VtZW50UGF0aCwgY29uc3QgU3RyaW5nJiBuYW1l
T3ZlcnJpZGUpCitSZWY8RmlsZT4gRmlsZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQsIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5nJiByZXBsYWNlbWVudFBh
dGgsIGNvbnN0IFN0cmluZyYgbmFtZU92ZXJyaWRlKQogewogICAgIFN0cmluZyBuYW1lOwogICAg
IFN0cmluZyB0eXBlOwpAQCAtNTYsMTggKzU3LDIwIEBAIFJlZjxGaWxlPiBGaWxlOjpjcmVhdGUo
Y29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VtZW50UGF0aCwgY29uc3QK
ICAgICBhdXRvIGludGVybmFsVVJMID0gQmxvYlVSTDo6Y3JlYXRlSW50ZXJuYWxVUkwoKTsKICAg
ICBUaHJlYWRhYmxlQmxvYlJlZ2lzdHJ5OjpyZWdpc3RlckZpbGVCbG9iVVJMKGludGVybmFsVVJM
LCBwYXRoLCByZXBsYWNlbWVudFBhdGgsIHR5cGUpOwogCi0gICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgRmlsZShXVEZNb3ZlKGludGVybmFsVVJMKSwgV1RGTW92ZSh0eXBlKSwgV1RGTW92ZShlZmZl
Y3RpdmVQYXRoKSwgV1RGTW92ZShuYW1lKSkpOworICAgIGF1dG8gZmlsZSA9IGFkb3B0UmVmKCpu
ZXcgRmlsZShjb250ZXh0LCBXVEZNb3ZlKGludGVybmFsVVJMKSwgV1RGTW92ZSh0eXBlKSwgV1RG
TW92ZShlZmZlY3RpdmVQYXRoKSwgV1RGTW92ZShuYW1lKSkpOworICAgIGZpbGUtPnN1c3BlbmRJ
Zk5lZWRlZCgpOworICAgIHJldHVybiBmaWxlOwogfQogCi1GaWxlOjpGaWxlKFVSTCYmIHVybCwg
U3RyaW5nJiYgdHlwZSwgU3RyaW5nJiYgcGF0aCwgU3RyaW5nJiYgbmFtZSkKLSAgICA6IEJsb2Io
dW5pbml0aWFsaXplZENvbnRydWN0b3IsIFdURk1vdmUodXJsKSwgV1RGTW92ZSh0eXBlKSkKK0Zp
bGU6OkZpbGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgVVJMJiYgdXJsLCBTdHJp
bmcmJiB0eXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKQorICAgIDogQmxvYih1bmlu
aXRpYWxpemVkQ29udHJ1Y3RvciwgY29udGV4dCwgV1RGTW92ZSh1cmwpLCBXVEZNb3ZlKHR5cGUp
KQogICAgICwgbV9wYXRoKFdURk1vdmUocGF0aCkpCiAgICAgLCBtX25hbWUoV1RGTW92ZShuYW1l
KSkKIHsKIH0KIAotRmlsZTo6RmlsZShEZXNlcmlhbGl6YXRpb25Db250cnVjdG9yLCBjb25zdCBT
dHJpbmcmIHBhdGgsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHR5cGUsIGNvbnN0IFN0
cmluZyYgbmFtZSwgY29uc3QgT3B0aW9uYWw8aW50NjRfdD4mIGxhc3RNb2RpZmllZCkKLSAgICA6
IEJsb2IoZGVzZXJpYWxpemF0aW9uQ29udHJ1Y3RvciwgdXJsLCB0eXBlLCB7IH0sIHBhdGgpCitG
aWxlOjpGaWxlKERlc2VyaWFsaXphdGlvbkNvbnRydWN0b3IsIFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0
cmluZyYgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBPcHRpb25hbDxpbnQ2NF90PiYg
bGFzdE1vZGlmaWVkKQorICAgIDogQmxvYihkZXNlcmlhbGl6YXRpb25Db250cnVjdG9yLCBjb250
ZXh0LCB1cmwsIHR5cGUsIHsgfSwgcGF0aCkKICAgICAsIG1fcGF0aChwYXRoKQogICAgICwgbV9u
YW1lKG5hbWUpCiAgICAgLCBtX2xhc3RNb2RpZmllZERhdGVPdmVycmlkZShsYXN0TW9kaWZpZWQp
CkBAIC04MSwyMiArODQsMjIgQEAgc3RhdGljIEJsb2JQcm9wZXJ0eUJhZyBjb252ZXJ0UHJvcGVy
dHlCYWcoY29uc3QgRmlsZTo6UHJvcGVydHlCYWcmIGluaXRpYWxCYWcpCiAgICAgcmV0dXJuIGJh
ZzsKIH0KIAotRmlsZTo6RmlsZShWZWN0b3I8QmxvYlBhcnRWYXJpYW50PiYmIGJsb2JQYXJ0VmFy
aWFudHMsIGNvbnN0IFN0cmluZyYgZmlsZW5hbWUsIGNvbnN0IFByb3BlcnR5QmFnJiBwcm9wZXJ0
eUJhZykKLSAgICA6IEJsb2IoV1RGTW92ZShibG9iUGFydFZhcmlhbnRzKSwgY29udmVydFByb3Bl
cnR5QmFnKHByb3BlcnR5QmFnKSkKK0ZpbGU6OkZpbGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYg
Y29udGV4dCwgVmVjdG9yPEJsb2JQYXJ0VmFyaWFudD4mJiBibG9iUGFydFZhcmlhbnRzLCBjb25z
dCBTdHJpbmcmIGZpbGVuYW1lLCBjb25zdCBQcm9wZXJ0eUJhZyYgcHJvcGVydHlCYWcpCisgICAg
OiBCbG9iKGNvbnRleHQsIFdURk1vdmUoYmxvYlBhcnRWYXJpYW50cyksIGNvbnZlcnRQcm9wZXJ0
eUJhZyhwcm9wZXJ0eUJhZykpCiAgICAgLCBtX25hbWUoZmlsZW5hbWUpCiAgICAgLCBtX2xhc3RN
b2RpZmllZERhdGVPdmVycmlkZShwcm9wZXJ0eUJhZy5sYXN0TW9kaWZpZWQudmFsdWVPcihXYWxs
VGltZTo6bm93KCkuc2Vjb25kc1NpbmNlRXBvY2goKS5taWxsaXNlY29uZHMoKSkpCiB7CiB9CiAK
LUZpbGU6OkZpbGUoY29uc3QgQmxvYiYgYmxvYiwgY29uc3QgU3RyaW5nJiBuYW1lKQotICAgIDog
QmxvYihyZWZlcmVuY2luZ0V4aXN0aW5nQmxvYkNvbnN0cnVjdG9yLCBibG9iKQorRmlsZTo6Rmls
ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBCbG9iJiBibG9iLCBjb25z
dCBTdHJpbmcmIG5hbWUpCisgICAgOiBCbG9iKHJlZmVyZW5jaW5nRXhpc3RpbmdCbG9iQ29uc3Ry
dWN0b3IsIGNvbnRleHQsIGJsb2IpCiAgICAgLCBtX25hbWUobmFtZSkKIHsKICAgICBBU1NFUlQo
IWJsb2IuaXNGaWxlKCkpOwogfQogCi1GaWxlOjpGaWxlKGNvbnN0IEZpbGUmIGZpbGUsIGNvbnN0
IFN0cmluZyYgbmFtZSkKLSAgICA6IEJsb2IocmVmZXJlbmNpbmdFeGlzdGluZ0Jsb2JDb25zdHJ1
Y3RvciwgZmlsZSkKK0ZpbGU6OkZpbGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
Y29uc3QgRmlsZSYgZmlsZSwgY29uc3QgU3RyaW5nJiBuYW1lKQorICAgIDogQmxvYihyZWZlcmVu
Y2luZ0V4aXN0aW5nQmxvYkNvbnN0cnVjdG9yLCBjb250ZXh0LCBmaWxlKQogICAgICwgbV9wYXRo
KGZpbGUucGF0aCgpKQogICAgICwgbV9yZWxhdGl2ZVBhdGgoZmlsZS5yZWxhdGl2ZVBhdGgoKSkK
ICAgICAsIG1fbmFtZSghbmFtZS5pc051bGwoKSA/IG5hbWUgOiBmaWxlLm5hbWUoKSkKQEAgLTE1
Nyw0ICsxNjAsOSBAQCBib29sIEZpbGU6OmlzRGlyZWN0b3J5KCkgY29uc3QKICAgICByZXR1cm4g
Km1faXNEaXJlY3Rvcnk7CiB9CiAKK2NvbnN0IGNoYXIqIEZpbGU6OmFjdGl2ZURPTU9iamVjdE5h
bWUoKSBjb25zdAoreworICAgIHJldHVybiAiRmlsZSI7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZS5oIGIvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlLmgKaW5kZXggODc5NzRkMDAzYzM5ZGNlNWQ4MzRmYzk3ZjA0
NjhmYjMyZGVkMzI4Yy4uMDFiYzgyY2ExOGQyZDQ4MDkxODgxZmEyYjEwZGU2YTk1YTRjMTczMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvZmlsZWFwaS9GaWxlLmgKQEAgLTQyLDMwICs0MiwzOCBAQCBwdWJsaWM6CiAgICAgfTsK
IAogICAgIC8vIENyZWF0ZSBhIGZpbGUgd2l0aCBhbiBvcHRpb25hbCBuYW1lIGV4cG9zZWQgdG8g
dGhlIGF1dGhvciAodmlhIEZpbGUubmFtZSBhbmQgYXNzb2NpYXRlZCBET00gcHJvcGVydGllcykg
dGhhdCBkaWZmZXJzIGZyb20gdGhlIG9uZSBwcm92aWRlZCBpbiB0aGUgcGF0aC4KLSAgICBXRUJD
T1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZpbGU+IGNyZWF0ZShjb25zdCBTdHJpbmcmIHBhdGgsIGNv
bnN0IFN0cmluZyYgcmVwbGFjZW1lbnRQYXRoID0geyB9LCBjb25zdCBTdHJpbmcmIG5hbWVPdmVy
cmlkZSA9IHsgfSk7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxGaWxlPiBjcmVhdGUo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgU3RyaW5n
JiByZXBsYWNlbWVudFBhdGggPSB7IH0sIGNvbnN0IFN0cmluZyYgbmFtZU92ZXJyaWRlID0geyB9
KTsKIAogICAgIC8vIENyZWF0ZSBhIEZpbGUgdXNpbmcgdGhlICduZXcgRmlsZScgY29uc3RydWN0
b3IuCi0gICAgc3RhdGljIFJlZjxGaWxlPiBjcmVhdGUoVmVjdG9yPEJsb2JQYXJ0VmFyaWFudD4m
JiBibG9iUGFydFZhcmlhbnRzLCBjb25zdCBTdHJpbmcmIGZpbGVuYW1lLCBjb25zdCBQcm9wZXJ0
eUJhZyYgcHJvcGVydHlCYWcpCisgICAgc3RhdGljIFJlZjxGaWxlPiBjcmVhdGUoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCYgY29udGV4dCwgVmVjdG9yPEJsb2JQYXJ0VmFyaWFudD4mJiBibG9iUGFy
dFZhcmlhbnRzLCBjb25zdCBTdHJpbmcmIGZpbGVuYW1lLCBjb25zdCBQcm9wZXJ0eUJhZyYgcHJv
cGVydHlCYWcpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlKFdURk1v
dmUoYmxvYlBhcnRWYXJpYW50cyksIGZpbGVuYW1lLCBwcm9wZXJ0eUJhZykpOworICAgICAgICBh
dXRvIGZpbGUgPSBhZG9wdFJlZigqbmV3IEZpbGUoY29udGV4dCwgV1RGTW92ZShibG9iUGFydFZh
cmlhbnRzKSwgZmlsZW5hbWUsIHByb3BlcnR5QmFnKSk7CisgICAgICAgIGZpbGUtPnN1c3BlbmRJ
Zk5lZWRlZCgpOworICAgICAgICByZXR1cm4gZmlsZTsKICAgICB9CiAKLSAgICBzdGF0aWMgUmVm
PEZpbGU+IGRlc2VyaWFsaXplKGNvbnN0IFN0cmluZyYgcGF0aCwgY29uc3QgVVJMJiBzcmNVUkws
IGNvbnN0IFN0cmluZyYgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBPcHRpb25hbDxp
bnQ2NF90PiYgbGFzdE1vZGlmaWVkID0gV1RGOjpudWxsb3B0KQorICAgIHN0YXRpYyBSZWY8Rmls
ZT4gZGVzZXJpYWxpemUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgU3Ry
aW5nJiBwYXRoLCBjb25zdCBVUkwmIHNyY1VSTCwgY29uc3QgU3RyaW5nJiB0eXBlLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGNvbnN0IE9wdGlvbmFsPGludDY0X3Q+JiBsYXN0TW9kaWZpZWQgPSBXVEY6
Om51bGxvcHQpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGaWxlKGRlc2Vy
aWFsaXphdGlvbkNvbnRydWN0b3IsIHBhdGgsIHNyY1VSTCwgdHlwZSwgbmFtZSwgbGFzdE1vZGlm
aWVkKSk7CisgICAgICAgIGF1dG8gZmlsZSA9IGFkb3B0UmVmKCpuZXcgRmlsZShkZXNlcmlhbGl6
YXRpb25Db250cnVjdG9yLCBjb250ZXh0LCBwYXRoLCBzcmNVUkwsIHR5cGUsIG5hbWUsIGxhc3RN
b2RpZmllZCkpOworICAgICAgICBmaWxlLT5zdXNwZW5kSWZOZWVkZWQoKTsKKyAgICAgICAgcmV0
dXJuIGZpbGU7CiAgICAgfQogCi0gICAgc3RhdGljIFJlZjxGaWxlPiBjcmVhdGUoY29uc3QgQmxv
YiYgYmxvYiwgY29uc3QgU3RyaW5nJiBuYW1lKQorICAgIHN0YXRpYyBSZWY8RmlsZT4gY3JlYXRl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IEJsb2ImIGJsb2IsIGNvbnN0
IFN0cmluZyYgbmFtZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZpbGUo
YmxvYiwgbmFtZSkpOworICAgICAgICBhdXRvIGZpbGUgPSBhZG9wdFJlZigqbmV3IEZpbGUoY29u
dGV4dCwgYmxvYiwgbmFtZSkpOworICAgICAgICBmaWxlLT5zdXNwZW5kSWZOZWVkZWQoKTsKKyAg
ICAgICAgcmV0dXJuIGZpbGU7CiAgICAgfQogCi0gICAgc3RhdGljIFJlZjxGaWxlPiBjcmVhdGUo
Y29uc3QgRmlsZSYgZmlsZSwgY29uc3QgU3RyaW5nJiBuYW1lKQorICAgIHN0YXRpYyBSZWY8Rmls
ZT4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IEZpbGUmIGV4
aXN0aW5nRmlsZSwgY29uc3QgU3RyaW5nJiBuYW1lKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgRmlsZShmaWxlLCBuYW1lKSk7CisgICAgICAgIGF1dG8gZmlsZSA9IGFkb3B0
UmVmKCpuZXcgRmlsZShjb250ZXh0LCBleGlzdGluZ0ZpbGUsIG5hbWUpKTsKKyAgICAgICAgZmls
ZS0+c3VzcGVuZElmTmVlZGVkKCk7CisgICAgICAgIHJldHVybiBmaWxlOwogICAgIH0KIAotICAg
IHN0YXRpYyBSZWY8RmlsZT4gY3JlYXRlV2l0aFJlbGF0aXZlUGF0aChjb25zdCBTdHJpbmcmIHBh
dGgsIGNvbnN0IFN0cmluZyYgcmVsYXRpdmVQYXRoKTsKKyAgICBzdGF0aWMgUmVmPEZpbGU+IGNy
ZWF0ZVdpdGhSZWxhdGl2ZVBhdGgoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmlu
ZyYgcGF0aCwgY29uc3QgU3RyaW5nJiByZWxhdGl2ZVBhdGgpOwogCiAgICAgYm9vbCBpc0ZpbGUo
KSBjb25zdCBvdmVycmlkZSB7IHJldHVybiB0cnVlOyB9CiAKQEAgLTg1LDE5ICs5MywyMiBAQCBw
dWJsaWM6CiAgICAgYm9vbCBpc0RpcmVjdG9yeSgpIGNvbnN0OwogCiBwcml2YXRlOgotICAgIFdF
QkNPUkVfRVhQT1JUIGV4cGxpY2l0IEZpbGUoY29uc3QgU3RyaW5nJiBwYXRoKTsKLSAgICBGaWxl
KFVSTCYmLCBTdHJpbmcmJiB0eXBlLCBTdHJpbmcmJiBwYXRoLCBTdHJpbmcmJiBuYW1lKTsKLSAg
ICBGaWxlKFZlY3RvcjxCbG9iUGFydFZhcmlhbnQ+JiYgYmxvYlBhcnRWYXJpYW50cywgY29uc3Qg
U3RyaW5nJiBmaWxlbmFtZSwgY29uc3QgUHJvcGVydHlCYWcmKTsKLSAgICBGaWxlKGNvbnN0IEJs
b2ImLCBjb25zdCBTdHJpbmcmIG5hbWUpOwotICAgIEZpbGUoY29uc3QgRmlsZSYsIGNvbnN0IFN0
cmluZyYgbmFtZSk7CisgICAgV0VCQ09SRV9FWFBPUlQgZXhwbGljaXQgRmlsZShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBwYXRoKTsKKyAgICBGaWxlKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqLCBVUkwmJiwgU3RyaW5nJiYgdHlwZSwgU3RyaW5nJiYgcGF0aCwgU3RyaW5n
JiYgbmFtZSk7CisgICAgRmlsZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgVmVjdG9yPEJsb2JQ
YXJ0VmFyaWFudD4mJiBibG9iUGFydFZhcmlhbnRzLCBjb25zdCBTdHJpbmcmIGZpbGVuYW1lLCBj
b25zdCBQcm9wZXJ0eUJhZyYpOworICAgIEZpbGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNv
bnN0IEJsb2ImLCBjb25zdCBTdHJpbmcmIG5hbWUpOworICAgIEZpbGUoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIGNvbnN0IEZpbGUmLCBjb25zdCBTdHJpbmcmIG5hbWUpOwogCi0gICAgRmlsZShE
ZXNlcmlhbGl6YXRpb25Db250cnVjdG9yLCBjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFVSTCYg
c3JjVVJMLCBjb25zdCBTdHJpbmcmIHR5cGUsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgT3B0
aW9uYWw8aW50NjRfdD4mIGxhc3RNb2RpZmllZCk7CisgICAgRmlsZShEZXNlcmlhbGl6YXRpb25D
b250cnVjdG9yLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBwYXRoLCBj
b25zdCBVUkwmIHNyY1VSTCwgY29uc3QgU3RyaW5nJiB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUs
IGNvbnN0IE9wdGlvbmFsPGludDY0X3Q+JiBsYXN0TW9kaWZpZWQpOwogCiAgICAgc3RhdGljIHZv
aWQgY29tcHV0ZU5hbWVBbmRDb250ZW50VHlwZShjb25zdCBTdHJpbmcmIHBhdGgsIGNvbnN0IFN0
cmluZyYgbmFtZU92ZXJyaWRlLCBTdHJpbmcmIGVmZmVjdGl2ZU5hbWUsIFN0cmluZyYgZWZmZWN0
aXZlQ29udGVudFR5cGUpOwogI2lmIEVOQUJMRShGSUxFX1JFUExBQ0VNRU5UKQogICAgIHN0YXRp
YyB2b2lkIGNvbXB1dGVOYW1lQW5kQ29udGVudFR5cGVGb3JSZXBsYWNlZEZpbGUoY29uc3QgU3Ry
aW5nJiBwYXRoLCBjb25zdCBTdHJpbmcmIG5hbWVPdmVycmlkZSwgU3RyaW5nJiBlZmZlY3RpdmVO
YW1lLCBTdHJpbmcmIGVmZmVjdGl2ZUNvbnRlbnRUeXBlKTsKICNlbmRpZgogCisgICAgLy8gQWN0
aXZlRE9NT2JqZWN0LgorICAgIGNvbnN0IGNoYXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25z
dCBmaW5hbDsKKwogICAgIFN0cmluZyBtX3BhdGg7CiAgICAgU3RyaW5nIG1fcmVsYXRpdmVQYXRo
OwogICAgIFN0cmluZyBtX25hbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBp
L0ZpbGUuaWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlLmlkbAppbmRleCBlMTc3ZTEx
OTYwMDE5MjkxYTgzYjIwMjk3N2E3ZDI1ZjViNmM4MGY0Li4xMzgxMTU2MGIxMDdjYzg2NDBkMTBm
ZjlhYTBiODA4MTJkMjg5NmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Zp
bGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZS5pZGwKQEAgLTMxLDcgKzMx
LDcgQEAgdHlwZWRlZiAoQnVmZmVyU291cmNlIG9yIEJsb2Igb3IgVVNWU3RyaW5nKSBCbG9iUGFy
dDsKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmpl
Y3QsCiBdIGludGVyZmFjZSBGaWxlIDogQmxvYiB7Ci0gICAgY29uc3RydWN0b3Ioc2VxdWVuY2U8
QmxvYlBhcnQ+IGZpbGVCaXRzLCBVU1ZTdHJpbmcgZmlsZU5hbWUsIG9wdGlvbmFsIEZpbGVQcm9w
ZXJ0eUJhZyBvcHRpb25zKTsKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0g
Y29uc3RydWN0b3Ioc2VxdWVuY2U8QmxvYlBhcnQ+IGZpbGVCaXRzLCBVU1ZTdHJpbmcgZmlsZU5h
bWUsIG9wdGlvbmFsIEZpbGVQcm9wZXJ0eUJhZyBvcHRpb25zKTsKIAogICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBsb25n
IGxhc3RNb2RpZmllZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NRm9ybURh
dGEuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Gb3JtRGF0YS5jcHAKaW5kZXggNzllMGM5
YjMxYWU5ZDExMDg3YTg3YjUzY2U2M2QzOGIxYWM3MmY0Ny4uODRmNzkzOTIxZjQzZjVhNmM3Njcw
MmJlYjIyZTlmY2U0N2JhMTgzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01G
b3JtRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01Gb3JtRGF0YS5jcHAKQEAg
LTU5LDEwICs1OSwxMCBAQCBET01Gb3JtRGF0YTo6RE9NRm9ybURhdGEoSFRNTEZvcm1FbGVtZW50
KiBmb3JtKQogYXV0byBET01Gb3JtRGF0YTo6Y3JlYXRlRmlsZUVudHJ5KGNvbnN0IFN0cmluZyYg
bmFtZSwgQmxvYiYgYmxvYiwgY29uc3QgU3RyaW5nJiBmaWxlbmFtZSkgLT4gSXRlbQogewogICAg
IGlmICghYmxvYi5pc0ZpbGUoKSkKLSAgICAgICAgcmV0dXJuIHsgbmFtZSwgRmlsZTo6Y3JlYXRl
KGJsb2IsIGZpbGVuYW1lLmlzTnVsbCgpID8gImJsb2IiX3MgOiBmaWxlbmFtZSkgfTsKKyAgICAg
ICAgcmV0dXJuIHsgbmFtZSwgRmlsZTo6Y3JlYXRlKGJsb2Iuc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCgpLCBibG9iLCBmaWxlbmFtZS5pc051bGwoKSA/ICJibG9iIl9zIDogZmlsZW5hbWUpIH07CiAg
ICAgCiAgICAgaWYgKCFmaWxlbmFtZS5pc051bGwoKSkKLSAgICAgICAgcmV0dXJuIHsgbmFtZSwg
RmlsZTo6Y3JlYXRlKGRvd25jYXN0PEZpbGU+KGJsb2IpLCBmaWxlbmFtZSkgfTsKKyAgICAgICAg
cmV0dXJuIHsgbmFtZSwgRmlsZTo6Y3JlYXRlKGJsb2Iuc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
LCBkb3duY2FzdDxGaWxlPihibG9iKSwgZmlsZW5hbWUpIH07CiAKICAgICByZXR1cm4geyBuYW1l
LCBSZWZQdHI8RmlsZT4geyAmZG93bmNhc3Q8RmlsZT4oYmxvYikgfSB9OwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9EaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9EaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuY3BwCmluZGV4IGYwMDk4
OWRkMDNmYzEyOTU2M2E4ODU0ODZkNWE1N2FhN2FkMjBkNDguLjUyNjdiODdlYjI0OGI4NGQ4ZTFh
ZTVmY2U2N2ZkN2Q1Yjg3ODVlNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRGly
ZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0RpcmVj
dG9yeUZpbGVMaXN0Q3JlYXRvci5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCIKIAorI2luY2x1ZGUg
IkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRmlsZUNob29zZXIuaCIKICNpbmNsdWRlICJGaWxlTGlz
dC5oIgogI2luY2x1ZGUgPHd0Zi9Dcm9zc1RocmVhZENvcGllci5oPgpAQCAtMzksOCArNDAsMjAg
QEAgRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yOjp+RGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yKCkK
ICAgICBBU1NFUlQoIW1fY29tcGxldGlvbkhhbmRsZXIpOwogfQogCi1zdGF0aWMgdm9pZCBhcHBl
bmREaXJlY3RvcnlGaWxlcyhjb25zdCBTdHJpbmcmIGRpcmVjdG9yeSwgY29uc3QgU3RyaW5nJiBy
ZWxhdGl2ZVBhdGgsIFZlY3RvcjxSZWY8RmlsZT4+JiBmaWxlT2JqZWN0cykKK3N0cnVjdCBGaWxl
SW5mb3JtYXRpb24geworICAgIFN0cmluZyBwYXRoOworICAgIFN0cmluZyByZWxhdGl2ZVBhdGg7
CisgICAgU3RyaW5nIGRpc3BsYXlOYW1lOworCisgICAgRmlsZUluZm9ybWF0aW9uIGlzb2xhdGVk
Q29weSgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gRmlsZUluZm9ybWF0aW9uIHsgcGF0
aC5pc29sYXRlZENvcHkoKSwgcmVsYXRpdmVQYXRoLmlzb2xhdGVkQ29weSgpLCBkaXNwbGF5TmFt
ZS5pc29sYXRlZENvcHkoKSB9OworICAgIH0KK307CisKK3N0YXRpYyB2b2lkIGFwcGVuZERpcmVj
dG9yeUZpbGVzKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5LCBjb25zdCBTdHJpbmcmIHJlbGF0aXZl
UGF0aCwgVmVjdG9yPEZpbGVJbmZvcm1hdGlvbj4mIGZpbGVzKQogeworICAgIEFTU0VSVCghaXNN
YWluVGhyZWFkKCkpOwogICAgIGZvciAoYXV0byYgY2hpbGRQYXRoIDogRmlsZVN5c3RlbTo6bGlz
dERpcmVjdG9yeShkaXJlY3RvcnksICIqIikpIHsKICAgICAgICAgYXV0byBtZXRhZGF0YSA9IEZp
bGVTeXN0ZW06OmZpbGVNZXRhZGF0YShjaGlsZFBhdGgpOwogICAgICAgICBpZiAoIW1ldGFkYXRh
KQpAQCAtNTEsMjAgKzY0LDM0IEBAIHN0YXRpYyB2b2lkIGFwcGVuZERpcmVjdG9yeUZpbGVzKGNv
bnN0IFN0cmluZyYgZGlyZWN0b3J5LCBjb25zdCBTdHJpbmcmIHJlbGF0aXZlCiAKICAgICAgICAg
U3RyaW5nIGNoaWxkUmVsYXRpdmVQYXRoID0gcmVsYXRpdmVQYXRoICsgIi8iICsgRmlsZVN5c3Rl
bTo6cGF0aEdldEZpbGVOYW1lKGNoaWxkUGF0aCk7CiAgICAgICAgIGlmIChtZXRhZGF0YS52YWx1
ZSgpLnR5cGUgPT0gRmlsZU1ldGFkYXRhOjpUeXBlOjpEaXJlY3RvcnkpCi0gICAgICAgICAgICBh
cHBlbmREaXJlY3RvcnlGaWxlcyhjaGlsZFBhdGgsIGNoaWxkUmVsYXRpdmVQYXRoLCBmaWxlT2Jq
ZWN0cyk7CisgICAgICAgICAgICBhcHBlbmREaXJlY3RvcnlGaWxlcyhjaGlsZFBhdGgsIGNoaWxk
UmVsYXRpdmVQYXRoLCBmaWxlcyk7CiAgICAgICAgIGVsc2UgaWYgKG1ldGFkYXRhLnZhbHVlKCku
dHlwZSA9PSBGaWxlTWV0YWRhdGE6OlR5cGU6OkZpbGUpCi0gICAgICAgICAgICBmaWxlT2JqZWN0
cy5hcHBlbmQoRmlsZTo6Y3JlYXRlV2l0aFJlbGF0aXZlUGF0aChjaGlsZFBhdGgsIGNoaWxkUmVs
YXRpdmVQYXRoKSk7CisgICAgICAgICAgICBmaWxlcy5hcHBlbmQoRmlsZUluZm9ybWF0aW9uIHsg
Y2hpbGRQYXRoLCBjaGlsZFJlbGF0aXZlUGF0aCwgeyB9IH0pOwogICAgIH0KIH0KIAotc3RhdGlj
IFJlZjxGaWxlTGlzdD4gY3JlYXRlRmlsZUxpc3QoY29uc3QgVmVjdG9yPEZpbGVDaG9vc2VyRmls
ZUluZm8+JiBwYXRocykKK3N0YXRpYyBWZWN0b3I8RmlsZUluZm9ybWF0aW9uPiBnYXRoZXJGaWxl
SW5mb3JtYXRpb24oY29uc3QgVmVjdG9yPEZpbGVDaG9vc2VyRmlsZUluZm8+JiBwYXRocykKIHsK
LSAgICBWZWN0b3I8UmVmPEZpbGU+PiBmaWxlT2JqZWN0czsKKyAgICBBU1NFUlQoIWlzTWFpblRo
cmVhZCgpKTsKKyAgICBWZWN0b3I8RmlsZUluZm9ybWF0aW9uPiBmaWxlczsKICAgICBmb3IgKGF1
dG8mIGluZm8gOiBwYXRocykgewogICAgICAgICBpZiAoRmlsZVN5c3RlbTo6ZmlsZUlzRGlyZWN0
b3J5KGluZm8ucGF0aCwgRmlsZVN5c3RlbTo6U2hvdWxkRm9sbG93U3ltYm9saWNMaW5rczo6Tm8p
KQotICAgICAgICAgICAgYXBwZW5kRGlyZWN0b3J5RmlsZXMoaW5mby5wYXRoLCBGaWxlU3lzdGVt
OjpwYXRoR2V0RmlsZU5hbWUoaW5mby5wYXRoKSwgZmlsZU9iamVjdHMpOworICAgICAgICAgICAg
YXBwZW5kRGlyZWN0b3J5RmlsZXMoaW5mby5wYXRoLCBGaWxlU3lzdGVtOjpwYXRoR2V0RmlsZU5h
bWUoaW5mby5wYXRoKSwgZmlsZXMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBmaWxlcy5h
cHBlbmQoRmlsZUluZm9ybWF0aW9uIHsgaW5mby5wYXRoLCB7IH0sIGluZm8uZGlzcGxheU5hbWUg
fSk7CisgICAgfQorICAgIHJldHVybiBmaWxlczsKK30KKworc3RhdGljIFJlZjxGaWxlTGlzdD4g
dG9GaWxlTGlzdChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IFZlY3RvcjxGaWxlSW5mb3JtYXRp
b24+JiBmaWxlcykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIFZlY3RvcjxS
ZWY8RmlsZT4+IGZpbGVPYmplY3RzOworICAgIGZvciAoYXV0byYgZmlsZSA6IGZpbGVzKSB7Cisg
ICAgICAgIGlmIChmaWxlLnJlbGF0aXZlUGF0aC5pc051bGwoKSkKKyAgICAgICAgICAgIGZpbGVP
YmplY3RzLmFwcGVuZChGaWxlOjpjcmVhdGUoZG9jdW1lbnQsIGZpbGUucGF0aCwgeyB9LCBmaWxl
LmRpc3BsYXlOYW1lKSk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIGZpbGVPYmplY3RzLmFw
cGVuZChGaWxlOjpjcmVhdGUoaW5mby5wYXRoLCB7IH0sIGluZm8uZGlzcGxheU5hbWUpKTsKKyAg
ICAgICAgICAgIGZpbGVPYmplY3RzLmFwcGVuZChGaWxlOjpjcmVhdGVXaXRoUmVsYXRpdmVQYXRo
KGRvY3VtZW50LCBmaWxlLnBhdGgsIGZpbGUucmVsYXRpdmVQYXRoKSk7CiAgICAgfQogICAgIHJl
dHVybiBGaWxlTGlzdDo6Y3JlYXRlKFdURk1vdmUoZmlsZU9iamVjdHMpKTsKIH0KQEAgLTc1LDEz
ICsxMDIsMTQgQEAgRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yOjpEaXJlY3RvcnlGaWxlTGlzdENy
ZWF0b3IoQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW8KIHsKIH0KIAotdm9pZCBEaXJlY3Rv
cnlGaWxlTGlzdENyZWF0b3I6OnN0YXJ0KGNvbnN0IFZlY3RvcjxGaWxlQ2hvb3NlckZpbGVJbmZv
PiYgcGF0aHMpCit2b2lkIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvcjo6c3RhcnQoRG9jdW1lbnQq
IGRvY3VtZW50LCBjb25zdCBWZWN0b3I8RmlsZUNob29zZXJGaWxlSW5mbz4mIHBhdGhzKQogewog
ICAgIC8vIFJlc29sdmUgZGlyZWN0b3JpZXMgb24gYSBiYWNrZ3JvdW5kIHRocmVhZCB0byBhdm9p
ZCBibG9ja2luZyB0aGUgbWFpbiB0aHJlYWQuCi0gICAgbV93b3JrUXVldWUtPmRpc3BhdGNoKFt0
aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHBhdGhzID0gY3Jvc3NUaHJlYWRD
b3B5KHBhdGhzKV0oKSBtdXRhYmxlIHsKLSAgICAgICAgY2FsbE9uTWFpblRocmVhZChbdGhpcywg
cHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGZpbGVMaXN0ID0gY3JlYXRl
RmlsZUxpc3QocGF0aHMpXSgpIG11dGFibGUgewotICAgICAgICAgICAgaWYgKGF1dG8gY29tcGxl
dGlvbkhhbmRsZXIgPSBzdGQ6OmV4Y2hhbmdlKG1fY29tcGxldGlvbkhhbmRsZXIsIG51bGxwdHIp
KQotICAgICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUoZmlsZUxpc3QpKTsK
KyAgICBtX3dvcmtRdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVm
KCp0aGlzKSwgZG9jdW1lbnQgPSBtYWtlUmVmUHRyKGRvY3VtZW50KSwgcGF0aHMgPSBjcm9zc1Ro
cmVhZENvcHkocGF0aHMpXSgpIG11dGFibGUgeworICAgICAgICBhdXRvIGZpbGVzID0gZ2F0aGVy
RmlsZUluZm9ybWF0aW9uKHBhdGhzKTsKKyAgICAgICAgY2FsbE9uTWFpblRocmVhZChbdGhpcywg
cHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGRvY3VtZW50ID0gV1RGTW92
ZShkb2N1bWVudCksIGZpbGVzID0gY3Jvc3NUaHJlYWRDb3B5KGZpbGVzKV0oKSBtdXRhYmxlIHsK
KyAgICAgICAgICAgIGlmIChtX2NvbXBsZXRpb25IYW5kbGVyKQorICAgICAgICAgICAgICAgIG1f
Y29tcGxldGlvbkhhbmRsZXIodG9GaWxlTGlzdChkb2N1bWVudC5nZXQoKSwgZmlsZXMpKTsKICAg
ICAgICAgfSk7CiAgICAgfSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Rp
cmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9EaXJlY3RvcnlG
aWxlTGlzdENyZWF0b3IuaAppbmRleCA2NDdmNjUyZDBiM2FjYWUxYTAxMjM5MjM3Yjc5ZTE2ZGNm
ZTk0NGQ3Li5mNzlhOTIzOGVkZGQ1OWVmMjNmNTkxMWQ3MjkzM2ZlM2RjNTE5MWQ4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmgKQEAgLTMzLDkg
KzMzLDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0IEZpbGVDaG9vc2VyRmls
ZUluZm87CitjbGFzcyBEb2N1bWVudDsKIGNsYXNzIEZpbGVMaXN0OwogCitzdHJ1Y3QgRmlsZUNo
b29zZXJGaWxlSW5mbzsKKwogY2xhc3MgRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yIDogcHVibGlj
IFRocmVhZFNhZmVSZWZDb3VudGVkPERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvcj4gewogcHVibGlj
OgogICAgIHVzaW5nIENvbXBsZXRpb25IYW5kbGVyID0gRnVuY3Rpb248dm9pZChSZWY8RmlsZUxp
c3Q+JiYpPjsKQEAgLTQ3LDcgKzQ5LDcgQEAgcHVibGljOgogCiAgICAgfkRpcmVjdG9yeUZpbGVM
aXN0Q3JlYXRvcigpOwogCi0gICAgdm9pZCBzdGFydChjb25zdCBWZWN0b3I8RmlsZUNob29zZXJG
aWxlSW5mbz4mKTsKKyAgICB2b2lkIHN0YXJ0KERvY3VtZW50KiwgY29uc3QgVmVjdG9yPEZpbGVD
aG9vc2VyRmlsZUluZm8+Jik7CiAgICAgdm9pZCBjYW5jZWwoKTsKIAogcHJpdmF0ZToKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGQyMGI1YjRlMTg3ZmRmYTcwMDFkYjcz
ZWRkMDcxN2ZmZjdiZDMyZjAuLjFjZTQ1MmY4ZjAzZWZkMjdhNGNhOTFhYjMwZDlkN2E3NGQwZmNm
YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0VHlwZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcApAQCAtMTc2LDcgKzE3Niw4
IEBAIGJvb2wgRmlsZUlucHV0VHlwZTo6YXBwZW5kRm9ybURhdGEoRE9NRm9ybURhdGEmIGZvcm1E
YXRhLCBib29sIG11bHRpcGFydCkgY29uc3QKICAgICAvLyBJZiBubyBmaWxlbmFtZSBhdCBhbGwg
aXMgZW50ZXJlZCwgcmV0dXJuIHN1Y2Nlc3NmdWwgYnV0IGVtcHR5LgogICAgIC8vIE51bGwgd291
bGQgYmUgbW9yZSBsb2dpY2FsLCBidXQgTmV0c2NhcGUgcG9zdHMgYW4gZW1wdHkgZmlsZS4gQXJn
aC4KICAgICBpZiAoZmlsZUxpc3QtPmlzRW1wdHkoKSkgewotICAgICAgICBmb3JtRGF0YS5hcHBl
bmQobmFtZSwgRmlsZTo6Y3JlYXRlKGVtcHR5U3RyaW5nKCkpKTsKKyAgICAgICAgYXV0byogZG9j
dW1lbnQgPSBlbGVtZW50KCkgPyAmZWxlbWVudCgpLT5kb2N1bWVudCgpIDogbnVsbHB0cjsKKyAg
ICAgICAgZm9ybURhdGEuYXBwZW5kKG5hbWUsIEZpbGU6OmNyZWF0ZShkb2N1bWVudCwgZW1wdHlT
dHJpbmcoKSkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKQEAgLTQyMiw5ICs0MjMs
MTAgQEAgdm9pZCBGaWxlSW5wdXRUeXBlOjpmaWxlc0Nob3Nlbihjb25zdCBWZWN0b3I8RmlsZUNo
b29zZXJGaWxlSW5mbz4mIHBhdGhzLCBjb25zdAogICAgIGlmIChtX2RpcmVjdG9yeUZpbGVMaXN0
Q3JlYXRvcikKICAgICAgICAgbV9kaXJlY3RvcnlGaWxlTGlzdENyZWF0b3ItPmNhbmNlbCgpOwog
CisgICAgYXV0byogZG9jdW1lbnQgPSBlbGVtZW50KCkgPyAmZWxlbWVudCgpLT5kb2N1bWVudCgp
IDogbnVsbHB0cjsKICAgICBpZiAoIWFsbG93c0RpcmVjdG9yaWVzKCkpIHsKLSAgICAgICAgYXV0
byBmaWxlcyA9IHBhdGhzLm1hcChbXShhdXRvJiBmaWxlSW5mbykgewotICAgICAgICAgICAgcmV0
dXJuIEZpbGU6OmNyZWF0ZShmaWxlSW5mby5wYXRoLCBmaWxlSW5mby5yZXBsYWNlbWVudFBhdGgs
IGZpbGVJbmZvLmRpc3BsYXlOYW1lKTsKKyAgICAgICAgYXV0byBmaWxlcyA9IHBhdGhzLm1hcChb
ZG9jdW1lbnRdKGF1dG8mIGZpbGVJbmZvKSB7CisgICAgICAgICAgICByZXR1cm4gRmlsZTo6Y3Jl
YXRlKGRvY3VtZW50LCBmaWxlSW5mby5wYXRoLCBmaWxlSW5mby5yZXBsYWNlbWVudFBhdGgsIGZp
bGVJbmZvLmRpc3BsYXlOYW1lKTsKICAgICAgICAgfSk7CiAgICAgICAgIGRpZENyZWF0ZUZpbGVM
aXN0KEZpbGVMaXN0OjpjcmVhdGUoV1RGTW92ZShmaWxlcykpLCBpY29uKTsKICAgICAgICAgcmV0
dXJuOwpAQCAtNDM2LDcgKzQzOCw3IEBAIHZvaWQgRmlsZUlucHV0VHlwZTo6ZmlsZXNDaG9zZW4o
Y29uc3QgVmVjdG9yPEZpbGVDaG9vc2VyRmlsZUluZm8+JiBwYXRocywgY29uc3QKICAgICAgICAg
ICAgIHJldHVybjsKICAgICAgICAgZGlkQ3JlYXRlRmlsZUxpc3QoV1RGTW92ZShmaWxlTGlzdCks
IFdURk1vdmUoaWNvbikpOwogICAgIH0pOwotICAgIG1fZGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9y
LT5zdGFydChwYXRocyk7CisgICAgbV9kaXJlY3RvcnlGaWxlTGlzdENyZWF0b3ItPnN0YXJ0KGRv
Y3VtZW50LCBwYXRocyk7CiB9CiAKIHZvaWQgRmlsZUlucHV0VHlwZTo6ZmlsZXNDaG9zZW4oY29u
c3QgVmVjdG9yPFN0cmluZz4mIHBhdGhzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcmVwbGFjZW1l
bnRQYXRocykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50LmNw
cAppbmRleCA5MDIxMGY1NWIxNzJhMjBhYjZmNTdhMjQyNTE3MzRhMTA2NjhlMjg3Li45OTJmNWEy
ZjUyMmU5NWY1NjBiNjZhNWJjYWIxYzg3MjlkNDllMjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MQXR0YWNobWVudEVsZW1lbnQuY3BwCkBAIC0yNDEsNyArMjQxLDcgQEAgdm9pZCBI
VE1MQXR0YWNobWVudEVsZW1lbnQ6OnVwZGF0ZUVuY2xvc2luZ0ltYWdlV2l0aERhdGEoY29uc3Qg
U3RyaW5nJiBjb250ZW50VHkKICAgICBpZiAoIW1pbWVUeXBlSXNTdWl0YWJsZUZvcklubGluZUlt
YWdlQXR0YWNobWVudChtaW1lVHlwZSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGhvc3RFbGVt
ZW50LT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6c3JjQXR0
ciwgRE9NVVJMOjpjcmVhdGVPYmplY3RVUkwoZG9jdW1lbnQoKSwgQmxvYjo6Y3JlYXRlKFdURk1v
dmUoZGF0YSksIG1pbWVUeXBlKSkpOworICAgIGhvc3RFbGVtZW50LT5zZXRBdHRyaWJ1dGVXaXRo
b3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6c3JjQXR0ciwgRE9NVVJMOjpjcmVhdGVPYmpl
Y3RVUkwoZG9jdW1lbnQoKSwgQmxvYjo6Y3JlYXRlKCZkb2N1bWVudCgpLCBXVEZNb3ZlKGRhdGEp
LCBtaW1lVHlwZSkpKTsKIH0KIAogdm9pZCBIVE1MQXR0YWNobWVudEVsZW1lbnQ6OnVwZGF0ZVRo
dW1ibmFpbChjb25zdCBSZWZQdHI8SW1hZ2U+JiB0aHVtYm5haWwpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTENhbnZhc0VsZW1lbnQuY3BwCmluZGV4IDNmMzc3MWVjNWFhZDQyZGFhY2JkMjlmNmI4
MmViNTI5ZDI5ZjNlNTIuLmIwNDc1MTFiNDI2YmJjNGRiMzUxOWMyNzljMTFkZmY4OWZiMGQ3Y2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuY3BwCkBAIC03NTMsNyAr
NzUzLDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTENhbnZhc0VsZW1lbnQ6OnRvQmxvYihTY3Jp
cHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBSZWYKICAgICAgICAgUmVmUHRyPEJsb2I+IGJs
b2I7CiAgICAgICAgIFZlY3Rvcjx1aW50OF90PiBibG9iRGF0YSA9IGRhdGEoKmltYWdlRGF0YSwg
ZW5jb2RpbmdNSU1FVHlwZSwgcXVhbGl0eSk7CiAgICAgICAgIGlmICghYmxvYkRhdGEuaXNFbXB0
eSgpKQotICAgICAgICAgICAgYmxvYiA9IEJsb2I6OmNyZWF0ZShXVEZNb3ZlKGJsb2JEYXRhKSwg
ZW5jb2RpbmdNSU1FVHlwZSk7CisgICAgICAgICAgICBibG9iID0gQmxvYjo6Y3JlYXRlKCZkb2N1
bWVudCgpLCBXVEZNb3ZlKGJsb2JEYXRhKSwgZW5jb2RpbmdNSU1FVHlwZSk7CiAgICAgICAgIGNh
bGxiYWNrLT5zY2hlZHVsZUNhbGxiYWNrKGNvbnRleHQsIFdURk1vdmUoYmxvYikpOwogICAgICAg
ICByZXR1cm4geyB9OwogICAgIH0KQEAgLTc2NCw3ICs3NjQsNyBAQCBFeGNlcHRpb25Pcjx2b2lk
PiBIVE1MQ2FudmFzRWxlbWVudDo6dG9CbG9iKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRl
eHQsIFJlZgogICAgIFJlZlB0cjxCbG9iPiBibG9iOwogICAgIFZlY3Rvcjx1aW50OF90PiBibG9i
RGF0YSA9IGJ1ZmZlcigpLT50b0RhdGEoZW5jb2RpbmdNSU1FVHlwZSwgcXVhbGl0eSk7CiAgICAg
aWYgKCFibG9iRGF0YS5pc0VtcHR5KCkpCi0gICAgICAgIGJsb2IgPSBCbG9iOjpjcmVhdGUoV1RG
TW92ZShibG9iRGF0YSksIGVuY29kaW5nTUlNRVR5cGUpOworICAgICAgICBibG9iID0gQmxvYjo6
Y3JlYXRlKCZkb2N1bWVudCgpLCBXVEZNb3ZlKGJsb2JEYXRhKSwgZW5jb2RpbmdNSU1FVHlwZSk7
CiAgICAgY2FsbGJhY2stPnNjaGVkdWxlQ2FsbGJhY2soY29udGV4dCwgV1RGTW92ZShibG9iKSk7
CiAgICAgcmV0dXJuIHsgfTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL0lJUkZpbHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJG
aWx0ZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFjZjVkN2I4MTJlN2JiY2Y5OTM1Yzk4NDJjMTA1YTA1MTBk
OGQ1MzEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9J
SVJGaWx0ZXIuY3BwCkBAIC0wLDAgKzEsMjMyIEBACisvKgorICogQ29weXJpZ2h0IDIwMTYgVGhl
IENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMp
IDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJJSVJGaWx0ZXIuaCIKKworI2luY2x1ZGUgIlZlY3Rvck1h
dGguaCIKKyNpbmNsdWRlIDxhbGdvcml0aG0+CisjaW5jbHVkZSA8Y29tcGxleD4KKyNpbmNsdWRl
IDx3dGYvTWF0aEV4dHJhcy5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NvbnN0IHNpemVf
dCBJSVJGaWx0ZXI6Om1heE9yZGVyID0gMjA7Citjb25zdCB1bnNpZ25lZCBpaXJSZW5kZXJpbmdR
dWFudHVtID0gMTI4OworCisvLyBUaGUgbGVuZ3RoIG9mIHRoZSBtZW1vcnkgYnVmZmVycyBmb3Ig
dGhlIElJUiBmaWx0ZXIuIFRoaXMgTVVTVCBiZSBhIHBvd2VyIG9mCisvLyB0d28gYW5kIG11c3Qg
YmUgZ3JlYXRlciB0aGFuIHRoZSBwb3NzaWJsZSBsZW5ndGggb2YgdGhlIGZpbHRlciBjb2VmZmlj
aWVudHMuCitjb25zdCBpbnQgYnVmZmVyTGVuZ3RoID0gMzI7CitzdGF0aWNfYXNzZXJ0KGJ1ZmZl
ckxlbmd0aCA+PSBJSVJGaWx0ZXI6Om1heE9yZGVyICsgMSwgIkludGVybmFsIElJUiBidWZmZXIg
bGVuZ3RoIG11c3QgYmUgZ3JlYXRlciB0aGFuIG1heGltdW0gSUlSIEZpbHRlciBvcmRlci4iKTsK
Kworc3RhdGljIHN0ZDo6Y29tcGxleDxkb3VibGU+IGV2YWx1YXRlUG9seW5vbWlhbChjb25zdCBk
b3VibGUqIGNvZWZmaWNpZW50cywgc3RkOjpjb21wbGV4PGRvdWJsZT4geiwgaW50IG9yZGVyKQor
eworICAgIC8vIFVzZSBIb3JuZXIncyBtZXRob2QgdG8gZXZhbHVhdGUgdGhlIHBvbHlub21pYWwg
UCh6KSA9IHN1bShjb2VmW2tdKnpeaywgaywgMCwgb3JkZXIpOworICAgIHN0ZDo6Y29tcGxleDxk
b3VibGU+IHJlc3VsdCA9IDA7CisgICAgZm9yIChpbnQgayA9IG9yZGVyOyBrID49IDA7IC0taykK
KyAgICAgICAgcmVzdWx0ID0gcmVzdWx0ICogeiArIHN0ZDo6Y29tcGxleDxkb3VibGU+KGNvZWZm
aWNpZW50c1trXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworSUlSRmlsdGVyOjpJSVJGaWx0
ZXIoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91Ymxl
PiYgZmVlZGJhY2spCisgICAgOiBtX2ZlZWRmb3J3YXJkKGZlZWRmb3J3YXJkKQorICAgICwgbV9m
ZWVkYmFjayhmZWVkYmFjaykKK3sKKyAgICBtX3hCdWZmZXIuZmlsbCgwLCBidWZmZXJMZW5ndGgp
OworICAgIG1feUJ1ZmZlci5maWxsKDAsIGJ1ZmZlckxlbmd0aCk7Cit9CisKK3ZvaWQgSUlSRmls
dGVyOjpyZXNldCgpCit7CisgICAgbV94QnVmZmVyLmZpbGwoMCk7CisgICAgbV95QnVmZmVyLmZp
bGwoMCk7CisgICAgbV9idWZmZXJJbmRleCA9IDA7Cit9CisKK3ZvaWQgSUlSRmlsdGVyOjpwcm9j
ZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZsb2F0KiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1l
c1RvUHJvY2VzcykKK3sKKyAgICAvLyBDb21wdXRlCisgICAgLy8KKyAgICAvLyAgIHlbbl0gPSBz
dW0oYltrXSAqIHhbbiAtIGtdLCBrID0gMCwgTSkgLSBzdW0oYVtrXSAqIHlbbiAtIGtdLCBrID0g
MSwgTikKKyAgICAvLworICAgIC8vIHdoZXJlIGJba10gYXJlIHRoZSBmZWVkZm9yd2FyZCBjb2Vm
ZmljaWVudHMgYW5kIGFba10gYXJlIHRoZSBmZWVkYmFjaworICAgIC8vIGNvZWZmaWNpZW50cyBv
ZiB0aGUgZmlsdGVyLgorICAgIC8vIFRoaXMgaXMgYSBEaXJlY3QgRm9ybSBJIGltcGxlbWVudGF0
aW9uIG9mIGFuIElJUiBGaWx0ZXIuIFNob3VsZCB3ZQorICAgIC8vIGNvbnNpZGVyIGRvaW5nIGEg
ZGlmZmVyZW50IGltcGxlbWVudGF0aW9uIHN1Y2ggYXMgVHJhbnNwb3NlZCBEaXJlY3QgRm9ybQor
ICAgIC8vIElJPworICAgIGNvbnN0IGRvdWJsZSogZmVlZGJhY2sgPSBtX2ZlZWRiYWNrLmRhdGEo
KTsKKyAgICBjb25zdCBkb3VibGUqIGZlZWRmb3J3YXJkID0gbV9mZWVkZm9yd2FyZC5kYXRhKCk7
CisKKyAgICBBU1NFUlQoZmVlZGJhY2spOworICAgIEFTU0VSVChmZWVkZm9yd2FyZCk7CisKKyAg
ICAvLyBTYW5pdHkgY2hlY2sgdG8gc2VlIGlmIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMgaGF2
ZSBiZWVuIHNjYWxlZCBhcHByb3ByaWF0ZWx5LiBJdCBtdXN0IGJlIEVYQUNUTFkgMSEKKyAgICBB
U1NFUlQoZmVlZGJhY2tbMF0gPT0gMSk7CisKKyAgICBpbnQgZmVlZGJhY2tMZW5ndGggPSBtX2Zl
ZWRiYWNrLnNpemUoKTsKKyAgICBpbnQgZmVlZGZvcndhcmRMZW5ndGggPSBtX2ZlZWRmb3J3YXJk
LnNpemUoKTsKKyAgICBpbnQgbWluTGVuZ3RoID0gc3RkOjptaW4oZmVlZGJhY2tMZW5ndGgsIGZl
ZWRmb3J3YXJkTGVuZ3RoKTsKKworICAgIGRvdWJsZSogeEJ1ZmZlciA9IG1feEJ1ZmZlci5kYXRh
KCk7CisgICAgZG91YmxlKiB5QnVmZmVyID0gbV95QnVmZmVyLmRhdGEoKTsKKworICAgIGZvciAo
c2l6ZV90IG4gPSAwOyBuIDwgZnJhbWVzVG9Qcm9jZXNzOyArK24pIHsKKyAgICAgICAgLy8gVG8g
aGVscCBtaW5pbWl6ZSByb3VuZG9mZiwgd2UgY29tcHV0ZSB1c2luZyBkb3VibGUncywgZXZlbiB0
aG91Z2ggdGhlCisgICAgICAgIC8vIGZpbHRlciBjb2VmZmljaWVudHMgb25seSBoYXZlIHNpbmds
ZSBwcmVjaXNpb24gdmFsdWVzLgorICAgICAgICBkb3VibGUgeW4gPSBmZWVkZm9yd2FyZFswXSAq
IHNvdXJjZVtuXTsKKworICAgICAgICAvLyBSdW4gYm90aCB0aGUgZmVlZGZvcndhcmQgYW5kIGZl
ZWRiYWNrIHRlcm1zIHRvZ2V0aGVyLCB3aGVuIHBvc3NpYmxlLgorICAgICAgICBmb3IgKGludCBr
ID0gMTsgayA8IG1pbkxlbmd0aDsgKytrKSB7CisgICAgICAgICAgICBpbnQgbSA9IChtX2J1ZmZl
ckluZGV4IC0gaykgJiAoYnVmZmVyTGVuZ3RoIC0gMSk7CisgICAgICAgICAgICB5biArPSBmZWVk
Zm9yd2FyZFtrXSAqIHhCdWZmZXJbbV07CisgICAgICAgICAgICB5biAtPSBmZWVkYmFja1trXSAq
IHlCdWZmZXJbbV07CisgICAgICAgIH0KKworICAgICAgICAvLyBIYW5kbGUgYW55IHJlbWFpbmlu
ZyBmZWVkZm9yd2FyZCBvciBmZWVkYmFjayB0ZXJtcy4KKyAgICAgICAgZm9yIChpbnQgayA9IG1p
bkxlbmd0aDsgayA8IGZlZWRmb3J3YXJkTGVuZ3RoOyArK2spCisgICAgICAgICAgICB5biArPSBm
ZWVkZm9yd2FyZFtrXSAqIHhCdWZmZXJbKG1fYnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5n
dGggLSAxKV07CisgICAgICAgIGZvciAoaW50IGsgPSBtaW5MZW5ndGg7IGsgPCBmZWVkYmFja0xl
bmd0aDsgKytrKQorICAgICAgICAgICAgeW4gLT0gZmVlZGJhY2tba10gKiB5QnVmZmVyWyhtX2J1
ZmZlckluZGV4IC0gaykgJiAoYnVmZmVyTGVuZ3RoIC0gMSldOworCisgICAgICAgIC8vIFNhdmUg
dGhlIGN1cnJlbnQgaW5wdXQgYW5kIG91dHB1dCB2YWx1ZXMgaW4gdGhlIG1lbW9yeSBidWZmZXJz
IGZvciB0aGUKKyAgICAgICAgLy8gbmV4dCBvdXRwdXQuCisgICAgICAgIG1feEJ1ZmZlclttX2J1
ZmZlckluZGV4XSA9IHNvdXJjZVtuXTsKKyAgICAgICAgbV95QnVmZmVyW21fYnVmZmVySW5kZXhd
ID0geW47CisKKyAgICAgICAgbV9idWZmZXJJbmRleCA9IChtX2J1ZmZlckluZGV4ICsgMSkgJiAo
YnVmZmVyTGVuZ3RoIC0gMSk7CisKKyAgICAgICAgZGVzdGluYXRpb25bbl0gPSB5bjsKKyAgICB9
Cit9CisKK3ZvaWQgSUlSRmlsdGVyOjpnZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5n
dGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3ksIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBo
YXNlUmVzcG9uc2UpCit7CisgICAgLy8gRXZhbHVhdGUgdGhlIHotdHJhbnNmb3JtIG9mIHRoZSBm
aWx0ZXIgYXQgdGhlIGdpdmVuIG5vcm1hbGl6ZWQgZnJlcXVlbmNpZXMKKyAgICAvLyBmcm9tIDAg
dG8gMS4gKE9uZSBjb3JyZXNwb25kcyB0byB0aGUgTnlxdWlzdCBmcmVxdWVuY3kuKQorICAgIC8v
CisgICAgLy8gVGhlIHotdHJhbmZvcm0gb2YgdGhlIGZpbHRlciBpcworICAgIC8vCisgICAgLy8g
SCh6KSA9IHN1bShiW2tdKnpeKC1rKSwgaywgMCwgTSkgLyBzdW0oYVtrXSp6XigtayksIGssIDAs
IE4pOworICAgIC8vCisgICAgLy8gVGhlIGRlc2lyZWQgZnJlcXVlbmN5IHJlc3BvbnNlIGlzIEgo
ZXhwKGoqb21lZ2EpKSwgd2hlcmUgb21lZ2EgaXMgaW4gWzAsCisgICAgLy8gMSkuCisgICAgLy8K
KyAgICAvLyBMZXQgUCh4KSA9IHN1bShjW2tdKnheaywgaywgMCwgUCkgYmUgYSBwb2x5bm9taWFs
IG9mIG9yZGVyIFAuIFRoZW4gZWFjaCBvZgorICAgIC8vIHRoZSBzdW1zIGluIEgoeikgaXMgZXF1
aXZhbGVudCB0byBldmFsdWF0aW5nIGEgcG9seW5vbWlhbCBhdCB0aGUgcG9pbnQKKyAgICAvLyAx
L3ouCisKKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spIHsKKyAgICAg
ICAgaWYgKGZyZXF1ZW5jeVtrXSA8IDAgfHwgZnJlcXVlbmN5W2tdID4gMSkgeworICAgICAgICAg
ICAgLy8gT3V0LW9mLWJvdW5kcyBmcmVxdWVuY2llcyBzaG91bGQgcmV0dXJuIE5hTi4KKyAgICAg
ICAgICAgIG1hZ1Jlc3BvbnNlW2tdID0gc3RkOjpuYW5mKCIiKTsKKyAgICAgICAgICAgIHBoYXNl
UmVzcG9uc2Vba10gPSBzdGQ6Om5hbmYoIiIpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgLy8gelJlY2lwID0gMS96ID0gZXhwKC1qKmZyZXF1ZW5jeSkKKyAgICAgICAgICAgIGRvdWJs
ZSBvbWVnYSA9IC1waURvdWJsZSAqIGZyZXF1ZW5jeVtrXTsKKyAgICAgICAgICAgIHN0ZDo6Y29t
cGxleDxkb3VibGU+IHpSZWNpcCA9IHN0ZDo6Y29tcGxleDxkb3VibGU+KGNvcyhvbWVnYSksIHNp
bihvbWVnYSkpOworCisgICAgICAgICAgICBzdGQ6OmNvbXBsZXg8ZG91YmxlPiBudW1lcmF0b3Ig
PSBldmFsdWF0ZVBvbHlub21pYWwobV9mZWVkZm9yd2FyZC5kYXRhKCksIHpSZWNpcCwgbV9mZWVk
Zm9yd2FyZC5zaXplKCkgLSAxKTsKKyAgICAgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IGRl
bm9taW5hdG9yID0gZXZhbHVhdGVQb2x5bm9taWFsKG1fZmVlZGJhY2suZGF0YSgpLCB6UmVjaXAs
IG1fZmVlZGJhY2suc2l6ZSgpIC0gMSk7CisgICAgICAgICAgICBzdGQ6OmNvbXBsZXg8ZG91Ymxl
PiByZXNwb25zZSA9IG51bWVyYXRvciAvIGRlbm9taW5hdG9yOworICAgICAgICAgICAgbWFnUmVz
cG9uc2Vba10gPSBzdGF0aWNfY2FzdDxmbG9hdD4oYWJzKHJlc3BvbnNlKSk7CisgICAgICAgICAg
ICBwaGFzZVJlc3BvbnNlW2tdID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KGF0YW4yKGltYWcocmVzcG9u
c2UpLCByZWFsKHJlc3BvbnNlKSkpOworICAgICAgICB9CisgICAgfQorfQorCitkb3VibGUgSUlS
RmlsdGVyOjp0YWlsVGltZShkb3VibGUgc2FtcGxlUmF0ZSwgYm9vbCBpc0ZpbHRlclN0YWJsZSkK
K3sKKyAgICAvLyBUaGUgbWF4aW11bSB0YWlsIHRpbWUuIFRoaXMgaXMgc29tZXdoYXQgYXJiaXRy
YXJ5LCBidXQgd2UncmUgYXNzdW1pbmcgdGhhdAorICAgIC8vIG5vIG9uZSBpcyBnb2luZyB0byBl
eHBlY3QgdGhlIElJUkZpbHRlciB0byBwcm9kdWNlIGFuIG91dHB1dCBhZnRlciB0aGlzCisgICAg
Ly8gbXVjaCB0aW1lIGFmdGVyIHRoZSBpbnB1dHMgaGF2ZSBzdG9wcGVkLgorICAgIGNvbnN0IGRv
dWJsZSBtYXhUYWlsVGltZSA9IDEwOworCisgICAgLy8gSWYgdGhlIG1heGltdW0gYW1wbGl0dWRl
IG9mIHRoZSBpbXB1bHNlIHJlc3BvbnNlIGlzIGxlc3MgdGhhbiB0aGlzLCB3ZQorICAgIC8vIGFz
c3VtZSB0aGF0IHdlJ3ZlIHJlYWNoZWQgdGhlIHRhaWwgb2YgdGhlIHJlc3BvbnNlLiBDdXJyZW50
bHksIHRoaXMgbWVhbnMKKyAgICAvLyB0aGF0IHRoZSBpbXB1bHNlIGlzIGxlc3MgdGhhbiAxIGJp
dCBvZiBhIDE2LWJpdCBQQ00gdmFsdWUuCisgICAgY29uc3QgZmxvYXQgbWF4VGFpbEFtcGxpdHVk
ZSA9IDEgLyAzMjc2OC4wOworCisgICAgLy8gSWYgZmlsdGVyIGlzIG5vdCBzdGFibGUsIGp1c3Qg
cmV0dXJuIG1heCB0YWlsLiBTaW5jZSB0aGUgZmlsdGVyIGlzIG5vdAorICAgIC8vIHN0YWJsZSwg
dGhlIGltcHVsc2UgcmVzcG9uc2Ugd29uJ3QgY29udmVyZ2UgdG8gemVybywgc28gd2UgZG9uJ3Qg
bmVlZCB0bworICAgIC8vIGZpbmQgdGhlIGltcHVsc2UgcmVzcG9uc2UgdG8gZmluZCB0aGUgYWN0
dWFsIHRhaWwgdGltZS4KKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICByZXR1cm4g
bWF4VGFpbFRpbWU7CisKKyAgICAvLyBIb3cgdG8gY29tcHV0ZSB0aGUgdGFpbCB0aW1lPyBXZSdy
ZSBnb2luZyB0byBmaWx0ZXIgYW4gaW1wdWxzZQorICAgIC8vIGZvciB8bWF4VGFpbFRpbWV8IHNl
Y29uZHMsIGluIGJsb2NrcyBvZiBrUmVuZGVyUXVhbnR1bUZyYW1lcyBhdAorICAgIC8vIGEgdGlt
ZS4gVGhlIG1heGltdW0gbWFnbml0dWRlIG9mIHRoaXMgYmxvY2sgaXMgc2F2ZWQuIEFmdGVyIGFs
bAorICAgIC8vIG9mIHRoZSBzYW1wbGVzIGhhdmUgYmVlbiBjb21wdXRlZCwgZmluZCB0aGUgbGFz
dCBibG9jayB3aXRoIGEKKyAgICAvLyBtYXhpbXVtIG1hZ25pdHVkZSBncmVhdGVyIHRoYW4gfGtN
YXhUYWlsZUFtcGxpdHVkZXwuIFRoYXQgYmxvY2sKKyAgICAvLyBpbmRleCArIDEgd2lsbCBiZSB0
aGUgdGFpbCB0aW1lLiBXZSBkb24ndCBuZWVkIHRvIGJlCisgICAgLy8gc3VwZXItYWNjdXJhdGUg
aW4gY29tcHV0aW5nIHRoZSB0YWlsIHRpbWUgc2luY2Ugd2UgcHJvY2VzcyBvbgorICAgIC8vIGJs
b2NrcywgYmxvY2sgYWNjdXJhY3kgaXMgZ29vZCBlbm91Z2gsIGFuZCB0aGUgdmFsdWUganVzdCBu
ZWVkcworICAgIC8vIHRvIGJlIGxhcmdlciB0aGFuIHRoZSAicmVhbCIgdGFpbCB0aW1lLCBzbyB3
ZSBkb24ndCBwcmVtYXR1cmVseQorICAgIC8vIHplcm8gb3V0IHRoZSBvdXRwdXQgb2YgdGhlIG5v
ZGUuCisKKyAgICAvLyBOdW1iZXIgb2YgcmVuZGVyIHF1YW50YSBuZWVkZWQgdG8gcmVhY2ggdGhl
IG1heCB0YWlsIHRpbWUuCisgICAgaW50IG51bWJlck9mQmxvY2tzID0gc3RkOjpjZWlsKHNhbXBs
ZVJhdGUgKiBtYXhUYWlsVGltZSAvIGlpclJlbmRlcmluZ1F1YW50dW0pOworCisgICAgLy8gSW5w
dXQgYW5kIG91dHB1dCBidWZmZXJzIGZvciBmaWx0ZXJpbmcuCisgICAgQXVkaW9GbG9hdEFycmF5
IGlucHV0KGlpclJlbmRlcmluZ1F1YW50dW0pOworICAgIEF1ZGlvRmxvYXRBcnJheSBvdXRwdXQo
aWlyUmVuZGVyaW5nUXVhbnR1bSk7CisKKyAgICAvLyBBcnJheSB0byBob2xkIHRoZSBtYXggbWFn
bml0dWRlcworICAgIEF1ZGlvRmxvYXRBcnJheSBtYWduaXR1ZGVzKG51bWJlck9mQmxvY2tzKTsK
KworICAgIC8vIENyZWF0ZSB0aGUgaW1wdWxzZSBpbnB1dCBzaWduYWwuCisgICAgaW5wdXRbMF0g
PSAxOworCisgICAgLy8gUHJvY2VzcyB0aGUgZmlyc3QgYmxvY2sgYW5kIGdldCB0aGUgbWF4IG1h
Z25pdHVkZSBvZiB0aGUgb3V0cHV0LgorICAgIHByb2Nlc3MoaW5wdXQuZGF0YSgpLCBvdXRwdXQu
ZGF0YSgpLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKyAgICBWZWN0b3JNYXRoOjp2bWF4bWd2KG91
dHB1dC5kYXRhKCksIDEsICZtYWduaXR1ZGVzWzBdLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKwor
ICAgIC8vIFByb2Nlc3MgdGhlIHJlc3Qgb2YgdGhlIHNpZ25hbCwgZ2V0dGluZyB0aGUgbWF4IG1h
Z25pdHVkZSBvZiB0aGUKKyAgICAvLyBvdXRwdXQgZm9yIGVhY2ggYmxvY2suCisgICAgaW5wdXRb
MF0gPSAwOworCisgICAgZm9yIChpbnQgayA9IDE7IGsgPCBudW1iZXJPZkJsb2NrczsgKytrKSB7
CisgICAgICAgIHByb2Nlc3MoaW5wdXQuZGF0YSgpLCBvdXRwdXQuZGF0YSgpLCBpaXJSZW5kZXJp
bmdRdWFudHVtKTsKKyAgICAgICAgVmVjdG9yTWF0aDo6dm1heG1ndihvdXRwdXQuZGF0YSgpLCAx
LCAmbWFnbml0dWRlc1trXSwgaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisgICAgfQorCisgICAgLy8g
RG9uZSBjb21wdXRpbmcgdGhlIGltcHVsc2UgcmVzcG9uc2U7IHJlc2V0IHRoZSBzdGF0ZSBzbyB0
aGUgYWN0dWFsIG5vZGUKKyAgICAvLyBzdGFydHMgaW4gdGhlIGV4cGVjdGVkIGluaXRpYWwgc3Rh
dGUuCisgICAgcmVzZXQoKTsKKworICAgIC8vIEZpbmQgdGhlIGxhc3QgYmxvY2sgd2l0aCBhbXBs
aXR1ZGUgZ3JlYXRlciB0aGFuIHRoZSB0aHJlc2hvbGQuCisgICAgaW50IGluZGV4ID0gbnVtYmVy
T2ZCbG9ja3MgLSAxOworICAgIGZvciAoaW50IGsgPSBpbmRleDsgayA+PSAwOyAtLWspIHsKKyAg
ICAgICAgaWYgKG1hZ25pdHVkZXNba10gPiBtYXhUYWlsQW1wbGl0dWRlKSB7CisgICAgICAgICAg
ICBpbmRleCA9IGs7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgIH0KKworICAg
IC8vIFRoZSBtYWduaXR1ZGUgZmlyc3QgYmVjb21lIGxvd2VyIHRoYW4gdGhlIHRocmVzaG9sZCBh
dCB0aGUgbmV4dCBibG9jay4KKyAgICAvLyBDb21wdXRlIHRoZSBjb3JyZXNwb25kaW5nIHRpbWUg
dmFsdWUgdmFsdWU7IHRoYXQncyB0aGUgdGFpbCB0aW1lLgorICAgIHJldHVybiAoaW5kZXggKyAx
KSAqIGlpclJlbmRlcmluZ1F1YW50dW0gLyBzYW1wbGVSYXRlOworfQorCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJG
aWx0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjQyYjZhMzc3MjVjN2JlOTk1NDdjMTM0YzU4NzFkOTg5OTQ0ZDZjNjMKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuaApAQCAt
MCwwICsxLDY4IEBACisvKgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIElJUkZpbHRlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FU
RUQ7CitwdWJsaWM6CisgICAgc3RhdGljIGNvbnN0IHNpemVfdCBtYXhPcmRlcjsKKyAgICBJSVJG
aWx0ZXIoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91
YmxlPiYgZmVlZGJhY2spOworCisgICAgdm9pZCByZXNldCgpOworCisgICAgdm9pZCBwcm9jZXNz
KGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZsb2F0KiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1Rv
UHJvY2Vzcyk7CisgICAgdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5ndGgs
IGNvbnN0IGZsb2F0KiBmcmVxdWVuY3ksIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNl
UmVzcG9uc2UpOworICAgIGRvdWJsZSB0YWlsVGltZShkb3VibGUgc2FtcGxlUmF0ZSwgYm9vbCBp
c0ZpbHRlclN0YWJsZSk7CisKK3ByaXZhdGU6CisgICAgLy8gRmlsdGVyIG1lbW9yeQorICAgIC8v
CisgICAgLy8gRm9yIHNpbXBsaWNpdHksIHdlIGFzc3VtZSB8bV94QnVmZmVyfCBhbmQgfG1feUJ1
ZmZlcnwgaGF2ZSB0aGUgc2FtZSBsZW5ndGgsCisgICAgLy8gYW5kIHRoZSBsZW5ndGggaXMgYSBw
b3dlciBvZiB0d28uIFNpbmNlIHRoZSBudW1iZXIgb2YgY29lZmZpY2llbnRzIGhhcyBhCisgICAg
Ly8gZml4ZWQgdXBwZXIgbGVuZ3RoLCB0aGUgc2l6ZSBvZiB4QnVmZmVyIGFuZCB5QnVmZmVyIGlz
IGZpeGVkLiB8bV94QnVmZmVyfAorICAgIC8vIGhvbGRzIHRoZSBvbGQgaW5wdXQgdmFsdWVzIGFu
ZCB8bV95QnVmZmVyfCBob2xkcyB0aGUgb2xkIG91dHB1dCB2YWx1ZXMKKyAgICAvLyBuZWVkZWQg
dG8gY29tcHV0ZSB0aGUgbmV3IG91dHB1dCB2YWx1ZS4KKyAgICAvLworICAgIC8vIG1feUJ1ZmZl
clttX2J1ZmZlckluZGV4XSBob2xkcyB0aGUgbW9zdCByZWNlbnQgb3V0cHV0IHZhbHVlLCBzYXks
IHlbbl0uCisgICAgLy8gVGhlbiBtX3lCdWZmZXJbbV9idWZmZXJJbmRleCAtIGtdIGlzIHlbbiAt
IGtdLiBTaW1pbGFybHkgZm9yIG1feEJ1ZmZlci4KKyAgICAvLworICAgIC8vIFRvIG1pbmltaXpl
IHJvdW5kb2ZmLCB0aGVzZSBhcnJheXMgYXJlIGRvdWJsZSdzIGluc3RlYWQgb2YgZmxvYXRzLgor
ICAgIFZlY3Rvcjxkb3VibGU+IG1feEJ1ZmZlcjsKKyAgICBWZWN0b3I8ZG91YmxlPiBtX3lCdWZm
ZXI7CisKKyAgICAvLyBJbmRleCBpbnRvIHRoZSB4QnVmZmVyIGFuZCB5QnVmZmVyIGFycmF5cyB3
aGVyZSB0aGUgbW9zdCBjdXJyZW50IHggYW5kIHkKKyAgICAvLyB2YWx1ZXMgc2hvdWxkIGJlIHN0
b3JlZC4geEJ1ZmZlcltidWZmZXJJbmRleF0gY29ycmVzcG9uZHMgdG8geFtuXSwgdGhlCisgICAg
Ly8gY3VycmVudCB4IGlucHV0IHZhbHVlIGFuZCB5QnVmZmVyW2J1ZmZlckluZGV4XSBpcyB3aGVy
ZSB5W25dLCB0aGUgY3VycmVudAorICAgIC8vIG91dHB1dCB2YWx1ZS4KKyAgICBzaXplX3QgbV9i
dWZmZXJJbmRleCB7IDAgfTsKKworICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBtX2ZlZWRmb3J3
YXJkOworICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBtX2ZlZWRiYWNrOworfTsKKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvSW1hZ2VVdGlsaXRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0ltYWdlVXRpbGl0aWVzLmgKaW5kZXggOWIxOGNhYThkODZiZjhkMjc1M2MzY2JlY2E1ZDc0NDRm
YWY5ODFkNy4uMDNjZjExN2Q1NGQ0MTkxODVkNGE4ZjAyNDYwNDc1NDU4MGM1MWQ3NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGlsaXRpZXMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oCkBA
IC0yNSw2ICsyNSw5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KKyNpbmNsdWRlIDx3dGYvV29ya1F1ZXVlLmg+CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
V0VCQ09SRV9FWFBPUlQgV29ya1F1ZXVlJiBzaGFyZWRJbWFnZVRyYW5zY29kaW5nUXVldWUoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAppbmRleCA5MGM5ZDk4YWNmYTFhMjFhN2Y0
YjQ0ZGQxMjhkOThiMDEyM2Q0OGMyLi44YzA2M2E3ZWE2Mzg2ODFiZjAyMDQwYTAzMzJjNTcxZjNm
OTI2ZjdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBAIC00NjYzLDcgKzQ2
NjMsNyBAQCBSZWZQdHI8RmlsZT4gSW50ZXJuYWxzOjpjcmVhdGVGaWxlKGNvbnN0IFN0cmluZyYg
cGF0aCkKICAgICBpZiAoIXVybC5pc0xvY2FsRmlsZSgpKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIAotICAgIHJldHVybiBGaWxlOjpjcmVhdGUodXJsLmZpbGVTeXN0ZW1QYXRoKCkpOworICAg
IHJldHVybiBGaWxlOjpjcmVhdGUoZG9jdW1lbnQsIHVybC5maWxlU3lzdGVtUGF0aCgpKTsKIH0K
IAogdm9pZCBJbnRlcm5hbHM6OnF1ZXVlTWljcm9UYXNrKGludCB0ZXN0TnVtYmVyKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9TZXJ2aWNlV29ya2VySW50ZXJuYWxzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvU2VydmljZVdvcmtlckludGVybmFscy5jcHAKaW5kZXgg
ZThkMzBiNGI5YTBkMzk3YmJiZWI1ZTdjNzQ0N2Y5ODAyZThmY2JhNC4uMzVmNGE3OGFkNWU5MGVj
NmZhNTZiNzI3NzRmNWE4ZWU4N2VhMmYwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9TZXJ2aWNlV29ya2VySW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL1NlcnZpY2VXb3JrZXJJbnRlcm5hbHMuY3BwCkBAIC02OSwxNCArNjksMTQgQEAgUmVmPEZl
dGNoRXZlbnQ+IFNlcnZpY2VXb3JrZXJJbnRlcm5hbHM6OmNyZWF0ZUJlaW5nRGlzcGF0Y2hlZEZl
dGNoRXZlbnQoU2NyaXB0RXgKIAogUmVmPEZldGNoUmVzcG9uc2U+IFNlcnZpY2VXb3JrZXJJbnRl
cm5hbHM6OmNyZWF0ZU9wYXF1ZVdpdGhCbG9iQm9keVJlc3BvbnNlKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIGNvbnRleHQpCiB7Ci0gICAgYXV0byBibG9iID0gQmxvYjo6Y3JlYXRlKCk7CisgICAg
YXV0byBibG9iID0gQmxvYjo6Y3JlYXRlKCZjb250ZXh0KTsKICAgICBhdXRvIGZvcm1EYXRhID0g
Rm9ybURhdGE6OmNyZWF0ZSgpOwogICAgIGZvcm1EYXRhLT5hcHBlbmRCbG9iKGJsb2ItPnVybCgp
KTsKIAogICAgIFJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2U7CiAgICAgcmVzcG9uc2Uuc2V0VHlw
ZShSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpDb3JzKTsKICAgICByZXNwb25zZS5zZXRUYWludGlu
ZyhSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6T3BhcXVlKTsKLSAgICBhdXRvIGZldGNoUmVz
cG9uc2UgPSBGZXRjaFJlc3BvbnNlOjpjcmVhdGUoY29udGV4dCwgRmV0Y2hCb2R5Ojpmcm9tRm9y
bURhdGEoZm9ybURhdGEpLCBGZXRjaEhlYWRlcnM6Okd1YXJkOjpSZXNwb25zZSwgV1RGTW92ZShy
ZXNwb25zZSkpOworICAgIGF1dG8gZmV0Y2hSZXNwb25zZSA9IEZldGNoUmVzcG9uc2U6OmNyZWF0
ZShjb250ZXh0LCBGZXRjaEJvZHk6OmZyb21Gb3JtRGF0YShjb250ZXh0LCBmb3JtRGF0YSksIEZl
dGNoSGVhZGVyczo6R3VhcmQ6OlJlc3BvbnNlLCBXVEZNb3ZlKHJlc3BvbnNlKSk7CiAgICAgZmV0
Y2hSZXNwb25zZS0+aW5pdGlhbGl6ZU9wYXF1ZUxvYWRJZGVudGlmaWVyRm9yVGVzdGluZygpOwog
ICAgIHJldHVybiBmZXRjaFJlc3BvbnNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlckZldGNoLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJGZXRjaC5jcHAKaW5k
ZXggZTNhMGQzZGE2OTkyY2NhMTFjODkxNWU4MjY3NGU1MTcwMDNmYWE0Mi4uNmI5NDcyZDAwMzdm
NjFmZTliNzUyZDQ2NGFjMTU5Yzc3ZTI5NjczNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlckZldGNoLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyRmV0Y2guY3Bw
CkBAIC0xNTAsNyArMTUwLDcgQEAgdm9pZCBkaXNwYXRjaEZldGNoRXZlbnQoUmVmPENsaWVudD4m
JiBjbGllbnQsIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSYgZ2xvYmFsU2MKICAgICBhdXRvKiBm
b3JtRGF0YSA9IHJlcXVlc3QuaHR0cEJvZHkoKTsKICAgICBPcHRpb25hbDxGZXRjaEJvZHk+IGJv
ZHk7CiAgICAgaWYgKGZvcm1EYXRhICYmICFmb3JtRGF0YS0+aXNFbXB0eSgpKSB7Ci0gICAgICAg
IGJvZHkgPSBGZXRjaEJvZHk6OmZyb21Gb3JtRGF0YSgqZm9ybURhdGEpOworICAgICAgICBib2R5
ID0gRmV0Y2hCb2R5Ojpmcm9tRm9ybURhdGEoZ2xvYmFsU2NvcGUsICpmb3JtRGF0YSk7CiAgICAg
ICAgIGlmICghYm9keSkgewogICAgICAgICAgICAgY2xpZW50LT5kaWROb3RIYW5kbGUoKTsKICAg
ICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRw
UmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCmluZGV4
IDJmYjQ0YzIwODE4ZWJkNGIzNGI4OTc1MzkzZDQ5NGFmYmQyNTVlNTIuLmFkYTJjMzczMjdjMzgy
NTM5NjkzOGQwM2EzYTU1NzM1ZThkZTIzMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3ht
bC9YTUxIdHRwUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1
ZXN0LmNwcApAQCAtMjA5LDcgKzIwOSw3IEBAIFJlZjxCbG9iPiBYTUxIdHRwUmVxdWVzdDo6Y3Jl
YXRlUmVzcG9uc2VCbG9iKCkKICAgICAgICAgZGF0YS5hcHBlbmQobV9iaW5hcnlSZXNwb25zZUJ1
aWxkZXItPmRhdGEoKSwgbV9iaW5hcnlSZXNwb25zZUJ1aWxkZXItPnNpemUoKSk7CiAgICAgbV9i
aW5hcnlSZXNwb25zZUJ1aWxkZXIgPSBudWxscHRyOwogICAgIFN0cmluZyBub3JtYWxpemVkQ29u
dGVudFR5cGUgPSBCbG9iOjpub3JtYWxpemVkQ29udGVudFR5cGUocmVzcG9uc2VNSU1FVHlwZSgp
KTsgLy8gcmVzcG9uc2VNSU1FVHlwZSBkZWZhdWx0cyB0byB0ZXh0L3htbCB3aGljaCBtYXkgYmUg
aW5jb3JyZWN0LgotICAgIHJldHVybiBCbG9iOjpjcmVhdGUoV1RGTW92ZShkYXRhKSwgbm9ybWFs
aXplZENvbnRlbnRUeXBlKTsKKyAgICByZXR1cm4gQmxvYjo6Y3JlYXRlKHNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKSwgV1RGTW92ZShkYXRhKSwgbm9ybWFsaXplZENvbnRlbnRUeXBlKTsKIH0KIAog
UmVmUHRyPEFycmF5QnVmZmVyPiBYTUxIdHRwUmVxdWVzdDo6Y3JlYXRlUmVzcG9uc2VBcnJheUJ1
ZmZlcigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvQXV0b21hdGlvbi9X
ZWJBdXRvbWF0aW9uU2Vzc2lvblByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9B
dXRvbWF0aW9uL1dlYkF1dG9tYXRpb25TZXNzaW9uUHJveHkuY3BwCmluZGV4IDczNGUwZDI4MTc0
YzZlOTZmOGExZTkwM2YyZThjOTg4NjUyZTA5NDMuLmIzYTU0Y2EwMjQzZDc4MWE3ODQyODMyZjFm
NWJhNDY3ODJlNGQyYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9BdXRv
bWF0aW9uL1dlYkF1dG9tYXRpb25TZXNzaW9uUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9BdXRvbWF0aW9uL1dlYkF1dG9tYXRpb25TZXNzaW9uUHJveHkuY3BwCkBAIC04
MzYsNyArODM2LDcgQEAgdm9pZCBXZWJBdXRvbWF0aW9uU2Vzc2lvblByb3h5OjpzZXRGaWxlc0Zv
cklucHV0RmlsZVVwbG9hZChXZWJDb3JlOjpQYWdlSWRlbnRpZmkKICAgICAgICAgfQogICAgIH0K
ICAgICBmb3IgKGNvbnN0IGF1dG8mIHBhdGggOiBmaWxlbmFtZXMpCi0gICAgICAgIGZpbGVPYmpl
Y3RzLmFwcGVuZChXZWJDb3JlOjpGaWxlOjpjcmVhdGUocGF0aCkpOworICAgICAgICBmaWxlT2Jq
ZWN0cy5hcHBlbmQoV2ViQ29yZTo6RmlsZTo6Y3JlYXRlKCZpbnB1dEVsZW1lbnQuZG9jdW1lbnQo
KSwgcGF0aCkpOwogICAgIGlucHV0RWxlbWVudC5zZXRGaWxlcyhXZWJDb3JlOjpGaWxlTGlzdDo6
Y3JlYXRlKFdURk1vdmUoZmlsZU9iamVjdHMpKSk7CiAKICAgICBjb21wbGV0aW9uSGFuZGxlcihX
VEY6Om51bGxvcHQpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDAzMjJmOWNkNGJlYWY2OTYxOTQwMjM1ODg1ZWYxYjg3MmQ2
MjUzNmUuLmE5N2E1OTYyZTIzMzk3OTI3YjBmNmY2NmEyOTk2MmQ1YzEwZjcxMDUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNiBAQAorMjAyMC0wOC0yNSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29t
PgorCisgICAgICAgIFJFR1JFU1NJT04gKHIyNjU5MDgpOiBDcmFzaCB1bmRlciBCbG9iOjphcnJh
eUJ1ZmZlcigpIC8gQmxvYjo6dGV4dCgpIGluIHN0cmVzcyBHQworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1ODMyCisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS82Nzc0MTY3Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAg
ICAgICAgQWRkIGJldHRlciB0ZXN0IGNvdmVyYWdlLgorCisgICAgICAgICogZmFzdC9maWxlcy9i
bG9iLXRleHQtZ2MtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2ZpbGVzL2Js
b2ItdGV4dC1nYy5odG1sOiBBZGRlZC4KKwogMjAyMC0wOC0yNSAgRGllZ28gUGlubyBHYXJjaWEg
IDxkcGlub0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHTElCXSBVbnJldmlld2VkIHRlc3QgZ2Fy
ZGVuaW5nLiBVcGRhdGVkIGh5YmkgYmFzZWxpbmVzIGFmdGVyIHIyNjYwNTcuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA1N2E2MTI1MWNiNGIzMzZkMzkyMmVjNTJhYmZhOWI2NmMy
NjQ3MTg3Li44NWFmYWYyNzdkZWI0ODg4YjMxMGExYWUzMmMwZjRjOTc2N2FkZTcwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAyMC0wOC0yNSAgQ2hy
aXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIElJUkZpbHRlck5vZGUgaW50
ZXJmYWNlIGlzIG5vdCBzdXBwb3J0ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNTgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFJlYmFzZWxpbmUgV1BUIHRlc3RzIHRoYXQgYXJlIG5vdyBwYXNzaW5n
LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0
cHMud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJm
aWx0ZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFz
aWMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVz
cG9uc2UtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRl
cm5vZGUtZXhwZWN0ZWQudHh0OgorCiAyMDIwLTA4LTI0ICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVXBkYXRlIGlPUyBsYXlvdXQgdGVzdCBy
ZXN1bHRzIGFmdGVyIHIyNjYwODcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3Rh
dGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDdlOTcyODc5MDlhZjM2
YWQ3MGM4YWY3ZWJiYzJiNmU1MzdhMTJhZWQuLmYwMjIxODEwMjczMDI5NmRiYmJmMWRjMmU5ODg1
YTg3Yzc0MGU5MGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysr
IGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzM1LDYgKzMzNSw5IEBAIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVk
aW9wYXJhbS1pbnRlcmZhY2UvCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1kZWxheS5o
dG1sIFsgUGFzcyBGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWdhaW4u
aHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKKyMgb25lLXBvbGUgc3VidGVzdCBpcyBmbGFraWx5IGZh
aWxpbmcuCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci5odG1sIFsgUGFzcyBG
YWlsdXJlIF0KKwogIyBUaGlzIHRlc3QgcGFzc2VzIGJ1dCBwcmludHMgYSBkaWZmZXJlbnQgdmFs
dWUgYWxtb3N0IGV2ZXJ5IHRpbWUuCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZl
ci1yZXNwb25zZS00LWNoYW4uaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZmlsZXMvYmxvYi10ZXh0LWdjLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvZmlsZXMvYmxvYi10ZXh0LWdjLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZjVi
MzJhNTdkNTY2NGJmMzU4YmYwNWE5NWQ3MjkwNDBmYzdhZjFhCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXRleHQtZ2MtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTA5IEBACitNYWtlIHN1cmUgdGhlIEJsb2IudGV4dCgpIHByb21pc2UgZ2V0cyByZXNvbHZl
ZCBldmVuIGlmIHRoZSBCbG9iIG9iamVjdCBpcyBub3Qga2VwdCBhbGl2ZSBieSBKUy4KKworT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdGV4dCBpcyAiZm9vYmFyMCIKK1BBU1Mg
dGV4dCBpcyAiZm9vYmFyMSIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyMiIKK1BBU1MgdGV4dCBpcyAi
Zm9vYmFyMyIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNSIK
K1BBU1MgdGV4dCBpcyAiZm9vYmFyNiIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNyIKK1BBU1MgdGV4
dCBpcyAiZm9vYmFyOCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyOSIKK1BBU1MgdGV4dCBpcyAiZm9v
YmFyMTAiCitQQVNTIHRleHQgaXMgImZvb2JhcjExIgorUEFTUyB0ZXh0IGlzICJmb29iYXIxMiIK
K1BBU1MgdGV4dCBpcyAiZm9vYmFyMTMiCitQQVNTIHRleHQgaXMgImZvb2JhcjE0IgorUEFTUyB0
ZXh0IGlzICJmb29iYXIxNSIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyMTYiCitQQVNTIHRleHQgaXMg
ImZvb2JhcjE3IgorUEFTUyB0ZXh0IGlzICJmb29iYXIxOCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFy
MTkiCitQQVNTIHRleHQgaXMgImZvb2JhcjIwIgorUEFTUyB0ZXh0IGlzICJmb29iYXIyMSIKK1BB
U1MgdGV4dCBpcyAiZm9vYmFyMjIiCitQQVNTIHRleHQgaXMgImZvb2JhcjIzIgorUEFTUyB0ZXh0
IGlzICJmb29iYXIyNCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyMjUiCitQQVNTIHRleHQgaXMgImZv
b2JhcjI2IgorUEFTUyB0ZXh0IGlzICJmb29iYXIyNyIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyMjgi
CitQQVNTIHRleHQgaXMgImZvb2JhcjI5IgorUEFTUyB0ZXh0IGlzICJmb29iYXIzMCIKK1BBU1Mg
dGV4dCBpcyAiZm9vYmFyMzEiCitQQVNTIHRleHQgaXMgImZvb2JhcjMyIgorUEFTUyB0ZXh0IGlz
ICJmb29iYXIzMyIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyMzQiCitQQVNTIHRleHQgaXMgImZvb2Jh
cjM1IgorUEFTUyB0ZXh0IGlzICJmb29iYXIzNiIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyMzciCitQ
QVNTIHRleHQgaXMgImZvb2JhcjM4IgorUEFTUyB0ZXh0IGlzICJmb29iYXIzOSIKK1BBU1MgdGV4
dCBpcyAiZm9vYmFyNDAiCitQQVNTIHRleHQgaXMgImZvb2JhcjQxIgorUEFTUyB0ZXh0IGlzICJm
b29iYXI0MiIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNDMiCitQQVNTIHRleHQgaXMgImZvb2JhcjQ0
IgorUEFTUyB0ZXh0IGlzICJmb29iYXI0NSIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNDYiCitQQVNT
IHRleHQgaXMgImZvb2JhcjQ3IgorUEFTUyB0ZXh0IGlzICJmb29iYXI0OCIKK1BBU1MgdGV4dCBp
cyAiZm9vYmFyNDkiCitQQVNTIHRleHQgaXMgImZvb2JhcjUwIgorUEFTUyB0ZXh0IGlzICJmb29i
YXI1MSIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNTIiCitQQVNTIHRleHQgaXMgImZvb2JhcjUzIgor
UEFTUyB0ZXh0IGlzICJmb29iYXI1NCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNTUiCitQQVNTIHRl
eHQgaXMgImZvb2JhcjU2IgorUEFTUyB0ZXh0IGlzICJmb29iYXI1NyIKK1BBU1MgdGV4dCBpcyAi
Zm9vYmFyNTgiCitQQVNTIHRleHQgaXMgImZvb2JhcjU5IgorUEFTUyB0ZXh0IGlzICJmb29iYXI2
MCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNjEiCitQQVNTIHRleHQgaXMgImZvb2JhcjYyIgorUEFT
UyB0ZXh0IGlzICJmb29iYXI2MyIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNjQiCitQQVNTIHRleHQg
aXMgImZvb2JhcjY1IgorUEFTUyB0ZXh0IGlzICJmb29iYXI2NiIKK1BBU1MgdGV4dCBpcyAiZm9v
YmFyNjciCitQQVNTIHRleHQgaXMgImZvb2JhcjY4IgorUEFTUyB0ZXh0IGlzICJmb29iYXI2OSIK
K1BBU1MgdGV4dCBpcyAiZm9vYmFyNzAiCitQQVNTIHRleHQgaXMgImZvb2JhcjcxIgorUEFTUyB0
ZXh0IGlzICJmb29iYXI3MiIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyNzMiCitQQVNTIHRleHQgaXMg
ImZvb2Jhcjc0IgorUEFTUyB0ZXh0IGlzICJmb29iYXI3NSIKK1BBU1MgdGV4dCBpcyAiZm9vYmFy
NzYiCitQQVNTIHRleHQgaXMgImZvb2Jhcjc3IgorUEFTUyB0ZXh0IGlzICJmb29iYXI3OCIKK1BB
U1MgdGV4dCBpcyAiZm9vYmFyNzkiCitQQVNTIHRleHQgaXMgImZvb2JhcjgwIgorUEFTUyB0ZXh0
IGlzICJmb29iYXI4MSIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyODIiCitQQVNTIHRleHQgaXMgImZv
b2JhcjgzIgorUEFTUyB0ZXh0IGlzICJmb29iYXI4NCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyODUi
CitQQVNTIHRleHQgaXMgImZvb2Jhcjg2IgorUEFTUyB0ZXh0IGlzICJmb29iYXI4NyIKK1BBU1Mg
dGV4dCBpcyAiZm9vYmFyODgiCitQQVNTIHRleHQgaXMgImZvb2Jhcjg5IgorUEFTUyB0ZXh0IGlz
ICJmb29iYXI5MCIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyOTEiCitQQVNTIHRleHQgaXMgImZvb2Jh
cjkyIgorUEFTUyB0ZXh0IGlzICJmb29iYXI5MyIKK1BBU1MgdGV4dCBpcyAiZm9vYmFyOTQiCitQ
QVNTIHRleHQgaXMgImZvb2Jhcjk1IgorUEFTUyB0ZXh0IGlzICJmb29iYXI5NiIKK1BBU1MgdGV4
dCBpcyAiZm9vYmFyOTciCitQQVNTIHRleHQgaXMgImZvb2Jhcjk4IgorUEFTUyB0ZXh0IGlzICJm
b29iYXI5OSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2Jsb2ItdGV4dC1nYy5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXRleHQtZ2MuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
NGFhYzJjZmRkODU2YWUxMDUxZjMyNWIzZmQ5MzIyYmI4MjI1NGI3Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXRleHQtZ2MuaHRtbApAQCAtMCwwICsxLDI5
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJN
YWtlIHN1cmUgdGhlIEJsb2IudGV4dCgpIHByb21pc2UgZ2V0cyByZXNvbHZlZCBldmVuIGlmIHRo
ZSBCbG9iIG9iamVjdCBpcyBub3Qga2VwdCBhbGl2ZSBieSBKUy4iKTsKK2pzVGVzdElzQXN5bmMg
PSB0cnVlOworCitsZXQgcHJvbWlzZXNSZXNvbHZlZCA9IDA7Citjb25zdCB0ZXN0Q291bnQgPSAx
MDA7CisKK2Z1bmN0aW9uIHRlc3QoaSkKK3sKKyAgICBuZXcgQmxvYihbImZvbyIsICJiYXIiLCBp
XSkudGV4dCgpLnRoZW4oKF90ZXh0KSA9PiB7CisgICAgICAgIHRleHQgPSBfdGV4dDsKKyAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0ZXh0IiwgImZvb2JhciIgKyBpKTsKKyAgICAgICAg
cHJvbWlzZXNSZXNvbHZlZCsrOworICAgICAgICBpZiAocHJvbWlzZXNSZXNvbHZlZCA9PSB0ZXN0
Q291bnQpCisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9KTsKKyAgICBnYygpOwor
fQorCitmb3IgKGxldCBpID0gMDsgaSA8IHRlc3RDb3VudDsgaSsrKQorICAgIHRlc3QoaSk7IAor
Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5k
ZXggNWU5MTIzMmY4N2NkN2UwYTBkYWZlMjkwMTg2NTQ3YjNmM2FmNjUxOC4uODE3NDk0NTUxNjg0
MjA0ZDI1YmM0OGQxMTFmNGRiMmFiMGNiNGFlNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndp
bmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
QEAgLTMzLDcgKzMzLDcgQEAgUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0
aW9uIGNyZWF0ZUNvbnZvbHZlcigpCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBv
cGVyYXRpb24gY3JlYXRlRGVsYXkob3B0aW9uYWwgZG91YmxlKSAKIFBBU1MgQmFzZUF1ZGlvQ29u
dGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVEeW5hbWljc0NvbXByZXNzb3IoKSAKIFBB
U1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVHYWluKCkgCi1G
QUlMIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlSUlSRmlsdGVy
KHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIGFzc2VydF9vd25fcHJvcGVydHk6
IGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IG1pc3Npbmcgbm9uLXN0YXRpYyBvcGVyYXRpb24g
ZXhwZWN0ZWQgcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbWlzc2luZworUEFTUyBCYXNlQXVk
aW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxk
b3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZh
Y2U6IG9wZXJhdGlvbiBjcmVhdGVPc2NpbGxhdG9yKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQg
aW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlUGFubmVyKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0
Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25zdHJhaW50cykgCkBA
IC05NCw4ICs5NCw4IEBAIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVEZWxheShvcHRpCiBQQVNTIEJhc2VBdWRpb0Nv
bnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJsZSkgb24g
Y29udGV4dCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAogUEFT
UyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImNyZWF0ZUR5bmFtaWNzQ29tcHJlc3NvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBB
U1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3Bl
cnR5ICJjcmVhdGVHYWluKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBCYXNlQXVkaW9D
b250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUlJ
UkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3Qg
Zm91bmQgaW4gcHJvdG90eXBlIGNoYWluCi1GQUlMIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNl
OiBjYWxsaW5nIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3Vi
bGU+KSBvbiBjb250ZXh0IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJy
b3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3QgZm91bmQg
aW4gcHJvdG90eXBlIGNoYWluCitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250
ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJs
ZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQmFzZUF1
ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRv
dWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIG9uIGNvbnRleHQgd2l0aCB0b28gZmV3IGFyZ3VtZW50
cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6
IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVPc2NpbGxhdG9yKCkiIHdpdGgg
dGhlIHByb3BlciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4
dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZVBhbm5lcigpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjcmVhdGVQZXJpb2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+LCBzZXF1ZW5j
ZTxmbG9hdD4sIG9wdGlvbmFsIFBlcmlvZGljV2F2ZUNvbnN0cmFpbnRzKSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgCkBAIC0xNDcsOCArMTQ3LDggQEAgUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVy
ZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QKIFBB
U1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlRGVsYXkob3B0aW9u
YWwgZG91YmxlKSBvbiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkg
d2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1
ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBs
ZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUR5bmFtaWNzQ29tcHJlc3Nvcigp
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6
IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQg
cHJvcGVydHkgImNyZWF0ZUdhaW4oKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCi1GQUlMIEJhc2VB
dWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1w
bGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8
ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9p
bmhlcml0czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlw
ZSBjaGFpbgotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJ
SVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgb24gbmV3IE9mZmxp
bmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMg
bXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlS
RmlsdGVyIiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCitQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwg
c2VxdWVuY2U8ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBCYXNlQXVkaW9D
b250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91Ymxl
Piwgc2VxdWVuY2U8ZG91YmxlPikgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2Ft
cGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQ
QVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgx
LCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVPc2NpbGxhdG9y
KCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFj
ZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAiY3JlYXRlUGFubmVyKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBC
YXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwg
c2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlUGVyaW9kaWNXYXZlKHNl
cXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25z
dHJhaW50cykiIHdpdGggdGhlIHByb3BlciB0eXBlIApAQCAtNzQ0LDQwICs3NDQsNDAgQEAgUEFT
UyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgR2Fpbk5vZGUoY29udGV4dCkgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJudW1iZXJPZk8KIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5O
b2RlKGNvbnRleHQpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50IiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSAKIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5Ob2RlKGNv
bnRleHQpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgCiBQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250
ZXh0KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2Ug
YW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBz
ZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBw
cm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVy
ZmFjZSBvYmplY3QgbGVuZ3RoIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2
ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0
ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIG9iamVjdCBuYW1l
IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJ
UkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1G
QUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2Yg
aW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2Vz
IG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkg
IklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4
aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJj
b25zdHJ1Y3RvciIgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBo
YXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZp
bHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5j
ZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29w
YWJsZXMgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93
biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5v
ZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRG
cmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5
KSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJ
SVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwot
RkFJTCBJSVJGaWx0ZXJOb2RlIG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBTdHJpbmdpZmljYXRpb24gb2YgbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogbmV3
IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19
KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJh
eSwgRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXkpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogY2Fs
bGluZyBnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxv
YXQzMkFycmF5KSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsx
XSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBl
RXJyb3IgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5n
IG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2Fu
J3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFj
ZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNr
OiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25h
bCB1bnNpZ25lZCBsb25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5n
IG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2Fu
J3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFj
ZTogY2FsbGluZyBjb25uZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0
aW9uYWwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRm
b3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3Qg
dGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4g
ZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNl
RXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvUGFy
YW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRf
ZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVj
dGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlh
YmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNv
bm5lY3QoQXVkaW9QYXJhbSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRv
byBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhw
ZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQg
Z290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRl
ck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRl
eHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3Bl
cnR5ICJkaXNjb25uZWN0KCkiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVu
ZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBi
dXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZp
bHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBh
c3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0
IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxs
aW5nIGRpc2Nvbm5lY3QodW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1l
bnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlM
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9y
d2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25u
ZWN0KEF1ZGlvTm9kZSkiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhw
ZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQg
Z290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRl
ck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRp
b05vZGUpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJv
ciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2Jq
ZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVk
IGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4
Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmpl
Y3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgot
RkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1
bnNpZ25lZCBsb25nKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6
IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBU
eXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0
aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjog
Q2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVy
ZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1
bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0
X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBl
Y3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJp
YWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBk
aXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZykgb24gbmV3
IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19
KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVh
bHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQg
bnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6
IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJO
b2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0pIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2Jq
ZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBj
YWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1l
bnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlM
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9y
d2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25u
ZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5n
IGRpc2Nvbm5lY3QoQXVkaW9QYXJhbSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBm
ZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0
ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290
IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5v
ZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJjb250ZXh0IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVk
IGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBv
YmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2Rl
IgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7
ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAi
bnVtYmVyT2ZJbnB1dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhw
ZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQg
Z290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRl
ck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRl
eHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3Bl
cnR5ICJudW1iZXJPZk91dHB1dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6
IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVs
bCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJ
UkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjaGFubmVsQ291bnQiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVh
bHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQg
bnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6
IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJO
b2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjaGFubmVsQ291bnRNb2RlIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbEludGVycHJldGF0aW9uIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgorUEFTUyBJSVJGaWx0ZXJOb2RlIGlu
dGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgCitQ
QVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggCitQQVNTIElJUkZpbHRl
ck5vZGUgaW50ZXJmYWNlIG9iamVjdCBuYW1lIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFj
ZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0
IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVz
IG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSAK
K1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgCitQ
QVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RnJlcXVlbmN5UmVzcG9u
c2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgCitQQVNTIElJUkZp
bHRlck5vZGUgbXVzdCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIAorUEFTUyBTdHJpbmdp
ZmljYXRpb24gb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZs
b2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIElJ
UkZpbHRlck5vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0
MzJBcnJheSwgRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXkpIG9uIG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3
IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFj
ZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNr
OiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25h
bCB1bnNpZ25lZCBsb25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgY29ubmVjdChBdWRpb05v
ZGUsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVk
aW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVk
aW9QYXJhbSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAor
UEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9QYXJhbSwgb3B0
aW9uYWwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRm
b3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3Qg
dGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVy
Tm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCgpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1Mg
QXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5l
Y3QodW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUg
aW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QodW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRo
IHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUg
aW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwg
ZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05v
ZGUpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2Fs
bGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRz
IG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcp
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGlu
ZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBm
ZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVu
c2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1Mg
QXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWdu
ZWQgbG9uZywgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2Zl
ZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11
c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmls
dGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtKSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRp
b1BhcmFtKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwg
ZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJy
b3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlv
UGFyYW0sIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0
IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgImNvbnRleHQiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRp
b05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6
IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZJbnB1
dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcg
SUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0p
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPdXRwdXRzIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImNoYW5uZWxDb3VudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBp
bnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnRNb2RlIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgCiBQQVNTIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZSBpbnRlcmZhY2U6IGV4aXN0
ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IAogUEFTUyBNZWRpYUVsZW1l
bnRBdWRpb1NvdXJjZU5vZGUgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggCiBQQVNTIE1lZGlhRWxl
bWVudEF1ZGlvU291cmNlTm9kZSBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUgCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJm
aWx0ZXItZXhwZWN0ZWQudHh0CmluZGV4IGU5MDFhMmM0NDMxNjAzMDYyOTZkZDA3MzQxMzExMTc1
N2VmNzM5MDIuLjdhZTc3YzFjMjI5MWQ4MTA4MjI1NDVmMjQzNzcyYWE5YWQ4ZjYyMDkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZh
Y2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQudHh0CkBAIC0yLDI3ICsyLDU2IEBACiBQQVNTICMg
QVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAiaW5pdGlhbGl6ZSIg
CiBQQVNTIEV4ZWN1dGluZyAiaW52YWxpZCBjb25zdHJ1Y3RvciIgCi1GQUlMIEV4ZWN1dGluZyAi
ZGVmYXVsdCBjb25zdHJ1Y3RvciIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBSaWdodCBoYW5kIHNpZGUgb2YgaW5zdGFuY2Vv
ZiBpcyBub3QgYW4gb2JqZWN0IgotRkFJTCBFeGVjdXRpbmcgInRlc3QgQXVkaW9Ob2RlT3B0aW9u
cyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbm9kZS5j
aGFubmVsQ291bnQnKSIKK1BBU1MgRXhlY3V0aW5nICJkZWZhdWx0IGNvbnN0cnVjdG9yIiAKK1BB
U1MgRXhlY3V0aW5nICJ0ZXN0IEF1ZGlvTm9kZU9wdGlvbnMiIAogUEFTUyBFeGVjdXRpbmcgImNv
bnN0cnVjdG9yIG9wdGlvbnMiIAotRkFJTCBFeGVjdXRpbmcgImZ1bmN0aW9uYWxpdHkiIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgorUEFTUyBFeGVjdXRp
bmcgImZ1bmN0aW9uYWxpdHkiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW2luaXRpYWxp
emVdICAKIFBBU1MgICBjb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoLi4uKSBkaWQg
bm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTIDwgW2luaXRpYWxpemVdIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2ludmFsaWQgY29uc3Ry
dWN0b3JdICAKLVBBU1MgICBuZXcgSUlSRmlsdGVyTm9kZSgpIHRocmV3IFR5cGVFcnJvcjogInVu
ZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tuYW1l
XSgpJykiLiAKLVBBU1MgICBuZXcgSUlSRmlsdGVyTm9kZSgxKSB0aHJldyBUeXBlRXJyb3I6ICJ1
bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFt
ZV0oMSknKSIuIAotUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIDQyKSB0aHJldyBU
eXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25l
dyB3aW5kb3dbbmFtZV0oY29udGV4dCwgNDIpJykiLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9k
ZSgpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgbmV3
IElJUkZpbHRlck5vZGUoMSkgdGhyZXcgVHlwZUVycm9yOiAiTm90IGVub3VnaCBhcmd1bWVudHMi
LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCA0MikgdGhyZXcgVHlwZUVycm9y
OiAiVHlwZSBlcnJvciIuIAogUEFTUyA8IFtpbnZhbGlkIGNvbnN0cnVjdG9yXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFtkZWZhdWx0IGNvbnN0
cnVjdG9yXSAgCi1GQUlMIFggbm9kZTAgPSBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ImZl
ZWRmb3J3YXJkIjpbMV0sImZlZWRiYWNrIjpbMSwtMC45XX0pIGluY29ycmVjdGx5IHRocmV3IFR5
cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3
IHdpbmRvd1tuYW1lXShjb250ZXh0LCBvcHRpb25zLmNvbnN0cnVjdG9yT3B0aW9ucyknKSIuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5vZGUwID0gbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJmZWVkYmFjayI6WzEsLTAu
OV19KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZTAgaW5zdGFuY2Vv
ZiBJSVJGaWx0ZXJOb2RlIGlzIGVxdWFsIHRvIHRydWUuIAorUEFTUyAgIG5vZGUwLm51bWJlck9m
SW5wdXRzIGlzIGVxdWFsIHRvIDEuIAorUEFTUyAgIG5vZGUwLm51bWJlck9mT3V0cHV0cyBpcyBl
cXVhbCB0byAxLiAKK1BBU1MgICBub2RlMC5jaGFubmVsQ291bnQgaXMgZXF1YWwgdG8gMi4gCitQ
QVNTICAgbm9kZTAuY2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5v
ZGUwLmNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNTIDwg
W2RlZmF1bHQgY29uc3RydWN0b3JdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDcgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gW3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10gIAotRkFJTCBYIG5ldyBJ
SVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnQ6IDE3fSkgaW5jb3JyZWN0bHkgdGhyZXcgVHlw
ZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9yIChldmFsdWF0aW5nICduZXcg
d2luZG93W25vZGVOYW1lXScpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudDogMTd9KSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnQgaXMgZXF1YWwg
dG8gMTcuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnQ6IDB9KSB0
aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogIlRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0
ZS4iLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50OiA5OX0pIHRo
cmV3IEludmFsaWRTdGF0ZUVycm9yOiAiVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRl
LiIuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAibWF4
In0gZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50
TW9kZSBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFu
bmVsQ291bnRNb2RlOiAibWF4In0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1Mg
ICBub2RlLmNoYW5uZWxDb3VudE1vZGUgYWZ0ZXIgdmFsaWQgc2V0dGVyIGlzIGVxdWFsIHRvIG1h
eC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJjbGFt
cGVkLW1heCJ9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFu
bmVsQ291bnRNb2RlIGFmdGVyIHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBjbGFtcGVkLW1heC4g
CitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJleHBsaWNp
dCJ9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291
bnRNb2RlIGFmdGVyIHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBleHBsaWNpdC4gCitQQVNTICAg
bmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJmb29iYXIifSB0aHJldyBU
eXBlRXJyb3I6ICJUeXBlIGVycm9yIi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFm
dGVyIGludmFsaWQgc2V0dGVyIGlzIGVxdWFsIHRvIGV4cGxpY2l0LiAKK1BBU1MgICBuZXcgSUlS
RmlsdGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJldGF0aW9uOiAic3BlYWtlcnMifSkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbEludGVycHJldGF0aW9u
IGlzIGVxdWFsIHRvIHNwZWFrZXJzLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hh
bm5lbEludGVycHJldGF0aW9uOiAiZGlzY3JldGUifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbEludGVycHJldGF0aW9uIGlzIGVxdWFsIHRvIGRpc2Ny
ZXRlLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJldGF0aW9u
OiAiZm9vYmFyIn0pIHRocmV3IFR5cGVFcnJvcjogIlR5cGUgZXJyb3IiLiAKK1BBU1MgICBub2Rl
LmNoYW5uZWxJbnRlcnByZXRhdGlvbiBhZnRlciBpbnZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBk
aXNjcmV0ZS4gCitQQVNTIDwgW3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10gQWxsIGFzc2VydGlvbnMg
cGFzc2VkLiAodG90YWwgMjAgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2NvbnN0cnVjdG9yIG9wdGlv
bnNdICAKLUZBSUwgWCBub2RlID0gbmV3IElJUkZpbHRlck5vZGUoLCB7ImZlZWRiYWNrIjpbMSww
LjVdfSkgdGhyZXcgIlJlZmVyZW5jZUVycm9yIiBpbnN0ZWFkIG9mIEVjbWFTY3JpcHQgZXJyb3Ig
VHlwZUVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBu
b2RlID0gbmV3IElJUkZpbHRlck5vZGUoYywgeyJmZWVkZm9yd2FyZCI6WzEsMC41XX0pIHRocmV3
ICJSZWZlcmVuY2VFcnJvciIgaW5zdGVhZCBvZiBFY21hU2NyaXB0IGVycm9yIFR5cGVFcnJvci4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2NvbnN0cnVjdG9y
IG9wdGlvbnNdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2Rl
KCwgeyJmZWVkYmFjayI6WzEsMC41XX0pIHRocmV3IFR5cGVFcnJvcjogIk1lbWJlciBJSVJGaWx0
ZXJPcHRpb25zLmZlZWRmb3J3YXJkIGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGFuIGluc3RhbmNl
IG9mIHNlcXVlbmNlIi4gCitQQVNTICAgbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHsiZmVl
ZGZvcndhcmQiOlsxLDAuNV19KSB0aHJldyBUeXBlRXJyb3I6ICJNZW1iZXIgSUlSRmlsdGVyT3B0
aW9ucy5mZWVkYmFjayBpcyByZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBzZXF1
ZW5jZSIuIAorUEFTUyA8IFtjb25zdHJ1Y3RvciBvcHRpb25zXSBBbGwgYXNzZXJ0aW9ucyBwYXNz
ZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFtmdW5jdGlvbmFsaXR5XSAgCi1GQUlM
ICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDMgb3V0IG9mIDYgdGFza3Mgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCBv
ZiBmaWx0ZXIgdXNpbmcgbmV3IElJUkZpbHRlciguLi4pIGlzIGlkZW50aWNhbCB0byB0aGUgYXJy
YXkgWzAsMC4wNTc1NjQwMzUwNTgwMjE1NDUsMC4xNDM3MTkxOTYzMTk1ODAwOCwwLjIxNTAwNjYz
NDU5MzAwOTk1LDAuMjkyNzc2NTg0NjI1MjQ0MTQsMC4zNjU5Nzc3OTM5MzE5NjEwNiwwLjQzOTc2
NDIzMTQ0MzQwNTE1LDAuNTExMTkyNzM5MDA5ODU3MiwwLjU4MTM3NTU5ODkwNzQ3MDcsMC42NDk0
MDU4MzcwNTkwMjEsMC43MTUzOTQ0OTY5MTc3MjQ2LDAuNzc4OTU0NTY1NTI1MDU0OSwwLjgzOTk1
OTUwMjIyMDE1MzgsMC44OTgxNjQ2ODk1NDA4NjMsMC45NTMzOTg0MDY1MDU1ODQ3LDEuMDA1NDY2
Njk5NjAwMjE5Ny4uLl0uIAorUEFTUyA8IFtmdW5jdGlvbmFsaXR5XSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJ
TklTSEVEOiA2IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNp
Yy1leHBlY3RlZC50eHQKaW5kZXggNDUzNGM4M2ZkNDVmOGQwY2UyMjY0NjZhZDcxY2YyNjJlOWNm
NTQ1Mi4uNWI5Mzc0Yjk5ZDIwNGQ2NGNmODdhNjE5OTM5Y2MzZTg2YmIxNjMxZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2Uv
aWlyZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dApAQCAtMiwzMyArMiw0NCBAQAogUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgImluaXRpYWxpemUiIAog
UEFTUyBFeGVjdXRpbmcgImV4aXN0ZW5jZSIgCi1GQUlMIEV4ZWN1dGluZyAicGFyYW1ldGVycyIg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlcihjb2VmLCBjb2VmKScsICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKSIKK1BBU1MgRXhlY3V0aW5nICJwYXJhbWV0ZXJzIiAKIFBBU1Mg
RXhlY3V0aW5nICJleGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlciIgCi1GQUlMIEV4ZWN1dGluZyAi
ZXhjZXB0aW9ucy1nZXRGcmVxdWVuY3lEYXRhIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmls
dGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGNvZWYs
IGNvZWYpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgorUEFTUyBF
eGVjdXRpbmcgImV4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YSIgCiBQQVNTIEF1ZGl0IHJlcG9y
dCAKIFBBU1MgPiBbaW5pdGlhbGl6ZV0gIAogUEFTUyAgIEluaXRpYWxpemUgY29udGV4dCBmb3Ig
dGVzdGluZyBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTIDwgW2luaXRpYWxpemVd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4
aXN0ZW5jZV0gIAotRkFJTCBYIGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGRvZXMgbm90IGV4aXN0
LiBHb3QgdW5kZWZpbmVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgPCBbZXhpc3RlbmNlXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbnRleHQuY3JlYXRlSUlS
RmlsdGVyIGRvZXMgZXhpc3QuIAorUEFTUyA8IFtleGlzdGVuY2VdIEFsbCBhc3NlcnRpb25zIHBh
c3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3BhcmFtZXRlcnNdICAKK1BBU1Mg
ICBudW1iZXJPZklucHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBudW1iZXJPZk91dHB1dHMg
aXMgZXF1YWwgdG8gMS4gCitQQVNTICAgY2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBtYXgu
IAorUEFTUyAgIGNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQ
QVNTIDwgW3BhcmFtZXRlcnNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDQgYXNzZXJ0
aW9ucykgCiBQQVNTID4gW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVyXSAgCi1QQVNTICAgY3Jl
YXRlSUlSRmlsdGVyKCkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoKScsICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAgIGNyZWF0ZUlJUkZp
bHRlcihuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
cihuZXcgRmxvYXQzMkFycmF5KDEpKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5k
ZWZpbmVkKSIuIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihudWxsLCBudWxsKSB0aHJldyBUeXBl
RXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlcihudWxsLCBudWxsKScsICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKSIuIAotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbXSwgW10pIHRo
cmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFtd
KSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoW10s
IFsxXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVy
KG5ldyBGbG9hdDMyQXJyYXkoMjApLCBuZXcgRmxvYXQzMkFycmF5KDIwKSkgaW5jb3JyZWN0bHkg
dGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoZmIsIGZiKScsICdjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIxKSwgWzFd
KSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoWzFd
LCBuZXcgRmxvYXQzMkFycmF5KDIxKSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RT
dXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlM
IFggY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyKSkgdGhyZXcgIlR5cGVF
cnJvciIgaW5zdGVhZCBvZiBJbnZhbGlkU3RhdGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXko
MTApLCBbMV0pIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgSW52YWxpZFN0YXRlRXJyb3Iu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotUEFTUyAgIGNyZWF0ZUlJUkZp
bHRlcihbMV0sIFsxLCBOYU4sIEluZmluaXR5XSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIoWzFdLCBbMSwgSW5maW5pdHksIE5hTl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
JyBpcyB1bmRlZmluZWQpIi4gCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCBOYU4sIEluZmlu
aXR5XSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMSwgSW5maW5pdHks
IE5hTl0sIFsxXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAK
LVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzEsICdhYmMnLCBbXV0sIFsxXSkgdGhyZXcgVHlwZUVy
cm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzEsICdhYmMnLCBbXV0sIFsxXSknLCAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLUZBSUwgPCBbZXhjZXB0aW9ucy1jcmVhdGVJ
SVJGaWx0ZXJdIDggb3V0IG9mIDE0IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcigpIHRocmV3
IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgY3JlYXRlSUlSRmls
dGVyKG5ldyBGbG9hdDMyQXJyYXkoMSkpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJn
dW1lbnRzIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG51bGwsIG51bGwpIHRocmV3IFR5cGVF
cnJvcjogIlZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVy
KFtdLCBbXSkgdGhyZXcgTm90U3VwcG9ydGVkRXJyb3I6ICJmZWVkZm9yd2FyZCBhcnJheSBtdXN0
IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRl
cihbMV0sIFtdKSB0aHJldyBOb3RTdXBwb3J0ZWRFcnJvcjogImZlZWRiYWNrIGFycmF5IG11c3Qg
aGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVy
KFtdLCBbMV0pIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVz
dCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0
ZXIobmV3IEZsb2F0MzJBcnJheSgyMCksIG5ldyBGbG9hdDMyQXJyYXkoMjApKSBkaWQgbm90IHRo
cm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJy
YXkoMjEpLCBbMV0pIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkg
bXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJG
aWx0ZXIoWzFdLCBuZXcgRmxvYXQzMkFycmF5KDIxKSkgdGhyZXcgTm90U3VwcG9ydGVkRXJyb3I6
ICJmZWVkYmFjayBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCIuIAor
UEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIG5ldyBGbG9hdDMyQXJyYXkoMikpIHRocmV3IElu
dmFsaWRTdGF0ZUVycm9yOiAiZmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJl
IHplcm8iLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxMCksIFsx
XSkgdGhyZXcgSW52YWxpZFN0YXRlRXJyb3I6ICJmZWVkZm9yd2FyZCBhcnJheSBtdXN0IGNvbnRh
aW4gYSBub24temVybyB2YWx1ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCBO
YU4sIEluZmluaXR5XSkgdGhyZXcgVHlwZUVycm9yOiAiVGhlIHByb3ZpZGVkIHZhbHVlIGlzIG5v
bi1maW5pdGUiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzEsIE5hTiwgSW5maW5pdHldLCBb
MV0pIHRocmV3IFR5cGVFcnJvcjogIlRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4g
CitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCAnYWJjJywgW11dLCBbMV0pIHRocmV3IFR5cGVF
cnJvcjogIlRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNTIDwgW2V4Y2Vw
dGlvbnMtY3JlYXRlSUlSRmlsdGVyXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxNCBh
c3NlcnRpb25zKSAKIFBBU1MgPiBbZXhjZXB0aW9ucy1nZXRGcmVxdWVuY3lEYXRhXSAgCi1GQUlM
ICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDIgb3V0IG9mIDUgdGFza3Mgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGdldEZyZXF1
ZW5jeVJlc3BvbnNlKG51bGwsIG5ldyBGbG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXko
MSkpIHRocmV3IFR5cGVFcnJvcjogIkFyZ3VtZW50IDEgKCdmcmVxdWVuY3lIeicpIHRvIElJUkZp
bHRlck5vZGUuZ2V0RnJlcXVlbmN5UmVzcG9uc2UgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBGbG9h
dDMyQXJyYXkiLiAKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShuZXcgRmxvYXQzMkFycmF5
KDEpLCBudWxsLCBuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJBcmd1bWVu
dCAyICgnbWFnUmVzcG9uc2UnKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNl
IG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVl
bmN5UmVzcG9uc2UobmV3IEZsb2F0MzJBcnJheSgxKSwgbmV3IEZsb2F0MzJBcnJheSgxKSwgbnVs
bCkgdGhyZXcgVHlwZUVycm9yOiAiQXJndW1lbnQgMyAoJ3BoYXNlUmVzcG9uc2UnKSB0byBJSVJG
aWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmxv
YXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2UobmV3IEZsb2F0MzJBcnJh
eSgxMCksIG5ldyBGbG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXkoMjApKSB0aHJldyBJ
bnZhbGlkQWNjZXNzRXJyb3I6ICJBcnJheXMgbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCIuIAor
UEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBuZXcgRmxv
YXQzMkFycmF5KDIwKSwgbmV3IEZsb2F0MzJBcnJheSgxKSkgdGhyZXcgSW52YWxpZEFjY2Vzc0Vy
cm9yOiAiQXJyYXlzIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGgiLiAKK1BBU1MgPCBbZXhjZXB0
aW9ucy1nZXRGcmVxdWVuY3lEYXRhXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA1IGFz
c2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA1IHRhc2tzIHJh
biBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5v
ZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZp
bHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQKaW5kZXggZGViZGI3ZTJl
ZTQ1OGI5YzIxNTlkZTY4N2ZlYTA5YWY3MzJjYzM3Zi4uYmVmYjNiYTVhMWJiMzliMjgxNjU4MzU2
OTJjYWEyYjk3NThhNWMxMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2Rl
LWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWly
ZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWV4cGVjdGVkLnR4dApAQCAtMSw0MSArMSw3
MCBAQAogCiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCi1GQUlMIEV4ZWN1dGlu
ZyAiY29lZmZpY2llbnQtbm9ybWFsaXphdGlvbiIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBUeXBlIGVycm9yIgotRkFJTCBF
eGVjdXRpbmcgIm9uZS16ZXJvIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFswLjUsIDAuNV0sIFsx
XSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1
dGluZyAib25lLXBvbGUiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgY10pJywgJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjA6
IGxvd3Bhc3MiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIw
LCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICIxOiBoaWdocGFz
cyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYu
YjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlS
RmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjI6IGJhbmRwYXNzIiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29l
Zi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIn
IGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiMzogbm90Y2giIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEs
IGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZp
bmVkKSIKLUZBSUwgRXhlY3V0aW5nICI0OiBhbGxwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRl
SUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
KAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmEx
LCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1G
QUlMIEV4ZWN1dGluZyAiNTogbG93c2hlbGYiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVj
dGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAg
ICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYu
YTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhl
Y3V0aW5nICI2OiBoaWdoc2hlbGYiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAg
ICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScs
ICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5n
ICI3OiBwZWFraW5nIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29l
Zi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAibXVsdGkt
Y2hhbm5lbCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihmZiwgZmIpJywgJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjR0aC1vcmRlci1paXIi
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoY2FzY2FkZS5mZiwgY2FzY2FkZS5mYiknLCAnY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCitQQVNTIEV4ZWN1dGluZyAiY29lZmZp
Y2llbnQtbm9ybWFsaXphdGlvbiIgCitQQVNTIEV4ZWN1dGluZyAib25lLXplcm8iIAorUEFTUyBF
eGVjdXRpbmcgIm9uZS1wb2xlIiAKK1BBU1MgRXhlY3V0aW5nICIwOiBsb3dwYXNzIiAKK1BBU1Mg
RXhlY3V0aW5nICIxOiBoaWdocGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiMjogYmFuZHBhc3MiIAor
UEFTUyBFeGVjdXRpbmcgIjM6IG5vdGNoIiAKK1BBU1MgRXhlY3V0aW5nICI0OiBhbGxwYXNzIiAK
K1BBU1MgRXhlY3V0aW5nICI1OiBsb3dzaGVsZiIgCitQQVNTIEV4ZWN1dGluZyAiNjogaGlnaHNo
ZWxmIiAKK1BBU1MgRXhlY3V0aW5nICI3OiBwZWFraW5nIiAKK1BBU1MgRXhlY3V0aW5nICJtdWx0
aS1jaGFubmVsIiAKK1BBU1MgRXhlY3V0aW5nICI0dGgtb3JkZXItaWlyIiAKIFBBU1MgQXVkaXQg
cmVwb3J0IAogUEFTUyA+IFtjb2VmZmljaWVudC1ub3JtYWxpemF0aW9uXSAgCi1GQUlMIFggY3Jl
YXRlSUlSRmlsdGVyIHdpdGggbm9ybWFsaXplZCBjb2VmZmljaWVudHMgaW5jb3JyZWN0bHkgdGhy
ZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoZmYsIGZiMSknLCAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIgd2l0aCB1bm5vcm1hbGl6ZWQgY29lZmZpY2ll
bnRzIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVy
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGZmLCBmYjIp
JywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyIHdpdGggbm9y
bWFsaXplZCBjb2VmZmljaWVudHMgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAg
IGNyZWF0ZUlJUkZpbHRlciB3aXRoIHVubm9ybWFsaXplZCBjb2VmZmljaWVudHMgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIE91dHB1dCBvZiBJSVIgZmlsdGVyIHdpdGggdW5u
b3JtYWxpemVkIGNvZWZmaWNpZW50cyBlcXVhbHMgWzEsLTAuODk5OTk5OTc2MTU4MTQyMSwwLjgx
MDAwMDAwMjM4NDE4NTgsLTAuNzI4OTk5OTcyMzQzNDQ0OCwwLjY1NjA5OTk3NTEwOTEwMDMsLTAu
NTkwNDg5OTgzNTU4NjU0OCwwLjUzMTQ0MDk3MzI4MTg2MDQsLTAuNDc4Mjk2OTA1NzU1OTk2Nyww
LjQzMDQ2NzIxODE2MDYyOTMsLTAuMzg3NDIwNDc1NDgyOTQwNywwLjM0ODY3ODQzOTg1NTU3NTU2
LC0wLjMxMzgxMDU4NjkyOTMyMTMsMC4yODI0Mjk1NDYxMTc3ODI2LC0wLjI1NDE4NjU3MDY0NDM3
ODY2LDAuMjI4NzY3OTMxNDYxMzM0MjMsLTAuMjA1ODkxMTMyMzU0NzM2MzMuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoyLjE5NThlLTM4
LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFtjb2VmZmljaWVudC1ub3JtYWxpemF0
aW9uXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+
IFtvbmUtemVyb10gIAorUEFTUyAgIElJUiAxLXplcm8gb3V0cHV0IGVxdWFscyBbMC41LDAuNSww
LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVy
YW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAor
UEFTUyA8IFtvbmUtemVyb10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRp
b25zKSAKIFBBU1MgPiBbb25lLXBvbGVdICAKK1BBU1MgICBJSVIgMS1wb2xlIG91dHB1dCBlcXVh
bHMgWzEsLTAuOSwwLjgxLC0wLjcyOTAwMDAwMDAwMDAwMDEsMC42NTYxMDAwMDAwMDAwMDAxLC0w
LjU5MDQ5MDAwMDAwMDAwMDIsMC41MzE0NDEwMDAwMDAwMDAyLC0wLjQ3ODI5NjkwMDAwMDAwMDE0
LDAuNDMwNDY3MjEwMDAwMDAwMTYsLTAuMzg3NDIwNDg5MDAwMDAwMTUsMC4zNDg2Nzg0NDAxMDAw
MDAxNSwtMC4zMTM4MTA1OTYwOTAwMDAxNywwLjI4MjQyOTUzNjQ4MTAwMDE3LC0wLjI1NDE4NjU4
MjgzMjkwMDEzLDAuMjI4NzY3OTI0NTQ5NjEwMTIsLTAuMjA1ODkxMTMyMDk0NjQ5MS4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjIuNzY1
N2UtOCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbb25lLXBvbGVdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzA6IGxvd3Bhc3Nd
ICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBsb3dwYXNzIGVxdWFscyBbMC4wMDIwNjc2
MjI0OTU4MTUxNTgsMC4wMTAyNjIwMzg1NTg3MjE1NDIsMC4wMjY0MDgzNDQ1MDcyMTc0MDcsMC4w
NTAxNDYxOTYwMzc1MzA5LDAuMDgxMDYyNzM0MTI3MDQ0NjgsMC4xMTg2OTc1MTY2MjAxNTkxNSww
LjE2MjU0NzY0Nzk1MzAzMzQ1LDAuMjEyMDczMjA2OTAxNTUwMywwLjI2NjcwMjY4MTc3OTg2MTQ1
LDAuMzI1ODM4NzQ0NjQwMzUwMzQsMC4zODg4NjM3MTI1NDkyMDk2LDAuNDU1MTQ1NDE4NjQzOTUx
NCwwLjUyNDA0Mjg0NDc3MjMzODksMC41OTQ5MTE0NTYxMDgwOTMzLDAuNjY3MTA5MDcyMjA4NDA0
NSwwLjc0MDAwMDU0NTk3ODU0NjEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwNDk4MzR9
LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGxvd3Bhc3MgaXMgZ3JlYXRl
ciB0aGFuIG9yIGVxdWFsIHRvIDkxLjIyMS4gCitQQVNTIDwgWzA6IGxvd3Bhc3NdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzE6IGhpZ2hwYXNz
XSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgaGlnaHBhc3MgZXF1YWxzIFswLjk4MzY3
MTAwOTU0MDU1NzksMC45NDc0Nzg2NTIwMDA0MjcyLDAuOTA0NDgyNDI0MjU5MTg1OCwwLjg1NTIz
MjExOTU2MDI0MTcsMC44MDAzMTMyOTM5MzM4Njg0LDAuNzQwMzQxOTYxMzgzODE5NiwwLjY3NTk1
ODIxNjE5MDMzODEsMC42MDc4MjAzMzIwNTAzMjM1LDAuNTM2NTk4OTIwODIyMTQzNiwwLjQ2Mjk3
MTAzMTY2NTgwMiwwLjM4NzYxNDIyMDM4MDc4MzEsMC4zMTEyMDEwMDYxNzQwODc1LDAuMjM0Mzkz
NTM3MDQ0NTI1MTUsMC4xNTc4MzgyNzAwNjgxNjg2NCwwLjA4MjE2MTE2NTc3Mzg2ODU2LDAuMDA3
OTYzMDU2Njc2MDg5NzY0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDI5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwM30u
IAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgaGlnaHBhc3MgaXMgZ3JlYXRl
ciB0aGFuIG9yIGVxdWFsIHRvIDEwNS40NTkuIAorUEFTUyA8IFsxOiBoaWdocGFzc10gQWxsIGFz
c2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbMjogYmFuZHBh
c3NdICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBiYW5kcGFzcyBlcXVhbHMgWzAuMDA0
NTU0MjQ0Njg5NjQzMzgzLDAuMDEzNTgzMjE1ODg0ODY0MzMsMC4wMjI0MTY1MDAzNzQ2NzQ3OTcs
MC4wMzA5ODIxMDUwNjE0MTE4NTgsMC4wMzkyMTA5MzA0NjY2NTE5MTcsMC4wNDcwMzczMTQ2MjM1
OTQyODQsMC4wNTQzOTk1NjExMzY5NjA5OCwwLjA2MTI0MDQwODU2OTU3NDM1NiwwLjA2NzUwNzQ2
ODE2Mzk2NzEzLDAuMDczMTUzNjI5ODk5MDI0OTYsMC4wNzgxMzczODI4NjQ5NTIwOSwwLjA4MjQy
MzE1MDUzOTM5ODIsMC4wODU5ODE0ODA3NzcyNjM2NCwwLjA4ODc4OTI5OTEzMDQzOTc2LDAuMDkw
ODI5OTY4NDUyNDUzNjEsMC4wOTIwOTM0NTI4MTEyNDExNS4uLl0gd2l0aCBhbiBlbGVtZW50LXdp
c2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjJlLTcsInJlbGF0aXZlVGhyZXNo
b2xkIjowLjAwMDg3fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBiYW5k
cGFzcyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTA0LjA2LiAKK1BBU1MgPCBbMjogYmFu
ZHBhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gWzM6IG5vdGNoXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbm90Y2ggZXF1YWxz
IFswLjk5NTQ0NTcyODMwMjAwMiwwLjk4NjQxNjc1NzEwNjc4MSwwLjk3NzU4MzUyNzU2NTAwMjQs
MC45NjkwMTc5MjI4NzgyNjU0LDAuOTYwNzg5MDg0NDM0NTA5MywwLjk1Mjk2MjY5NjU1MjI3NjYs
MC45NDU2MDA0NTAwMzg5MDk5LDAuOTM4NzU5NTY1MzUzMzkzNiwwLjkzMjQ5MjU1NDE4Nzc3NDcs
MC45MjY4NDYzODUwMDIxMzYyLDAuOTIxODYyNjAyMjMzODg2NywwLjkxNzU3Njg0OTQ2MDYwMTgs
MC45MTQwMTg1MTE3NzIxNTU4LDAuOTExMjEwNzE1NzcwNzIxNCwwLjkwOTE3MDAzMTU0NzU0NjQs
MC45MDc5MDY1MzIyODc1OTc3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDQyMn0uIAor
UEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgbm90Y2ggaXMgZ3JlYXRlciB0aGFu
IG9yIGVxdWFsIHRvIDkxLjMxMi4gCitQQVNTIDwgWzM6IG5vdGNoXSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFs0OiBhbGxwYXNzXSAgCitQQVNT
ICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgYWxscGFzcyBlcXVhbHMgWzAuOTkwODkxNTE2MjA4NjQ4
NywwLjk3MjgzMzU3MzgxODIwNjgsMC45NTUxNjY5OTU1MjUzNjAxLDAuOTM4MDM1Nzg2MTUxODg2
LDAuOTIxNTc4MTY4ODY5MDE4NiwwLjkwNTkyNTM5MzEwNDU1MzIsMC44OTEyMDA5MDAwNzc4MTk4
LDAuODc3NTE5MTkwMzExNDMxOSwwLjg2NDk4NTA0ODc3MDkwNDUsMC44NTM2OTI3NzAwMDQyNzI1
LDAuODQzNzI1MjA0NDY3NzczNCwwLjgzNTE1MzY5ODkyMTIwMzYsMC44MjgwMzcwMjM1NDQzMTE1
LDAuODIyNDIxNDMxNTQxNDQyOSwwLjgxODM0MDA2MzA5NTA5MjgsMC44MTU4MTMxMjQxNzk4NDAx
Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9s
ZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDQzMX0uIAorUEFTUyAgIFNOUiBmb3IgSUlS
RklsdGVyIGZvciBCaXF1YWQgYWxscGFzcyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gOTEu
MzE5LiAKK1BBU1MgPCBbNDogYWxscGFzc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwg
MiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNTogbG93c2hlbGZdICAKK1BBU1MgICBJSVJGaWx0ZXIg
Zm9yIEJpcXVhZCBsb3dzaGVsZiBlcXVhbHMgWzEuMDM4NDgwMjgxODI5ODM0LDEuMTE2NTcyMjYw
ODU2NjI4NCwxLjE5NjY0NDA2Nzc2NDI4MjIsMS4yNzgxNTE1MTIxNDU5OTYsMS4zNjA1OTQ2MzAy
NDEzOTQsMS40NDM1MTU0MTk5NjAwMjIsMS41MjY0OTYxNzE5NTEyOTQsMS42MDkxNTc2ODE0NjUx
NDksMS42OTExNTcxMDI1ODQ4Mzg5LDEuNzcyMTg2NjM2OTI0NzQzNywxLjg1MTk3MDkxMTAyNjAw
MSwxLjkzMDI2NjI2MTEwMDc2OSwyLjAwNjg1Nzg3MjAwOTI3NzMsMi4wODE1NTg0NjU5NTc2NDE2
LDIuMTU0MjA2OTkxMTk1Njc4NywyLjIyNDY2NjExODYyMTgyNi4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNo
b2xkIjowLjAwMDAyOTh9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGxv
d3NoZWxmIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MC42MDkuIAorUEFTUyA8IFs1OiBs
b3dzaGVsZl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbNjogaGlnaHNoZWxmXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgaGlnaHNo
ZWxmIGVxdWFscyBbMy4wNDUxMDE0MDQxOTAwNjM1LDIuODE2MTE0NjY0MDc3NzU5LDIuNTk4NTQy
NDUxODU4NTIwNSwyLjM5MzU1Nzc4Njk0MTUyODMsMi4yMDE5NzUzNDU2MTE1NzIzLDIuMDI0Mjk2
OTk4OTc3NjYxLDEuODYwNzUzNzc0NjQyOTQ0MywxLjcxMTM0NjYyNjI4MTczODMsMS41NzU4ODIz
MTU2MzU2ODEyLDEuNDU0MDA3MDI5NTMzMzg2MiwxLjM0NTIzNjg5NzQ2ODU2NywxLjI0ODk4NDgx
MzY5MDE4NTUsMS4xNjQ1ODUzNTE5NDM5Njk3LDEuMDkxMzE1NzQ2MzA3MzczLDEuMDI4NDE1Njc5
OTMxNjQwNiwwLjk3NTEwMjk2MTA2MzM4NS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAx
MjR9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGhpZ2hzaGVsZiBpcyBn
cmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTAzLjE1OS4gCitQQVNTIDwgWzY6IGhpZ2hzaGVsZl0g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNzog
cGVha2luZ10gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIHBlYWtpbmcgZXF1YWxzIFsx
LjAwNTU0ODcxNTU5MTQzMDcsMS4wMTY1NzEyODMzNDA0NTQsMS4wMjczOTg1ODYyNzMxOTM0LDEu
MDM3OTQxMDk4MjEzMTk1OCwxLjA0ODExMTkxNTU4ODM3OSwxLjA1NzgyNzk0OTUyMzkyNTgsMS4w
NjcwMTAxNjQyNjA4NjQzLDEuMDc1NTg0NDExNjIxMDkzOCwxLjA4MzQ4MjE0NjI2MzEyMjYsMS4w
OTA2NDA3ODMzMDk5MzY1LDEuMDk3MDA0MDU1OTc2ODY3NywxLjEwMjUyMjk2OTI0NTkxMDYsMS4x
MDcxNTU0NDIyMzc4NTQsMS4xMTA4Njc1MDAzMDUxNzU4LDEuMTEzNjMyNjc4OTg1NTk1NywxLjEx
NTQzMjczOTI1NzgxMjUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwNTA1fS4gCitQQVNT
ICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBwZWFraW5nIGlzIGdyZWF0ZXIgdGhhbiBv
ciBlcXVhbCB0byA5MS41MDQuIAorUEFTUyA8IFs3OiBwZWFraW5nXSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFttdWx0aS1jaGFubmVsXSAgCitQ
QVNTICAgTWF4IGRpZmZlcmVuY2UgYmV0d2VlbiBJSVIgYW5kIEJpcXVhZCBvbiBjaGFubmVsIDAg
aXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDAuMDAwMDM3NjcxLiAKK1BBU1MgICBNYXggZGlmZmVy
ZW5jZSBiZXR3ZWVuIElJUiBhbmQgQmlxdWFkIG9uIGNoYW5uZWwgMSBpcyBsZXNzIHRoYW4gb3Ig
ZXF1YWwgdG8gMC4wMDAwMzAwNzEuIAorUEFTUyAgIE1heCBkaWZmZXJlbmNlIGJldHdlZW4gSUlS
IGFuZCBCaXF1YWQgb24gY2hhbm5lbCAyIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAwLjAwMDAy
NjI0MS4gCitQQVNTIDwgW211bHRpLWNoYW5uZWxdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsIDMgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzR0aC1vcmRlci1paXJdICAKLUZBSUwgIyBBVURJ
VCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMTMgdGFza3Mgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIDQtdGggb3JkZXIgSUlS
RmlsdGVyIChiaXF1YWQgcmVmKSBlcXVhbHMgWzAuMDAwMDA0MTgxNzE5MzA1MDUxOTU2LDAuMDAw
MDMyOTY1Nzk1OTgwOTk5MjQ2LDAuMDAwMTI5Mzk3NjgyMDMwNjg1MjUsMC4wMDAzNDc3MzY1ODI2
MjU2NTczLDAuMDAwNzM4NzI3Mjc4MDc2MTEyMywwLjAwMTM0NDY4OTc1MDExMjU5MzIsMC4wMDIx
OTkzNzYyMzQ3ODQ3MjIzLDAuMDAzMzI3OTU1OTU3NTAyMTI2NywwLjAwNDc0NzExNjkzODIzMzM3
NTUsMC4wMDY0NjUyODE4MjU1MTI2NDgsMC4wMDg0ODI5MjI3OTk4ODUyNzMsMC4wMTA3OTI5NzA2
NTczNDg2MzMsMC4wMTMzODEzMDMyODgwNDI1NDUsMC4wMTYyMjczMTIzODYwMzU5MiwwLjAxOTMw
NDUxOTUxOTIwOTg2MiwwLjAyMjU4MTI1MTMzODEyNDI3NS4uLl0gd2l0aCBhbiBlbGVtZW50LXdp
c2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNTllLTcsInJlbGF0aXZlVGhy
ZXNob2xkIjowLjAwMDAyMTF9LiAKK1BBU1MgICBTTlIgb2YgNC10aCBvcmRlciBJSVJGaWx0ZXIg
KGJpcXVhZCByZWYpIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMDguOTQ3LiAKK1BBU1Mg
PCBbNHRoLW9yZGVyLWlpcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRp
b25zKSAKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMTMgdGFza3MgcmFuIHN1
Y2Nlc3NmdWxseS4gCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1p
bnRlcmZhY2UvaWlyZmlsdGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWdldEZyZXF1ZW5j
eVJlc3BvbnNlLWV4cGVjdGVkLnR4dAppbmRleCBjMWMxNmI0NTZiNzQzZWM2N2RiZDZhZDBkY2Iy
NDNkNzdlNGFlMmNhLi44M2M0ZDg0YjU1OTM1ZWEyNmM4MzkxMTRiZWM5Y2YxMGE2M2U2NWUxIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRl
ci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1p
aXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVzcG9uc2UtZXhw
ZWN0ZWQudHh0CkBAIC0xLDEyICsxLDIyIEBACiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBT
VEFSVEVELiAKLUZBSUwgRXhlY3V0aW5nICIxLXBvbGUgSUlSIiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyKFsxXSwgWzEsIC0wLjldKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZp
bmVkKSIKLUZBSUwgRXhlY3V0aW5nICJjb21wYXJlIElJUiBhbmQgYmlxdWFkIiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNv
bnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBb
MSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRl
ZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgImdldEZyZXF1ZW5jeVJlc3BvbnNlIiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJv
cjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKK1BBU1MgRXhlY3V0aW5nICIx
LXBvbGUgSUlSIiAKK1BBU1MgRXhlY3V0aW5nICJjb21wYXJlIElJUiBhbmQgYmlxdWFkIiAKK1BB
U1MgRXhlY3V0aW5nICJnZXRGcmVxdWVuY3lSZXNwb25zZSIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAK
IFBBU1MgPiBbMS1wb2xlIElJUl0gIAorUEFTUyAgIDEtcG9sZSBJSVIgTWFnbml0dWRlIFJlc3Bv
bnNlIGVxdWFscyBbMTAsOS45OTU1NjE1OTk3MzE0NDUsOS45ODIyODE2ODQ4NzU0ODgsOS45NjAy
NjYxMTMyODEyNSw5LjkyOTY4ODQ1MzY3NDMxNiw5Ljg5MDc4NTIxNzI4NTE1Niw5Ljg0Mzg1MjA0
MzE1MTg1NSw5Ljc4OTIzODkyOTc0ODUzNSw5LjcyNzM0MTY1MTkxNjUwNCw5LjY1ODU5MjIyNDEy
MTA5NCw5LjU4MzQ1NTA4NTc1NDM5NSw5LjUwMjQxODUxODA2NjQwNiw5LjQxNTk4MzIwMDA3MzI0
Miw5LjMyNDY1OTM0NzUzNDE4LDkuMjI4OTU4MTI5ODgyODEyLDkuMTI5Mzg0MDQwODMyNTIuLi5d
IHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjow
LjAwMDAwMjg2MTEsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgMS1wb2xlIElJUiBQ
aGFzZSBSZXNwb25zZSBlcXVhbHMgWzAsLTAuMDI4MjY1NTAyMzAzODM4NzMsLTAuMDU2NDc4MTI0
MTExODkwNzksLTAuMDg0NTg1NTQ3NDQ3MjA0NTksLTAuMTEyNTM2NTU3MDE4NzU2ODcsLTAuMTQw
MjgxNTcyOTM3OTY1NCwtMC4xNjc3NzMwOTc3NTM1MjQ3OCwtMC4xOTQ5NjYxNjcyMTE1MzI2LC0w
LjIyMTgxODY4NTUzMTYxNjIsLTAuMjQ4MjkxNzc1NTg0MjIwOSwtMC4yNzQzNDk5NTc3MDQ1NDQw
NywtMC4yOTk5NjEyMzkwOTk1MDI1NiwtMC4zMjUwOTc0NDE2NzMyNzg4LC0wLjM0OTczMzg4OTEw
MjkzNTgsLTAuMzczODQ5NzE5NzYyODAyMSwtMC4zOTc0Mjc0Njk0OTE5NTg2Li4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MS43ODgyZS03
LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFsxLXBvbGUgSUlSXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFtjb21wYXJlIElJUiBh
bmQgYmlxdWFkXSAgCitQQVNTICAgSUlSIE1hZ25pdHVkZSBSZXNwb25zZSBlcXVhbHMgWzEsMS4w
MDI4MzQ1NTg0ODY5Mzg1LDEuMDExMzQ3ODg5OTAwMjA3NSwxLjAyNTU1NDg5NTQwMTAwMSwxLjA0
NTQyODI3NjA2MjAxMTcsMS4wNzA4MDUzMTEyMDMwMDMsMS4xMDEyMjU0OTUzMzg0NCwxLjEzNTY3
MTk3MzIyODQ1NDYsMS4xNzIxOTUwNzY5NDI0NDM4LDEuMjA3NDU0MzIzNzY4NjE1NywxLjIzNjM1
NjM3NzYwMTYyMzUsMS4yNTIyMDk3ODI2MDA0MDI4LDEuMjQ3OTYyMjM2NDA0NDE5LDEuMjE4NjQ0
NjE4OTg4MDM3LDEuMTYzOTA1ODU4OTkzNTMwMywxLjA4ODY2NDg4OTMzNTYzMjMuLi5dIHdpdGgg
YW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAy
NzQxOSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBJSVIgUGhhc2UgUmVzcG9uc2Ug
ZXF1YWxzIFswLC0wLjA2MTMxNTMyNDE1NzQ3NjQyNSwtMC4xMjM5MTEzNzMzMTcyNDE2NywtMC4x
ODkxMjIyNDQ3MTU2OTA2LC0wLjI1ODM4NjkzOTc2NDAyMjgsLTAuMzMzMjkzNzk1NTg1NjMyMywt
MC40MTU2MDcwNjQ5NjIzODcxLC0wLjUwNzI1MDI0OTM4NTgzMzcsLTAuNjEwMjAyNTUwODg4MDYx
NSwtMC43MjYyNDAwMzg4NzE3NjUxLC0wLjg1NjQ0OTE4NjgwMTkxMDQsLTEuMDAwNTA2MTYyNjQz
NDMyNiwtMS4xNTU5MjczMDA0NTMxODYsLTEuMzE3NzgwOTcxNTI3MDk5NiwtMS40NzkzODk1NDgz
MDE2OTY4LC0xLjYzMzk1OTc3MDIwMjYzNjcuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVy
YW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzY1NywicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LiAKK1BBU1MgPCBbY29tcGFyZSBJSVIgYW5kIGJpcXVhZF0gQWxsIGFzc2VydGlvbnMg
cGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbZ2V0RnJlcXVlbmN5UmVzcG9u
c2VdIFRlc3Qgb3V0LW9mLWJvdW5kcyBmcmVxdWVuY3kgdmFsdWVzIAorUEFTUyAgIE1hZ25pdHVk
ZSByZXNwb25zZSBhdCBmcmVxdWVuY3kgLTEgaXMgTmFOLiAKK1BBU1MgICBNYWduaXR1ZGUgcmVz
cG9uc2UgYXQgZnJlcXVlbmN5IDI0MDAxIGlzIE5hTi4gCitQQVNTICAgUGhhc2UgcmVzcG9uc2Ug
YXQgZnJlcXVlbmN5IC0xIGlzIE5hTi4gCitQQVNTICAgUGhhc2UgcmVzcG9uc2UgYXQgZnJlcXVl
bmN5IDI0MDAxIGlzIE5hTi4gCitQQVNTIDwgW2dldEZyZXF1ZW5jeVJlc3BvbnNlXSBBbGwgYXNz
ZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyAjIEFVRElUIFRBU0sg
UlVOTkVSIEZJTklTSEVEOiAzIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9k
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rl
c3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50eHQKaW5kZXggYmY2ZGZjZjg2YWZjZmE1MWZlYWFi
MDVhZjBiZjAwZTE2OWExODgwMi4uMTJlNzE3MDIxMDJkN2NjNTNhMWQ2MjRkMjFjZjVkYTY2YTg0
MTZkYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90
ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmls
dGVybm9kZS1pbnRlcmZhY2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dApAQCAtMSwy
MiArMSwxMCBAQAogCiBQQVNTIElJUkZpbHRlck5vZGUgY29lZmZpY2llbnRzIGFyZSBjaGVja2Vk
IHByb3Blcmx5IAotRkFJTCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0
eSBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMu
Y3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVF
cnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0
ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0
eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIGZlZWRiYWNr
IGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIGVtcHR5IGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlv
biAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikK
LSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2Fj
LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRp
b24gTm90U3VwcG9ydGVkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmlu
ZWQsIGV4cGVjdGVkIDkKLUZBSUwgbW9yZSB0aGFuIDIwIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50
cyBjYW4gbm90IGJlIHVzZWQgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICJmdW5jdGlvbiAo
KSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQotICAgICAgfSIgdGhy
ZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMuY3JlYXRlSUlSRmls
dGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb3RTdXBwb3J0
ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQg
OQotRkFJTCBtb3JlIHRoYW4gMjAgZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgdXNl
ZCBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMu
Y3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVF
cnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0
ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0
eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIGF0IGxlYXN0
IG9uZSBmZWVkZm9yd2FyZCBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIGFzc2VydF90aHJv
d3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0
ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVh
dGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFy
ZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBu
b3QgYSBET01FeGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBl
cXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDExCi1GQUlMIHRoZSBmaXJzdCBmZWVkYmFjayBj
b2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAi
ZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAg
ICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNy
ZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24g
SW52YWxpZFN0YXRlRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQs
IGV4cGVjdGVkIDExCi1GQUlMIElJUkZpbHRlck5vZGUgZ2V0RnJlcXVlbmN5UmVzcG9uc2UgaGFu
ZGxlcyBpbnZhbGlkIGZyZXF1ZW5jaWVzIHByb3Blcmx5IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoWzAuNSwgMC41XSwgWzEuMF0p
JywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKQorUEFTUyBmZWVkZm9yd2FyZCBj
b2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0eSAKK1BBU1MgZmVlZGJhY2sgY29lZmZpY2llbnRz
IGNhbiBub3QgYmUgZW1wdHkgCitQQVNTIG1vcmUgdGhhbiAyMCBmZWVkZm9yd2FyZCBjb2VmZmlj
aWVudHMgY2FuIG5vdCBiZSB1c2VkIAorUEFTUyBtb3JlIHRoYW4gMjAgZmVlZGJhY2sgY29lZmZp
Y2llbnRzIGNhbiBub3QgYmUgdXNlZCAKK1BBU1MgYXQgbGVhc3Qgb25lIGZlZWRmb3J3YXJkIGNv
ZWZmaWNpZW50IG11c3QgYmUgbm9uLXplcm8gCitQQVNTIHRoZSBmaXJzdCBmZWVkYmFjayBjb2Vm
ZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGdldEZyZXF1ZW5j
eVJlc3BvbnNlIGhhbmRsZXMgaW52YWxpZCBmcmVxdWVuY2llcyBwcm9wZXJseSAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407302</attachid>
            <date>2020-08-26 09:16:13 -0700</date>
            <delta_ts>2020-08-26 09:23:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200826091612.patch</filename>
            <type>text/plain</type>
            <size>125985</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uYjk4MzkyNzc4YzZjMWZiZjJjY2MxZGRjNzVmZjYw
MjIzM2Q5MTg5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTA4LTI1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgorICAg
ICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQorCisg
ICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJpbmcp
OgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNzYXJ5
KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpC
YXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BLZXJu
ZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQS2Vy
bmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9u
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFibGUp
OgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlByb2Nl
c3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9h
dWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRlUG9s
eW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZp
bHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1ZW5j
eVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgorICAg
ICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5pdGlh
bGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRpYWxp
emF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJkNGY4YmU3NmQ1MzFkMDMyNjNjMTYwMjY0
MjYzOGU4YWYxMzNhNTkuLjI5ZjExN2ZjOWVjOWU5YWUwOTk2Y2JlMmMyNzA2YzQ4M2NjZWRkMzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00ODgsNiArNDg4LDggQEAgc2V0KFdlYkNvcmVfTk9O
X1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck9w
dGlvbnMuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICAgICBNb2R1bGVz
L3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbAorICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVy
Tm9kZS5pZGwKKyAgICBNb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMjU0MmVm
MWM1Y2FhOGQ3MGY4MTAzNzRiMmIwYzJhOWI3YTAwOTU4Mi4uMjVkYzcwYzEwMGZmZmFjNGQyZjgy
NjI5NWQyNWM1NjhiNTA4YzU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0zMzksNiArMzM5LDggQEAgJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbAogJChQUk9KRUNU
X0RJUikvTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVs
ZXMvd2ViYXVkaW8vR2Fpbk9wdGlvbnMuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVk
aW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAyNzkx
ZTRkMTk5YzM1MmMxOGY0NTI0NzEwMDAxOWE4MGFjNTE3MmE4Li5hNTYwMDM0MzNkOTU1NjE2MTMw
ODJhNDliMjMxYmYwY2YzZTkyNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtOTgyLDYgKzk4MiwxMCBAQCAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lEQlRyYW5zYWN0aW9uTW9kZS5jcHAK
ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJhbnNh
Y3Rpb25Nb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaAorJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2RlLmNwcAorJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2Rl
LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSUlSRmls
dGVyT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSUlSRmlsdGVyT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0lkbGVEZWFkbGluZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZURlYWRsaW5lLmgKICQoQlVJTFRfUFJPRFVDVFNf
RElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJhMTA3OTI1MzRiYjNmMmQ1N2U2MjIxMWQ2
MDMxNjYzN2Y2ZTY5MmQuLmUyZmI4YTkyNTU4NGYzMTAyZmRhY2I0NDdkMmU3NDNmM2ZkNTQzOWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDIwLDYgKzQyMCw4IEBAIEpTX0JJ
TkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3ND
b21wcmVzc29yT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9H
YWluTm9kZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9HYWluT3B0aW9u
cy5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmlk
bCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRs
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3Vy
Y2VOb2RlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVu
dEF1ZGlvU291cmNlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRp
by9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKaW5kZXggNDFkZDEzZGVhN2U3Y2E3NDc0
NmI2NjQ1OThkMDNkMDBkYjQxZjVhOS4uYmIyYWU5MGU0ZGIyYTcwYzU1ZDc0MDM0N2I5MGY0MGQ3
NjFhZjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Ob2Rl
LmNwcApAQCAtOTQsNyArOTQsOCBAQCBTdHJpbmcgY29udmVydEVudW1lcmF0aW9uVG9TdHJpbmco
QXVkaW9Ob2RlOjpOb2RlVHlwZSBlbnVtZXJhdGlvblZhbHVlKQogICAgIHN0YXRpY19hc3NlcnQo
c3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlQmFzaWNJbnNwZWN0b3IpID09
IDE4LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUJhc2ljSW5zcGVjdG9yIGlzIG5vdCAxOCBhcyBleHBl
Y3RlZCIpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6
Ok5vZGVUeXBlQ29uc3RhbnQpID09IDE5LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCBpcyBub3Qg
MTkgYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4o
QXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbykgPT0gMjAsICJBdWRpb05vZGU6Ok5vZGVUeXBlU3Rl
cmVvIGlzIG5vdCAyMCBhcyBleHBlY3RlZCIpOwotICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nh
c3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlRW5kKSA9PSAyMSwgIkF1ZGlvTm9kZTo6Tm9k
ZVR5cGVDb25zdGFudCBpcyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNzZXJ0
KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlcikgPT0gMjEs
ICJBdWRpb05vZGU6Ok5vZGVUeXBlSUlSRmlsdGVyIGlzIG5vdCAyMSBhcyBleHBlY3RlZCIpOwor
ICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBl
RW5kKSA9PSAyMiwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjIgYXMgZXhw
ZWN0ZWQiKTsKIAogICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9uVmFs
dWUpIDwgV1RGX0FSUkFZX0xFTkdUSCh2YWx1ZXMpKTsKICAgICAKQEAgLTU1Myw3ICs1NTQsNyBA
QCB2b2lkIEF1ZGlvTm9kZTo6ZGlzYWJsZU91dHB1dHNJZk5lY2Vzc2FyeSgpCiAgICAgICAgIC8v
IGxvbmdlciBhbnkgYWN0aXZlIGNvbm5lY3Rpb25zLgogICAgICAgICAvLyBBbHNvLCBXYXZlU2hh
cGVyTm9kZSBtYXkgcHJvZHVjZSBub24tc2lsZW5jZSBldmVuIHdoZW4gaXQgbm8gbG9uZ2VyIGhh
cyBhbnkgb3V0cHV0LiBGb3IgdGhpcyByZWFzb24sIHdlIGNhbm5vdAogICAgICAgICAvLyBkaXNh
YmxlIGl0IGVpdGhlci4KLSAgICAgICAgaWYgKG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVDb252b2x2
ZXIgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZURlbGF5ICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5
cGVXYXZlU2hhcGVyKSB7CisgICAgICAgIGlmIChub2RlVHlwZSgpICE9IE5vZGVUeXBlQ29udm9s
dmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxheSAmJiBub2RlVHlwZSgpICE9IE5vZGVU
eXBlV2F2ZVNoYXBlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlSUlSRmlsdGVyKSB7CiAgICAg
ICAgICAgICBtX2lzRGlzYWJsZWQgPSB0cnVlOwogICAgICAgICAgICAgZm9yIChhdXRvJiBvdXRw
dXQgOiBtX291dHB1dHMpCiAgICAgICAgICAgICAgICAgb3V0cHV0LT5kaXNhYmxlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAppbmRleCA3MWJjYmRjNWM2
NGNiYTE1MWE4YzdlYzU1YWFjM2Q4ZDExYWVjN2M3Li5mOTY1ZWEwNTJkZDk5OTYxN2EwMzYwYjM3
ZGI5ZmE0OWZjYjBmYzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0F1ZGlvTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVk
aW9Ob2RlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBOb2RlVHlwZUJhc2lj
SW5zcGVjdG9yLAogICAgICAgICBOb2RlVHlwZUNvbnN0YW50LAogICAgICAgICBOb2RlVHlwZVN0
ZXJlbywKKyAgICAgICAgTm9kZVR5cGVJSVJGaWx0ZXIsCiAgICAgICAgIE5vZGVUeXBlRW5kCiAg
ICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNl
QXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1
ZGlvQ29udGV4dC5jcHAKaW5kZXggODI1NDRjNmE2NGMyOWUzZDk0NTE2YTMzZjdmNzQzMWI4MWRl
ZWVlYi4uMjNlNzZkOGYxNTE0YWJlMDg1M2Y3Y2Y1MzE4N2JhY2I0ZTcxMzg2MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3Bw
CkBAIC02MCw2ICs2MCw4IEBACiAjaW5jbHVkZSAiR2VuZXJpY0V2ZW50UXVldWUuaCIKICNpbmNs
dWRlICJIUlRGRGF0YWJhc2VMb2FkZXIuaCIKICNpbmNsdWRlICJIUlRGUGFubmVyLmgiCisjaW5j
bHVkZSAiSUlSRmlsdGVyTm9kZS5oIgorI2luY2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIKICNp
bmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQu
aCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC02MzAsNiArNjMyLDE3IEBAIEV4Y2VwdGlvbk9y
PFJlZjxTdGVyZW9QYW5uZXJOb2RlPj4gQmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlU3RlcmVvUGFu
bmVyKCkKICAgICByZXR1cm4gU3RlcmVvUGFubmVyTm9kZTo6Y3JlYXRlKCp0aGlzKTsKIH0KIAor
RXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5vZGU+PiBCYXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJ
SVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
VmVjdG9yPGRvdWJsZT4mJiBmZWVkZm9yd2FyZCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkYmFjaykK
K3sKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOworCisgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKKyAgICBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnM7CisgICAgb3B0aW9ucy5mZWVk
Zm9yd2FyZCA9IFdURk1vdmUoZmVlZGZvcndhcmQpOworICAgIG9wdGlvbnMuZmVlZGJhY2sgPSBX
VEZNb3ZlKGZlZWRiYWNrKTsKKyAgICByZXR1cm4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsICp0aGlzLCBXVEZNb3ZlKG9wdGlvbnMpKTsKK30KKwogdm9pZCBC
YXNlQXVkaW9Db250ZXh0Ojpub3RpZnlOb2RlRmluaXNoZWRQcm9jZXNzaW5nKEF1ZGlvTm9kZSog
bm9kZSkKIHsKICAgICBBU1NFUlQoaXNBdWRpb1RocmVhZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggNDRjMmNlNzZl
MGRjNjU3MGI1ZmYxYTU5NDhiOTBlYmIxZGFiYjkzZi4uNjdmMzQ5MjQ5NzAxZWMwM2I2ODgwOTQx
ZjgxZjliODc1YmZjODllMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTcwLDYgKzcwLDcgQEAgY2xhc3MgRG9jdW1lbnQ7
CiBjbGFzcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlOwogY2xhc3MgR2Fpbk5vZGU7CiBjbGFzcyBI
VE1MTWVkaWFFbGVtZW50OworY2xhc3MgSUlSRmlsdGVyTm9kZTsKIGNsYXNzIE1haW5UaHJlYWRH
ZW5lcmljRXZlbnRRdWV1ZTsKIGNsYXNzIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZTsKIGNs
YXNzIE1lZGlhU3RyZWFtOwpAQCAtNzgsNiArNzksNyBAQCBjbGFzcyBNZWRpYVN0cmVhbUF1ZGlv
U291cmNlTm9kZTsKIGNsYXNzIE9zY2lsbGF0b3JOb2RlOwogY2xhc3MgUGFubmVyTm9kZTsKIGNs
YXNzIFBlcmlvZGljV2F2ZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFzcyBT
Y3JpcHRQcm9jZXNzb3JOb2RlOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTdGVyZW9Q
YW5uZXJOb2RlOwpAQCAtMTY0LDYgKzE2Niw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25PcjxS
ZWY8UGVyaW9kaWNXYXZlPj4gY3JlYXRlUGVyaW9kaWNXYXZlKFZlY3RvcjxmbG9hdD4mJiByZWFs
LCBWZWN0b3I8ZmxvYXQ+JiYgaW1hZ2luYXJ5LCBjb25zdCBQZXJpb2RpY1dhdmVDb25zdHJhaW50
cyYgPSB7IH0pOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxDb25zdGFudFNvdXJjZU5vZGU+PiBjcmVh
dGVDb25zdGFudFNvdXJjZSgpOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxTdGVyZW9QYW5uZXJOb2Rl
Pj4gY3JlYXRlU3RlcmVvUGFubmVyKCk7CisgICAgRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5v
ZGU+PiBjcmVhdGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFZlY3Rvcjxkb3Vi
bGU+JiYgZmVlZGZvcndhcmQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spOwogCiAgICAgLy8g
V2hlbiBhIHNvdXJjZSBub2RlIGhhcyBubyBtb3JlIHByb2Nlc3NpbmcgdG8gZG8gKGhhcyBmaW5p
c2hlZCBwbGF5aW5nKSwgdGhlbiBpdCB0ZWxscyB0aGUgY29udGV4dCB0byBkZXJlZmVyZW5jZSBp
dC4KICAgICB2b2lkIG5vdGlmeU5vZGVGaW5pc2hlZFByb2Nlc3NpbmcoQXVkaW9Ob2RlKik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRl
eHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmlkbAppbmRleCBjNjVjYjE5NmI3MzYxZjk3ZjBmOTljMDVmN2E5ZTEwNmIwYjQxY2FhLi4zMWYw
MWJiZWU0NzFmZDQ2ZWQwYWM1ODQ1ODU2NGVjMzVlMDI2YTljIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTY2LDYg
KzY2LDcgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIFBlcmlvZGljV2F2ZSBjcmVhdGVQZXJp
b2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+IHJlYWwsIHNlcXVlbmNlPGZsb2F0PiBpbWFnLCBvcHRp
b25hbCBQZXJpb2RpY1dhdmVPcHRpb25zIG9wdGlvbnMpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlv
bl0gQ29uc3RhbnRTb3VyY2VOb2RlIGNyZWF0ZUNvbnN0YW50U291cmNlKCk7CiAgICAgW01heVRo
cm93RXhjZXB0aW9uXSBTdGVyZW9QYW5uZXJOb2RlIGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOworICAg
IFtNYXlUaHJvd0V4Y2VwdGlvbiwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSUlS
RmlsdGVyTm9kZSBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiBmZWVkZm9yd2FyZCwg
c2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFjayk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGluZyBh
bmQgbWVyZ2luZwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gQ2hhbm5lbFNwbGl0dGVyTm9kZSBj
cmVhdGVDaGFubmVsU3BsaXR0ZXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBudW1iZXJPZk91dHB1
dHMgPSA2KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
RFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2Vy
bmVsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42MmVlZTJjYTk4NTIwMGZhOWIzNDliNTQ1MThjYjRhNjBmNjU2
NThhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9J
SVJEU1BLZXJuZWwuY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBU
aGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJEU1BL
ZXJuZWwuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitJSVJEU1BLZXJuZWw6OklJUkRTUEtl
cm5lbChJSVJQcm9jZXNzb3ImIHByb2Nlc3NvcikKKyAgICA6IEF1ZGlvRFNQS2VybmVsKCZwcm9j
ZXNzb3IpCisgICAgLCBtX2lpckZpbHRlcihwcm9jZXNzb3IuZmVlZGZvcndhcmQoKSwgcHJvY2Vz
c29yLmZlZWRiYWNrKCkpCisgICAgLCBtX3RhaWxUaW1lKG1faWlyRmlsdGVyLnRhaWxUaW1lKHBy
b2Nlc3Nvci5zYW1wbGVSYXRlKCksIHByb2Nlc3Nvci5pc0ZpbHRlclN0YWJsZSgpKSkKK3sKK30K
Kwordm9pZCBJSVJEU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxlbmd0
aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0KiBw
aGFzZVJlc3BvbnNlKQoreworICAgIEFTU0VSVChmcmVxdWVuY3lIeik7CisgICAgQVNTRVJUKG1h
Z1Jlc3BvbnNlKTsKKyAgICBBU1NFUlQocGhhc2VSZXNwb25zZSk7CisKKyAgICBWZWN0b3I8Zmxv
YXQ+IGZyZXF1ZW5jeShsZW5ndGgpOworICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlxdWlz
dCgpOworCisgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBub3JtYWxpemVk
IGZyZXF1ZW5jeSAoMCAtPiAxKSwgd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1aXN0IGZyZXF1ZW5j
eS4KKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spCisgICAgICAgIGZy
ZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKKworICAgIG1faWlyRmlsdGVy
LmdldEZyZXF1ZW5jeVJlc3BvbnNlKGxlbmd0aCwgZnJlcXVlbmN5LmRhdGEoKSwgbWFnUmVzcG9u
c2UsIHBoYXNlUmVzcG9uc2UpOworfQorCit2b2lkIElJUkRTUEtlcm5lbDo6cHJvY2Vzcyhjb25z
dCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nl
c3MpCit7CisgICAgQVNTRVJUKHNvdXJjZSk7CisgICAgQVNTRVJUKGRlc3RpbmF0aW9uKTsKKwor
ICAgIG1faWlyRmlsdGVyLnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Qcm9j
ZXNzKTsKK30KKwordm9pZCBJSVJEU1BLZXJuZWw6OnJlc2V0KCkKK3sKKyAgICBtX2lpckZpbHRl
ci5yZXNldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJEU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQ
S2VybmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY4YTQ0MmE2NzdkMDQwMzRjMDEyM2MzZjMyNjBkNWMzYzY1
OTM0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSRFNQS2VybmVsLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
LmgiCisjaW5jbHVkZSAiSUlSUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgSUlSRFNQS2VybmVsIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsIHsKK3B1Ymxp
YzoKKyAgICBleHBsaWNpdCBJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJik7CisKKyAgICAvLyBH
ZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUg
Z2l2ZW4gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBp
biByYWRpYW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3Ro
LCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBo
YXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29y
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9CisK
KyAgICAvLyBBdWRpb0RTUEtlcm5lbAorICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291
cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOwor
ICAgIGRvdWJsZSB0YWlsVGltZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdGFpbFRpbWU7IH0K
KyAgICBkb3VibGUgbGF0ZW5jeVRpbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAwOyB9CisgICAg
dm9pZCByZXNldCgpIGZpbmFsOworCisgICAgSUlSRmlsdGVyIG1faWlyRmlsdGVyOworICAgIGRv
dWJsZSBtX3RhaWxUaW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uODI5ZjE0YTFkNzc1ZmZlODMyODE5YjJlOGU4M2FlMzQ3YjQ4YTJjNwotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAK
QEAgLTAsMCArMSwxNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJGaWx0ZXJOb2RlLmgiCisKKyNp
bmNsdWRlICJJSVJGaWx0ZXIuaCIKKyNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0Lmgi
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKElJ
UkZpbHRlck5vZGUpOworCisvLyBEZXRlcm1pbmUgaWYgZmlsdGVyIGlzIHN0YWJsZSBiYXNlZCBv
biB0aGUgZmVlZGJhY2sgY29lZmZpY2llbnRzLgorLy8gV2UgY29tcHV0ZSB0aGUgcmVmbGVjdGlv
biBjb2VmZmljaWVudHMgZm9yIHRoZSBmaWx0ZXIuIElmLCBhdCBhbnkKKy8vIHBvaW50LCB0aGUg
bWFnbml0dWRlIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50IGlzIGdyZWF0ZXIgdGhhbgor
Ly8gb3IgZXF1YWwgdG8gMSwgdGhlIGZpbHRlciBpcyBkZWNsYXJlZCB1bnN0YWJsZS4KKy8vCisv
LyBMZXQgQSh6KSBiZSB0aGUgZmVlZGJhY2sgcG9seW5vbWlhbCBnaXZlbiBieQorLy8gICBBW25d
KHopID0gMSArIGFbMV0veiArIGFbMl0vel4yICsgLi4uICsgYVtuXS96Xm4KKy8vCisvLyBUaGUg
Zmlyc3QgcmVmbGVjdGlvbiBjb2VmZmljaWVudCBrW25dID0gYVtuXS4gVGhlbiwgcmVjdXJzaXZl
bHkgY29tcHV0ZQorLy8KKy8vICAgQVtuLTFdKHopID0gKEFbbl0oeikgLSBrW25dKkFbbl0oMS96
KS96Xm4pLygxLWtbbl1eMik7CisvLworLy8gc3RvcHBpbmcgYXQgQVsxXSh6KS4gSWYgYXQgYW55
IHBvaW50IHxrW25dfCA+PSAxLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlLgorc3RhdGljIGJvb2wg
aXNGaWx0ZXJTdGFibGUoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKQoreworICAgIC8v
IE1ha2UgYSBjb3B5IG9mIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMKKyAgICBWZWN0b3I8ZG91
YmxlPiBjb2VmZmljaWVudHMoZmVlZGJhY2spOworICAgIGludCBvcmRlciA9IGNvZWZmaWNpZW50
cy5zaXplKCkgLSAxOworCisgICAgLy8gSWYgbmVjZXNzYXJ5LCBub3JtYWxpemUgZmlsdGVyIGNv
ZWZmaWNpZW50cyBzbyB0aGF0IGNvbnN0YW50IHRlcm0gaXMgMS4KKyAgICBpZiAoY29lZmZpY2ll
bnRzWzBdICE9IDEpIHsKKyAgICAgICAgZm9yIChpbnQgbSA9IDE7IG0gPD0gb3JkZXI7ICsrbSkK
KyAgICAgICAgICAgIGNvZWZmaWNpZW50c1ttXSAvPSBjb2VmZmljaWVudHNbMF07CisgICAgICAg
IGNvZWZmaWNpZW50c1swXSA9IDE7CisgICAgfQorCisgICAgLy8gQmVnaW4gcmVjdXJzaW9uLCB1
c2luZyBhIHdvcmsgYXJyYXkgdG8gaG9sZCBpbnRlcm1lZGlhdGUgcmVzdWx0cy4KKyAgICBWZWN0
b3I8ZG91YmxlPiB3b3JrKG9yZGVyICsgMSk7CisgICAgZm9yIChpbnQgbiA9IG9yZGVyOyBuID49
IDE7IC0tbikgeworICAgICAgICBkb3VibGUgayA9IGNvZWZmaWNpZW50c1tuXTsKKworICAgICAg
ICBpZiAoc3RkOjpmYWJzKGspID49IDEpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAg
ICAgICAgLy8gTm90ZSB0aGF0IEFbbl0oMS96KS96Xm4gaXMgYmFzaWNhbGx5IHRoZSBjb2VmZmlj
aWVudHMgb2YgQVtuXQorICAgICAgICAvLyBpbiByZXZlcnNlIG9yZGVyLgorICAgICAgICBkb3Vi
bGUgZmFjdG9yID0gMSAtIGsgKiBrOworICAgICAgICBmb3IgKGludCBtID0gMDsgbSA8PSBuOyAr
K20pCisgICAgICAgICAgICB3b3JrW21dID0gKGNvZWZmaWNpZW50c1ttXSAtIGsgKiBjb2VmZmlj
aWVudHNbbiAtIG1dKSAvIGZhY3RvcjsKKyAgICAgICAgY29lZmZpY2llbnRzLnN3YXAod29yayk7
CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK0V4Y2VwdGlvbk9yPFJlZjxJSVJGaWx0
ZXJOb2RlPj4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQsIElJUkZpbHRl
ck9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIGlmIChjb250ZXh0LmlzU3RvcHBlZCgpKQorICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKKworICAgIGNvbnRl
eHQubGF6eUluaXRpYWxpemUoKTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXpl
KCkgfHwgb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXplKCkgPiBJSVJGaWx0ZXI6Om1heE9yZGVyKQor
ICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJmZWVkZm9yd2Fy
ZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCJfcyB9OworCisgICAg
YXV0byBub25aZXJvVmFsdWVJbmRleCA9IG9wdGlvbnMuZmVlZGZvcndhcmQuZmluZE1hdGNoaW5n
KFtdKGF1dG8mIHZhbHVlKSB7IHJldHVybiAhIXZhbHVlOyB9KTsKKyAgICBpZiAobm9uWmVyb1Zh
bHVlSW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgImZlZWRmb3J3YXJkIGFycmF5IG11c3QgY29udGFpbiBhIG5vbi16ZXJvIHZh
bHVlIl9zIH07CisKKyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpIHx8IG9wdGlvbnMu
ZmVlZGJhY2suc2l6ZSgpID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAgcmV0dXJuIEV4
Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiZmVlZGJhY2sgYXJyYXkgbXVzdCBoYXZlIGEg
bGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkYmFj
a1swXSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiZmly
c3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iX3MgfTsKKworICAgIGJv
b2wgaXNGaWx0ZXJTdGFibGUgPSBXZWJDb3JlOjppc0ZpbHRlclN0YWJsZShvcHRpb25zLmZlZWRi
YWNrKTsKKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICBzY3JpcHRFeGVjdXRpb25D
b250ZXh0LmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6
Oldhcm5pbmcsICJJSVJGaWx0ZXIgaXMgdW5zdGFibGUgd2l0aCBwcm92aWRlZCBmZWVkYmFjayBj
b2VmZmljaWVudHMiX3MpOworCisgICAgYXV0byBub2RlID0gYWRvcHRSZWYoKm5ldyBJSVJGaWx0
ZXJOb2RlKGNvbnRleHQsIG9wdGlvbnMuZmVlZGZvcndhcmQsIG9wdGlvbnMuZmVlZGJhY2ssIGlz
RmlsdGVyU3RhYmxlKSk7CisKKyAgICBhdXRvIHJlc3VsdCA9IG5vZGUtPmhhbmRsZUF1ZGlvTm9k
ZU9wdGlvbnMob3B0aW9ucywgeyAyLCBDaGFubmVsQ291bnRNb2RlOjpNYXgsIENoYW5uZWxJbnRl
cnByZXRhdGlvbjo6U3BlYWtlcnMgfSk7CisgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkK
KyAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKKyAgICByZXR1cm4g
bm9kZTsKK30KKworSUlSRmlsdGVyTm9kZTo6SUlSRmlsdGVyTm9kZShCYXNlQXVkaW9Db250ZXh0
JiBjb250ZXh0LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rv
cjxkb3VibGU+JiBmZWVkYmFjaywgYm9vbCBpc0ZpbHRlclN0YWJsZSkKKyAgICA6IEF1ZGlvQmFz
aWNQcm9jZXNzb3JOb2RlKGNvbnRleHQpCit7CisgICAgc2V0Tm9kZVR5cGUoTm9kZVR5cGVJSVJG
aWx0ZXIpOworICAgIG1fcHJvY2Vzc29yID0gbWFrZVVuaXF1ZTxJSVJQcm9jZXNzb3I+KGNvbnRl
eHQuc2FtcGxlUmF0ZSgpLCAxLCBmZWVkZm9yd2FyZCwgZmVlZGJhY2ssIGlzRmlsdGVyU3RhYmxl
KTsKKworICAgIGluaXRpYWxpemUoKTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gSUlSRmlsdGVy
Tm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5JiBmcmVxdWVuY3lIeiwgRmxv
YXQzMkFycmF5JiBtYWdSZXNwb25zZSwgRmxvYXQzMkFycmF5JiBwaGFzZVJlc3BvbnNlKQorewor
ICAgIGF1dG8gZXhwZWN0ZWRMZW5ndGggPSBmcmVxdWVuY3lIei5sZW5ndGgoKTsKKyAgICBpZiAo
bWFnUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGggfHwgcGhhc2VSZXNwb25zZS5s
ZW5ndGgoKSAhPSBleHBlY3RlZExlbmd0aCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IElu
dmFsaWRBY2Nlc3NFcnJvciwgIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoIl9zIH07
CisKKyAgICAvLyBOb3RoaW5nIHRvIGRvIGlmIHRoZSBsZW5ndGggaXMgMC4KKyAgICBpZiAoZXhw
ZWN0ZWRMZW5ndGggPiAwKQorICAgICAgICBpaXJQcm9jZXNzb3IoKS0+Z2V0RnJlcXVlbmN5UmVz
cG9uc2UoZXhwZWN0ZWRMZW5ndGgsIGZyZXF1ZW5jeUh6LmRhdGEoKSwgbWFnUmVzcG9uc2UuZGF0
YSgpLCBwaGFzZVJlc3BvbnNlLmRhdGEoKSk7CisKKyAgICByZXR1cm4geyB9OworfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5kNmEwNTAzNjc5YTM3MDg5N2Y3MDQ0ZGMwNDUwM2FmYjgzN2U5ZDc0Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmgKQEAg
LTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1bSBBdXRob3Jz
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
IkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVyT3B0aW9ucy5o
IgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0Zs
b2F0MzJBcnJheS5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkZpbHRlck5v
ZGUgZmluYWwgOiBwdWJsaWMgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUgeworICAgIFdURl9NQUtF
X0lTT19BTExPQ0FURUQoSUlSRmlsdGVyTm9kZSk7CitwdWJsaWM6CisgICAgc3RhdGljIEV4Y2Vw
dGlvbk9yPFJlZjxJSVJGaWx0ZXJOb2RlPj4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQm
LCBCYXNlQXVkaW9Db250ZXh0JiwgSUlSRmlsdGVyT3B0aW9ucyYmKTsKKworICAgIEV4Y2VwdGlv
bk9yPHZvaWQ+IGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSYgZnJlcXVlbmN5SHos
IEZsb2F0MzJBcnJheSYgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSYgcGhhc2VSZXNwb25zZSk7
CisKK3ByaXZhdGU6CisgICAgSUlSRmlsdGVyTm9kZShCYXNlQXVkaW9Db250ZXh0JiwgY29uc3Qg
VmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJh
Y2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOworCisgICAgSUlSUHJvY2Vzc29yKiBpaXJQcm9jZXNz
b3IoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxJSVJQcm9jZXNzb3IqPihwcm9jZXNzb3IoKSk7IH0K
K307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkZGM1YWMzY2YyNzg5
YzEzNzNjZmYyMDQ2Nzc4NDE4NGNlNjRjMjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaWRsCkBAIC0wLDAgKzEsMzIgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAq
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKK1sKKyAgICBDb25kaXRpb25hbD1XRUJfQVVESU8sCisgICAgSlNHZW5lcmF0
ZVRvSlNPYmplY3QsCisgICAgRW5hYmxlZEJ5U2V0dGluZz1Nb2Rlcm5VbnByZWZpeGVkV2ViQXVk
aW8sCitdIGludGVyZmFjZSBJSVJGaWx0ZXJOb2RlIDogQXVkaW9Ob2RlIHsKKyAgICBbTWF5VGhy
b3dFeGNlcHRpb24sIENhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIGNvbnN0cnVjdG9y
KEJhc2VBdWRpb0NvbnRleHQgYXVkaW9Db250ZXh0LCBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnMp
OworICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9h
dDMyQXJyYXkgZnJlcXVlbmN5SHosIEZsb2F0MzJBcnJheSBtYWdSZXNwb25zZSwgRmxvYXQzMkFy
cmF5IHBoYXNlUmVzcG9uc2UpOworfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWIwMmY1OTc2Mzk1NGQ0MjNm
NTRiNDcyZWRmMWVmOWIwYzZmMWUzMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5oCkBAIC0wLDAgKzEsNDEgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKworI2luY2x1
ZGUgIkF1ZGlvTm9kZU9wdGlvbnMuaCIKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworc3RydWN0IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05vZGVPcHRp
b25zIHsKKyAgICBWZWN0b3I8ZG91YmxlPiBmZWVkZm9yd2FyZDsKKyAgICBWZWN0b3I8ZG91Ymxl
PiBmZWVkYmFjazsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJGaWx0ZXJPcHRpb25zLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MWYzNDc4NzcxZWUxMjQ5MWJiNmE1
MDFlNWY4YjJlMjgyMjYxZTMxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25zLmlkbApAQCAtMCwwICsxLDMwIEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCitbCisgICAgQ29uZGl0aW9uYWw9V0VCX0FVRElPCitdIGRpY3Rpb25hcnkgSUlSRmls
dGVyT3B0aW9ucyA6IEF1ZGlvTm9kZU9wdGlvbnMgeworICAgIHJlcXVpcmVkIHNlcXVlbmNlPGRv
dWJsZT4gZmVlZGZvcndhcmQ7CisgICAgcmVxdWlyZWQgc2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFj
azsKK307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlBy
b2Nlc3Nvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nv
ci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNjViNDI3MzA5YTM3NzEyNDJhYTAwNWRjY2JlMDU5ZmVkZWRkYjAz
MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
UHJvY2Vzc29yLmNwcApAQCAtMCwwICsxLDEwNSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoV0VCX0FVRElPKQorI2luY2x1ZGUgIklJUlByb2Nl
c3Nvci5oIgorCisjaW5jbHVkZSAiSUlSRFNQS2VybmVsLmgiCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworSUlSUHJvY2Vzc29yOjpJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5zaWdu
ZWQgbnVtYmVyT2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBj
b25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpCisgICAg
OiBBdWRpb0RTUEtlcm5lbFByb2Nlc3NvcihzYW1wbGVSYXRlLCBudW1iZXJPZkNoYW5uZWxzKQor
ICAgICwgbV9mZWVkZm9yd2FyZChmZWVkZm9yd2FyZCkKKyAgICAsIG1fZmVlZGJhY2soZmVlZGJh
Y2spCisgICAgLCBtX2lzRmlsdGVyU3RhYmxlKGlzRmlsdGVyU3RhYmxlKQoreworICAgIHVuc2ln
bmVkIGZlZWRiYWNrTGVuZ3RoID0gZmVlZGJhY2suc2l6ZSgpOworICAgIHVuc2lnbmVkIGZlZWRm
b3J3YXJkTGVuZ3RoID0gZmVlZGZvcndhcmQuc2l6ZSgpOworICAgIEFTU0VSVChmZWVkYmFja0xl
bmd0aCA+IDApOworICAgIEFTU0VSVChmZWVkZm9yd2FyZExlbmd0aCA+IDApOworCisgICAgLy8g
TmVlZCB0byBzY2FsZSB0aGUgZmVlZGJhY2sgYW5kIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBh
cHByb3ByaWF0ZWx5LgorICAgIC8vIChJdCdzIHVwIHRvIHRoZSBjYWxsZXIgdG8gZW5zdXJlIGZl
ZWRiYWNrQ29lZlswXSBpcyBub3QgMC4pCisgICAgQVNTRVJUKCEhZmVlZGJhY2tbMF0pOworCisg
ICAgaWYgKGZlZWRiYWNrWzBdICE9IDEpIHsKKyAgICAgICAgLy8gVGhlIHByb3ZpZGVkIGZpbHRl
ciBpczoKKyAgICAgICAgLy8KKyAgICAgICAgLy8gICBhWzBdKnkobikgKyBhWzFdKnkobi0xKSAr
IC4uLiA9IGJbMF0qeChuKSArIGJbMV0qeChuLTEpICsgLi4uCisgICAgICAgIC8vCisgICAgICAg
IC8vIFdlIHdhbnQgdGhlIGxlYWRpbmcgY29lZmZpY2llbnQgb2YgeShuKSB0byBiZSAxOgorICAg
ICAgICAvLworICAgICAgICAvLyAgIHkobikgKyBhWzFdL2FbMF0qeShuLTEpICsgLi4uID0gYlsw
XS9hWzBdKngobikgKyBiWzFdL2FbMF0qeChuLTEpICsgLi4uCisgICAgICAgIC8vCisgICAgICAg
IC8vIFRodXMsIHRoZSBmZWVkYmFjayBhbmQgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIG5lZWQg
dG8gYmUgc2NhbGVkIGJ5IDEvYVswXS4KKyAgICAgICAgZmxvYXQgc2NhbGUgPSBmZWVkYmFja1sw
XTsKKyAgICAgICAgZm9yICh1bnNpZ25lZCBrID0gMTsgayA8IGZlZWRiYWNrTGVuZ3RoOyArK2sp
CisgICAgICAgICAgICBtX2ZlZWRiYWNrW2tdIC89IHNjYWxlOworCisgICAgICAgIGZvciAodW5z
aWduZWQgayA9IDA7IGsgPCBmZWVkZm9yd2FyZExlbmd0aDsgKytrKQorICAgICAgICAgICAgbV9m
ZWVkZm9yd2FyZFtrXSAvPSBzY2FsZTsKKworICAgICAgICAvLyBUaGUgSUlSRmlsdGVyIGNoZWNr
cyB0byBtYWtlIHN1cmUgdGhpcyBjb2VmZmljaWVudCBpcyAxLCBzbyBtYWtlIGl0IHNvLgorICAg
ICAgICBtX2ZlZWRiYWNrWzBdID0gMTsKKyAgICB9CisKKyAgICBtX3Jlc3BvbnNlS2VybmVsID0g
bWFrZVVuaXF1ZTxJSVJEU1BLZXJuZWw+KCp0aGlzKTsKK30KKworSUlSUHJvY2Vzc29yOjp+SUlS
UHJvY2Vzc29yKCkKK3sKKyAgICBpZiAoaXNJbml0aWFsaXplZCgpKQorICAgICAgICB1bmluaXRp
YWxpemUoKTsKK30KKworc3RkOjp1bmlxdWVfcHRyPEF1ZGlvRFNQS2VybmVsPiBJSVJQcm9jZXNz
b3I6OmNyZWF0ZUtlcm5lbCgpCit7CisgICAgcmV0dXJuIG1ha2VVbmlxdWU8SUlSRFNQS2VybmVs
PigqdGhpcyk7Cit9CisKK3ZvaWQgSUlSUHJvY2Vzc29yOjpwcm9jZXNzKGNvbnN0IEF1ZGlvQnVz
KiBzb3VyY2UsIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykK
K3sKKyAgICBpZiAoIWlzSW5pdGlhbGl6ZWQoKSkgeworICAgICAgICBkZXN0aW5hdGlvbi0+emVy
bygpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gRm9yIGVhY2ggY2hhbm5lbCBv
ZiBvdXIgaW5wdXQsIHByb2Nlc3MgdXNpbmcgdGhlIGNvcnJlc3BvbmRpbmcgSUlSRFNQS2VybmVs
CisgICAgLy8gaW50byB0aGUgb3V0cHV0IGNoYW5uZWwuCisgICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBtX2tlcm5lbHMuc2l6ZSgpOyArK2kpCisgICAgICAgIG1fa2VybmVsc1tpXS0+cHJvY2Vz
cyhzb3VyY2UtPmNoYW5uZWwoaSktPmRhdGEoKSwgZGVzdGluYXRpb24tPmNoYW5uZWwoaSktPm11
dGFibGVEYXRhKCksIGZyYW1lc1RvUHJvY2Vzcyk7Cit9CisKK3ZvaWQgSUlSUHJvY2Vzc29yOjpn
ZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVu
Y3lIeiwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSkKK3sKKyAgICBt
X3Jlc3BvbnNlS2VybmVsLT5nZXRGcmVxdWVuY3lSZXNwb25zZShsZW5ndGgsIGZyZXF1ZW5jeUh6
LCBtYWdSZXNwb25zZSwgcGhhc2VSZXNwb25zZSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5oIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NGM1ZWQ5ZGY4ZTU5Yjdl
NzNjMjA0ZWIwYzNhMTQyNjVjYTY0MmRkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaApAQCAtMCwwICsxLDU5IEBACisvKgor
ICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAq
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiQXVkaW9EU1BLZXJuZWxQcm9j
ZXNzb3IuaCIKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsK
KworY2xhc3MgSUlSRFNQS2VybmVsOworCitjbGFzcyBJSVJQcm9jZXNzb3IgZmluYWwgOiBwdWJs
aWMgQXVkaW9EU1BLZXJuZWxQcm9jZXNzb3IgeworcHVibGljOgorICAgIElJUlByb2Nlc3Nvcihm
bG9hdCBzYW1wbGVSYXRlLCB1bnNpZ25lZCBudW1iZXJPZkNoYW5uZWxzLCBjb25zdCBWZWN0b3I8
ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaywgYm9v
bCBpc0ZpbHRlclN0YWJsZSk7CisgICAgfklJUlByb2Nlc3NvcigpOworCisgICAgLy8gQXVkaW9E
U1BLZXJuZWxQcm9jZXNzb3IuCisgICAgdm9pZCBwcm9jZXNzKGNvbnN0IEF1ZGlvQnVzKiBzb3Vy
Y2UsIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykgZmluYWw7
CisgICAgc3RkOjp1bmlxdWVfcHRyPEF1ZGlvRFNQS2VybmVsPiBjcmVhdGVLZXJuZWwoKSBmaW5h
bDsKKworICAgIC8vIEdldCB0aGUgbWFnbml0dWRlIGFuZCBwaGFzZSByZXNwb25zZSBvZiB0aGUg
ZmlsdGVyIGF0IHRoZSBnaXZlbiBzZXQgb2YgZnJlcXVlbmNpZXMgKGluIEh6KS4gVGhlIHBoYXNl
IHJlc3BvbnNlIGlzIGluIHJhZGlhbnMuCisgICAgdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25zZSh1
bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3lIeiwgZmxvYXQqIG1hZ1Jlc3Bv
bnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSk7CisKKyAgICBjb25zdCBWZWN0b3I8ZG91YmxlPiYg
ZmVlZGZvcndhcmQoKSBjb25zdCB7IHJldHVybiBtX2ZlZWRmb3J3YXJkOyB9CisgICAgY29uc3Qg
VmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKCkgY29uc3QgeyByZXR1cm4gbV9mZWVkYmFjazsgfQor
ICAgIGJvb2wgaXNGaWx0ZXJTdGFibGUoKSBjb25zdCB7IHJldHVybiBtX2lzRmlsdGVyU3RhYmxl
OyB9CisKK3ByaXZhdGU6CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVkZm9yd2FyZDsKKyAgICBW
ZWN0b3I8ZG91YmxlPiBtX2ZlZWRiYWNrOworICAgIGJvb2wgbV9pc0ZpbHRlclN0YWJsZTsKKwor
ICAgIHN0ZDo6dW5pcXVlX3B0cjxJSVJEU1BLZXJuZWw+IG1fcmVzcG9uc2VLZXJuZWw7Cit9Owor
Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGRlNDlmZDI2NmI2YTg0
YjljODUzYjZjNWQ5NGZlMzhiMjYwMzEzMzcuLjM2MjY2NWFiMTcxMzFmMmNmMzdmOGFkZjg5MDU0
MDViZjI5NzI2YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBi
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0yMjEsNiArMjIxLDkgQEAgTW9kdWxlcy93
ZWJhdWRpby9EZWxheU5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlvL0RlbGF5UHJvY2Vzc29yLmNw
cAogTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmNwcAogTW9kdWxlcy93
ZWJhdWRpby9HYWluTm9kZS5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2VybmVsLmNwcAor
TW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcAorTW9kdWxlcy93ZWJhdWRpby9JSVJQ
cm9jZXNzb3IuY3BwCiBNb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9k
ZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vTWVkaWFTdHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9kZS5j
cHAKIE1vZHVsZXMvd2ViYXVkaW8vTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAKQEAgLTE3OTks
NiArMTgwMiw3IEBAIHBsYXRmb3JtL2F1ZGlvL0hSVEZEYXRhYmFzZUxvYWRlci5jcHAKIHBsYXRm
b3JtL2F1ZGlvL0hSVEZFbGV2YXRpb24uY3BwCiBwbGF0Zm9ybS9hdWRpby9IUlRGS2VybmVsLmNw
cAogcGxhdGZvcm0vYXVkaW8vSFJURlBhbm5lci5jcHAKK3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRl
ci5jcHAKIHBsYXRmb3JtL2F1ZGlvL011bHRpQ2hhbm5lbFJlc2FtcGxlci5jcHAKIHBsYXRmb3Jt
L2F1ZGlvL1Bhbm5lci5jcHAKIHBsYXRmb3JtL2F1ZGlvL1BsYXRmb3JtTWVkaWFTZXNzaW9uLmNw
cApAQCAtMzAzNCw2ICszMDM4LDggQEAgSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCiBKU0lk
bGVEZWFkbGluZS5jcHAKIEpTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKIEpTSWRsZVJlcXVlc3RP
cHRpb25zLmNwcAorSlNJSVJGaWx0ZXJOb2RlLmNwcAorSlNJSVJGaWx0ZXJPcHRpb25zLmNwcAog
SlNJbWFnZUJpdG1hcC5jcHAKIEpTSW1hZ2VCaXRtYXBPcHRpb25zLmNwcAogSlNJbWFnZUJpdG1h
cFJlbmRlcmluZ0NvbnRleHQuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggM2EzNjFhYTk4ZTljMjdiMzlmNzJiYzI1YWY5OGZm
MDBjYTYwM2IzMC4uZGMyOTgzYmI1M2NiOTFlYTdmYmU4ODBhNWRlZDJlYTJhM2QzNjFmNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMjQzMyw2ICsyNDMzLDcgQEAKIAkJODMwNzg0QjIxQzUyRUUyQzAwMTA0RDFEIC8qIFhNTERv
Y3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzA3ODRCMTFDNTJFRTE5MDAxMDREMUQgLyogWE1MRG9jdW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4MzBBMUM3RDI0REI3ODhCMDAyRUND
QUQgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBBMUM3QzI0REI3ODcwMDAyRUNDQUQgLyog
TWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggKi87IH07CiAJCTgzMEEzNkJEMURBQzVG
QUQwMDZEN0QwOSAvKiBKU01vdXNlRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBBMzZCQjFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3Vz
ZUV2ZW50SW5pdC5oICovOyB9OworCQk4MzBEMEI2OTI0RjU3RDY3MDA3RUQxMjIgLyogSUlSUHJv
Y2Vzc29yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi87IH07CiAJCTgzMEVF
QUJBMjREQjZBNjQwMDlFRkJDRSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzBFRUFCNzI0REI2
QTUyMDA5RUZCQ0UgLyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5oICovOyB9OwogCQk4
MzEwMkIyNzFGOUVBREQ5MDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzEwMkIyMzFGOUVB
REMyMDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi87IH07CiAJCTgzMTFD
MDAzMUZBQTJFOTUwMEUzQzhFNSAvKiBTV1NlcnZlckpvYlF1ZXVlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzExQzAwMjFGQUEyRTg5MDBFM0M4RTUg
LyogU1dTZXJ2ZXJKb2JRdWV1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CkBAIC0yNDU5LDEyICsyNDYwLDE1IEBACiAJCTgzNDhCRkFDMUI4NTcyOTgw
MDkxMkYzNiAvKiBDbGFzc0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzNDhCRkFBMUI4NTcyOTUwMDkxMkYzNiAvKiBDbGFzc0NvbGxl
Y3Rpb24uaCAqLzsgfTsKIAkJODM0Q0JGQzIyNERDNzg2NzAwQzJBM0Q4IC8qIE1lZGlhU3RyZWFt
QXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzRDQkZCRjI0REM3ODU1MDBDMkEzRDggLyogTWVkaWFTdHJlYW1BdWRpb1Nv
dXJjZU9wdGlvbnMuaCAqLzsgfTsKIAkJODM0REZBRDAxRjdEQUU1RDAwQzI3MjVCIC8qIFNoYXJl
ZFN0cmluZ0hhc2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM1MDUxQTQyNEY1
NzNDNDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0
ZXJOb2RlLmggKi87IH07CisJCTgzNTA1MUE1MjRGNTczQzgwMDk5MTFENyAvKiBJSVJGaWx0ZXJP
cHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzUwNTFBMDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICovOyB9OwogCQk4
MzUyMEM3RTFBNzFCRkNDMDA2QkQyQUEgLyogQ1NTRm9udEZhbWlseS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MjBDN0QxQTcxQkZDQzAwNkJEMkFB
IC8qIENTU0ZvbnRGYW1pbHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQk4MzU2Rjk3RjI0RDlGODE4MDA2QzNFNDEgLyogV2ViS2l0QXVkaW9MaXN0
ZW5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1
NkY5N0UyNEQ5RjgwOTAwNkMzRTQxIC8qIFdlYktpdEF1ZGlvTGlzdGVuZXIuaCAqLzsgfTsKIAkJ
ODM1OENCNzAxQzUzMjc3NTAwRTBDMkQ4IC8qIEpTWE1MRG9jdW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzRjU3MEFEMUM1MzI2OEUwMDdGRDZD
QiAvKiBKU1hNTERvY3VtZW50LmggKi87IH07CiAJCTgzNUQyRDc4MUY1RjFGQkQwMDE0MURFRCAv
KiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODM1RDJENzUxRjVGMUZCODAwMTQxREVEIC8qIEhUTUxJbnB1
dEVsZW1lbnRFbnRyaWVzQVBJLmggKi87IH07CiAJCTgzNUQzNjM3MTlGRjYxOTMwMDRDOTNBQiAv
KiBTdHlsZUJ1aWxkZXJDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNUQzNjM2MTlGRjYxOTMwMDRDOTNBQiAvKiBTdHlsZUJ1aWxkZXJDdXN0
b20uaCAqLzsgfTsKIAkJODM1RDU0QzUxRjRERTUzODAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVM
aXN0Q3JlYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODM1RDU0QzIxRjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5o
ICovOyB9OworCQk4MzVEQTkwMjI0RjU4MjY1MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEQTkwMTI0RjU4
MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggKi87IH07CiAJCTgzNjJFOEMxMjBDRUY5Q0Iw
MDI0NTg4NiAvKiBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjJFOEJGMjBDRUY5Q0IwMDI0NTg4NiAv
KiBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4MzY1ODlERTFGNTRBNzY5MDBEQzMxRjQgLyogSlNG
aWxlU3lzdGVtRGlyZWN0b3J5UmVhZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzY1ODlEOTFGNTRBNzYyMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVt
RGlyZWN0b3J5UmVhZGVyLmggKi87IH07CiAJCTgzNjU4OUUwMUY1NEE3NkUwMERDMzFGNCAvKiBK
U0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjU4OUQ4MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0
ZW1FbnRyaWVzQ2FsbGJhY2suaCAqLzsgfTsKQEAgLTI1MDQsNiArMjUwOCw3IEBACiAJCTgzOTk0
NzEwMUY1MEI2RkEwMEU5RDg2QiAvKiBKU0RPTUZpbGVTeXN0ZW0uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOTk0NzBFMUY1MEI2RjMwMEU5RDg2QiAv
KiBKU0RPTUZpbGVTeXN0ZW0uaCAqLzsgfTsKIAkJODM5QTJGMkUxRTIwNEE3MTAwMzkwNTdFIC8q
IFdlYkdMU3RhdGVUcmFja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzlBMkYyQzFFMjA0QTZEMDAzOTA1N0UgLyogV2ViR0xTdGF0ZVRyYWNrZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4MzlB
QUZFRDFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOUFBRkVCMUEwQzBDOEQwMDYwNUY5OSAv
KiBIVE1MV0JSRWxlbWVudC5oICovOyB9OworCQk4MzlCRTZENTI0RjU4NzYyMDA0REY1MEYgLyog
SUlSRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmlsdGVyLmggKi87IH07CiAJCTgzQTJB
QkRCMjREODZERTAwMEUyRDczRCAvKiBEZWxheU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzQTJBQkQ4MjREODZEQzYwMEUyRDczRCAvKiBE
ZWxheU9wdGlvbnMuaCAqLzsgfTsKIAkJODNBOEFDNDAxRkFCQkZFNTAwMjA2NEFDIC8qIFNlcnZp
Y2VXb3JrZXJJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4M0E4QUMzRTFGQUJCRkQxMDAyMDY0QUMgLyogU2VydmljZVdvcmtlcklkZW50
aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQk4M0IxQTcwMjI0OTk4NUYwMDBGRTU5NjEgLyogV2ViS2l0QXVkaW9Db250ZXh0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0IxQTZGRjI0OTk4NUQw
MDBGRTU5NjEgLyogV2ViS2l0QXVkaW9Db250ZXh0LmggKi87IH07CkBAIC0xMDQ0NSw2ICsxMDQ1
MCw4IEBACiAJCTgzMEExQzdDMjREQjc4NzAwMDJFQ0NBRCAvKiBNZWRpYUVsZW1lbnRBdWRpb1Nv
dXJjZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRp
b25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEEzNkJBMURBQzVGQTcwMDZE
N0QwOSAvKiBKU01vdXNlRXZlbnRJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTTW91c2VFdmVudEluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk4MzBBMzZCQjFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50SW5pdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01vdXNlRXZlbnRJbml0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMEQwQjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9j
ZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSUHJvY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzMEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSUlSUHJvY2Vzc29yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJODMwRUVBQjcyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNzQ29t
cHJlc3Nvck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9k
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzBFRUFCOTI0REI2QTUyMDA5RUZC
Q0UgLyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0RHluYW1p
Y3NDb21wcmVzc29yTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMTAy
QjIzMUY5RUFEQzIwMEU0MDRCOSAvKiBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDQ5OCw2ICsxMDUwNSwxMSBAQAogCQk4MzRE
RDRGMzFCRTA4OTg5MDAyQzlDM0UgLyogUGFnZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IFBhZ2VNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJlZFN0cmluZ0hhc2guaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM0REZBQ0UxRjdEQUU1NzAwQzI3MjVCIC8qIFNoYXJlZFN0
cmluZ0hhc2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2hhcmVk
U3RyaW5nSGFzaC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTA1MTlFMjRG
NTczQUQwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElJ
UkZpbHRlck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMDI0
RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJG
aWx0ZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTA1MUExMjRG
NTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJSVJGaWx0ZXJOb2RlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTIyNEY1NzNBRjAwOTkxMUQ3
IC8qIElJUkZpbHRlck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSRmlsdGVyTm9kZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMzI0RjU3M0FGMDA5OTExRDcgLyogSUlS
RmlsdGVyT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVyT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3MURBNTlCNjIwMDM1NTQyNCAvKiBTY3JvbGxMb2dp
Y2FsUG9zaXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsTG9n
aWNhbFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3MURB
NTlCNjIwMDM1NTQzNSAvKiBTY3JvbGxJbnRvVmlld09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTgzNTBDM0U3MURBNTlCNjIwMDM1NjQyNCAvKiBTY3JvbGxCZWhhdmlv
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxCZWhhdmlvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTA1MjAsNiArMTA1MzIsOCBAQAogCQk4MzVE
MzYzNjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQnVpbGRlckN1c3RvbS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk4MzVENTRDMTFGNERFNTM0MDBFNjA2NzEgLyogRGlyZWN0b3J5Rmls
ZUxpc3RDcmVhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERp
cmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTgzNUQ1NEMyMUY0REU1MzQwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9y
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNURBOEZGMjRGNTgyNTcwMDIyRERB
NCAvKiBJSVJEU1BLZXJuZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSUlSRFNQS2VybmVsLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1REE5MDEyNEY1ODI1NzAwMjJEREE0
IC8qIElJUkRTUEtlcm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJEU1BLZXJuZWwuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1RjhCMjYxRDJEOTBCQTAwRTQwOEVDIC8qIFNsb3Rh
YmxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTbG90YWJsZS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTgzNjJFOEJGMjBDRUY5Q0IwMDI0NTg4NiAvKiBTaG91bGRUcmVh
dEFzQ29udGludWluZ0xvYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hv
dWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTgzNjU4OUQ4MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2su
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlU3lzdGVtRW50cmllc0Nh
bGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMDYwNCw2ICsxMDYxOCw4
IEBACiAJCTgzOUEyRjJDMUUyMDRBNkQwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTFN0YXRlVHJhY2tlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzlBQUZFQTFBMEMwQzhEMDA2MDVGOTkgLyogSFRN
TFdCUkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRN
TFdCUkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzlBQUZFQjFB
MEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSFRNTFdCUkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODM5QkU2RDIyNEY1ODc1NTAwNERGNTBGIC8qIElJUkZpbHRlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJSVJGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM5QkU2RDQyNEY1ODc1NTAwNERGNTBGIC8qIElJUkZpbHRlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJGaWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IERlbGF5T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk4M0EyQUJEQTI0RDg2REM3MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25zLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBEZWxheU9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4M0E0QTlG
ODFDRTdGRDdFMDA3MDlCMDAgLyogSlNYTUxEb2N1bWVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1hNTERvY3VtZW50Q3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI5Njc5LDYgKzI5Njk1LDE1IEBACiAJCQkJRkQzMTVG
QzQxMkIwMjY3NTAwQzFBMzU5IC8qIEdhaW5Ob2RlLmlkbCAqLywKIAkJCQk4Mzc0NUNGRjI0RDg5
OUMyMDBGQkRDQzQgLyogR2Fpbk9wdGlvbnMuaCAqLywKIAkJCQk4Mzc0NUQwMTI0RDg5OUMyMDBG
QkRDQzQgLyogR2Fpbk9wdGlvbnMuaWRsICovLAorCQkJCTgzNURBOEZGMjRGNTgyNTcwMDIyRERB
NCAvKiBJSVJEU1BLZXJuZWwuY3BwICovLAorCQkJCTgzNURBOTAxMjRGNTgyNTcwMDIyRERBNCAv
KiBJSVJEU1BLZXJuZWwuaCAqLywKKwkJCQk4MzUwNTE5RTI0RjU3M0FEMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5jcHAgKi8sCisJCQkJODM1MDUxQTIyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZp
bHRlck5vZGUuaCAqLywKKwkJCQk4MzUwNTFBMTI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVy
Tm9kZS5pZGwgKi8sCisJCQkJODM1MDUxQTAyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRlck9w
dGlvbnMuaCAqLywKKwkJCQk4MzUwNTFBMzI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0
aW9ucy5pZGwgKi8sCisJCQkJODMwRDBCNjgyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nlc3Nv
ci5jcHAgKi8sCisJCQkJODMwRDBCNjYyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5o
ICovLAogCQkJCUZENkYyNTI5MTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRpYUVsZW1lbnRBdWRpb1Nv
dXJjZU5vZGUuY3BwICovLAogCQkJCUZENkYyNTJBMTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRpYUVs
ZW1lbnRBdWRpb1NvdXJjZU5vZGUuaCAqLywKIAkJCQlGRDZGMjUyQjEzRjVFRjBFMDA2NTE2NUYg
LyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmlkbCAqLywKQEAgLTI5ODMyLDYgKzI5ODU3
LDggQEAKIAkJCQlGRDMxNjA2OTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURktlcm5lbC5oICovLAog
CQkJCUZEMzE2MDZBMTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGUGFubmVyLmNwcCAqLywKIAkJCQlG
RDMxNjA2QjEyQjAyNkY3MDBDMUEzNTkgLyogSFJURlBhbm5lci5oICovLAorCQkJCTgzOUJFNkQ0
MjRGNTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovLAorCQkJCTgzOUJFNkQyMjRGNTg3
NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLywKIAkJCQlGREIxNzAwMzE0QTJCQUIyMDBBMkI1
RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmNwcCAqLywKIAkJCQlGREIxNzAwNDE0QTJCQUIy
MDBBMkI1RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmggKi8sCiAJCQkJNDE2RkQyNUQyNDBF
RTFBRTAwNjY2MUQ4IC8qIE5vd1BsYXlpbmdJbmZvLmggKi8sCkBAIC0zMTQ1MCw2ICszMTQ3Nywx
MSBAQAogCQkJCUMzQ0YxN0E3MTVCMDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdldE9ic2VydmVyUmVn
aXN0cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCThBQjRCQzc3MTI2RkRCNzEwMERFQjcyNyAvKiBJ
Z25vcmVEZXN0cnVjdGl2ZVdyaXRlQ291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNDY3MzAyMDIxQzRFRkU3ODAwQkNCMzU3IC8qIElnbm9yZU9wZW5zRHVyaW5nVW5sb2FkQ291
bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1REE5MDIyNEY1ODI2NTAwMjJE
REE0IC8qIElJUkRTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM5QkU2RDUyNEY1ODc2
MjAwNERGNTBGIC8qIElJUkZpbHRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1MDUxQTQyNEY1
NzNDNDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNTA1
MUE1MjRGNTczQzgwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLywK
KwkJCQk4MzBEMEI2OTI0RjU3RDY3MDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlCMjc1MzU3MDBCMDUzODE0MDAyQ0U2NEYgLyogSW1hZ2UuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTU1QTMzNkY5MUQ4MjFFM0MwMDIyQzRDNyAvKiBJbWFnZUJhY2tpbmdTdG9yZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMzE4MTVBMzExRjlBNkM4RjAwRkNCRjg5IC8qIEltYWdlQml0
bWFwLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dl
YkNvcmVCdWlsdGluTmFtZXMuaAppbmRleCAyMjRkYmMyZTYzMzllNjRkNTA2M2ViMmNkNWI5ODEz
ZmZlNzM2MmQ4Li42ZDA5ZjIxZjZkYTFkM2VjYTIxOTAxYjg2MTM4ZTAzY2U1MDBjMjU4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCkBA
IC0xNDMsNiArMTQzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIG1hY3JvKElEQlJlcXVl
c3QpIFwKICAgICBtYWNybyhJREJUcmFuc2FjdGlvbikgXAogICAgIG1hY3JvKElEQlZlcnNpb25D
aGFuZ2VFdmVudCkgXAorICAgIG1hY3JvKElJUkZpbHRlck5vZGUpIFwKICAgICBtYWNybyhJbWFn
ZUJpdG1hcCkgXAogICAgIG1hY3JvKEltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dCkgXAogICAg
IG1hY3JvKElkbGVEZWFkbGluZSkgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vSUlSRmlsdGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJ
UkZpbHRlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTFiNGJhY2YyNTM4YTg0ZTIyMTA2YzYxNTZlYzcxOTlh
MTY1NDU2MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0lJUkZpbHRlci5jcHAKQEAgLTAsMCArMSwyMzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBU
aGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIklJUkZpbHRlci5oIgorCisjaW5jbHVkZSAiVmVjdG9y
TWF0aC5oIgorI2luY2x1ZGUgPGFsZ29yaXRobT4KKyNpbmNsdWRlIDxjb21wbGV4PgorI2luY2x1
ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY29uc3RleHBy
IHVuc2lnbmVkIGlpclJlbmRlcmluZ1F1YW50dW0gPSAxMjg7CisKKy8vIFRoZSBsZW5ndGggb2Yg
dGhlIG1lbW9yeSBidWZmZXJzIGZvciB0aGUgSUlSIGZpbHRlci4gVGhpcyBNVVNUIGJlIGEgcG93
ZXIgb2YKKy8vIHR3byBhbmQgbXVzdCBiZSBncmVhdGVyIHRoYW4gdGhlIHBvc3NpYmxlIGxlbmd0
aCBvZiB0aGUgZmlsdGVyIGNvZWZmaWNpZW50cy4KK2NvbnN0ZXhwciBpbnQgYnVmZmVyTGVuZ3Ro
ID0gMzI7CitzdGF0aWNfYXNzZXJ0KGJ1ZmZlckxlbmd0aCA+PSBJSVJGaWx0ZXI6Om1heE9yZGVy
ICsgMSwgIkludGVybmFsIElJUiBidWZmZXIgbGVuZ3RoIG11c3QgYmUgZ3JlYXRlciB0aGFuIG1h
eGltdW0gSUlSIEZpbHRlciBvcmRlci4iKTsKKworc3RhdGljIHN0ZDo6Y29tcGxleDxkb3VibGU+
IGV2YWx1YXRlUG9seW5vbWlhbChjb25zdCBkb3VibGUqIGNvZWZmaWNpZW50cywgc3RkOjpjb21w
bGV4PGRvdWJsZT4geiwgaW50IG9yZGVyKQoreworICAgIC8vIFVzZSBIb3JuZXIncyBtZXRob2Qg
dG8gZXZhbHVhdGUgdGhlIHBvbHlub21pYWwgUCh6KSA9IHN1bShjb2VmW2tdKnpeaywgaywgMCwg
b3JkZXIpOworICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IHJlc3VsdCA9IDA7CisgICAgZm9yIChp
bnQgayA9IG9yZGVyOyBrID49IDA7IC0taykKKyAgICAgICAgcmVzdWx0ID0gcmVzdWx0ICogeiAr
IHN0ZDo6Y29tcGxleDxkb3VibGU+KGNvZWZmaWNpZW50c1trXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KKworSUlSRmlsdGVyOjpJSVJGaWx0ZXIoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRm
b3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2spCisgICAgOiBtX2ZlZWRmb3J3
YXJkKGZlZWRmb3J3YXJkKQorICAgICwgbV9mZWVkYmFjayhmZWVkYmFjaykKK3sKKyAgICBtX3hC
dWZmZXIuZmlsbCgwLCBidWZmZXJMZW5ndGgpOworICAgIG1feUJ1ZmZlci5maWxsKDAsIGJ1ZmZl
ckxlbmd0aCk7Cit9CisKK3ZvaWQgSUlSRmlsdGVyOjpyZXNldCgpCit7CisgICAgbV94QnVmZmVy
LmZpbGwoMCk7CisgICAgbV95QnVmZmVyLmZpbGwoMCk7CisgICAgbV9idWZmZXJJbmRleCA9IDA7
Cit9CisKK3ZvaWQgSUlSRmlsdGVyOjpwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZsb2F0
KiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKK3sKKyAgICAvLyBDb21wdXRl
CisgICAgLy8KKyAgICAvLyAgIHlbbl0gPSBzdW0oYltrXSAqIHhbbiAtIGtdLCBrID0gMCwgTSkg
LSBzdW0oYVtrXSAqIHlbbiAtIGtdLCBrID0gMSwgTikKKyAgICAvLworICAgIC8vIHdoZXJlIGJb
a10gYXJlIHRoZSBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgYW5kIGFba10gYXJlIHRoZSBmZWVk
YmFjaworICAgIC8vIGNvZWZmaWNpZW50cyBvZiB0aGUgZmlsdGVyLgorICAgIC8vIFRoaXMgaXMg
YSBEaXJlY3QgRm9ybSBJIGltcGxlbWVudGF0aW9uIG9mIGFuIElJUiBGaWx0ZXIuIFNob3VsZCB3
ZQorICAgIC8vIGNvbnNpZGVyIGRvaW5nIGEgZGlmZmVyZW50IGltcGxlbWVudGF0aW9uIHN1Y2gg
YXMgVHJhbnNwb3NlZCBEaXJlY3QgRm9ybQorICAgIC8vIElJPworICAgIGNvbnN0IGRvdWJsZSog
ZmVlZGJhY2sgPSBtX2ZlZWRiYWNrLmRhdGEoKTsKKyAgICBjb25zdCBkb3VibGUqIGZlZWRmb3J3
YXJkID0gbV9mZWVkZm9yd2FyZC5kYXRhKCk7CisKKyAgICBBU1NFUlQoZmVlZGJhY2spOworICAg
IEFTU0VSVChmZWVkZm9yd2FyZCk7CisKKyAgICAvLyBTYW5pdHkgY2hlY2sgdG8gc2VlIGlmIHRo
ZSBmZWVkYmFjayBjb2VmZmljaWVudHMgaGF2ZSBiZWVuIHNjYWxlZCBhcHByb3ByaWF0ZWx5LiBJ
dCBtdXN0IGJlIEVYQUNUTFkgMSEKKyAgICBBU1NFUlQoZmVlZGJhY2tbMF0gPT0gMSk7CisKKyAg
ICBpbnQgZmVlZGJhY2tMZW5ndGggPSBtX2ZlZWRiYWNrLnNpemUoKTsKKyAgICBpbnQgZmVlZGZv
cndhcmRMZW5ndGggPSBtX2ZlZWRmb3J3YXJkLnNpemUoKTsKKyAgICBpbnQgbWluTGVuZ3RoID0g
c3RkOjptaW4oZmVlZGJhY2tMZW5ndGgsIGZlZWRmb3J3YXJkTGVuZ3RoKTsKKworICAgIGRvdWJs
ZSogeEJ1ZmZlciA9IG1feEJ1ZmZlci5kYXRhKCk7CisgICAgZG91YmxlKiB5QnVmZmVyID0gbV95
QnVmZmVyLmRhdGEoKTsKKworICAgIGZvciAoc2l6ZV90IG4gPSAwOyBuIDwgZnJhbWVzVG9Qcm9j
ZXNzOyArK24pIHsKKyAgICAgICAgLy8gVG8gaGVscCBtaW5pbWl6ZSByb3VuZG9mZiwgd2UgY29t
cHV0ZSB1c2luZyBkb3VibGUncywgZXZlbiB0aG91Z2ggdGhlCisgICAgICAgIC8vIGZpbHRlciBj
b2VmZmljaWVudHMgb25seSBoYXZlIHNpbmdsZSBwcmVjaXNpb24gdmFsdWVzLgorICAgICAgICBk
b3VibGUgeW4gPSBmZWVkZm9yd2FyZFswXSAqIHNvdXJjZVtuXTsKKworICAgICAgICAvLyBSdW4g
Ym90aCB0aGUgZmVlZGZvcndhcmQgYW5kIGZlZWRiYWNrIHRlcm1zIHRvZ2V0aGVyLCB3aGVuIHBv
c3NpYmxlLgorICAgICAgICBmb3IgKGludCBrID0gMTsgayA8IG1pbkxlbmd0aDsgKytrKSB7Cisg
ICAgICAgICAgICBpbnQgbSA9IChtX2J1ZmZlckluZGV4IC0gaykgJiAoYnVmZmVyTGVuZ3RoIC0g
MSk7CisgICAgICAgICAgICB5biArPSBmZWVkZm9yd2FyZFtrXSAqIHhCdWZmZXJbbV07CisgICAg
ICAgICAgICB5biAtPSBmZWVkYmFja1trXSAqIHlCdWZmZXJbbV07CisgICAgICAgIH0KKworICAg
ICAgICAvLyBIYW5kbGUgYW55IHJlbWFpbmluZyBmZWVkZm9yd2FyZCBvciBmZWVkYmFjayB0ZXJt
cy4KKyAgICAgICAgZm9yIChpbnQgayA9IG1pbkxlbmd0aDsgayA8IGZlZWRmb3J3YXJkTGVuZ3Ro
OyArK2spCisgICAgICAgICAgICB5biArPSBmZWVkZm9yd2FyZFtrXSAqIHhCdWZmZXJbKG1fYnVm
ZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5ndGggLSAxKV07CisgICAgICAgIGZvciAoaW50IGsg
PSBtaW5MZW5ndGg7IGsgPCBmZWVkYmFja0xlbmd0aDsgKytrKQorICAgICAgICAgICAgeW4gLT0g
ZmVlZGJhY2tba10gKiB5QnVmZmVyWyhtX2J1ZmZlckluZGV4IC0gaykgJiAoYnVmZmVyTGVuZ3Ro
IC0gMSldOworCisgICAgICAgIC8vIFNhdmUgdGhlIGN1cnJlbnQgaW5wdXQgYW5kIG91dHB1dCB2
YWx1ZXMgaW4gdGhlIG1lbW9yeSBidWZmZXJzIGZvciB0aGUKKyAgICAgICAgLy8gbmV4dCBvdXRw
dXQuCisgICAgICAgIG1feEJ1ZmZlclttX2J1ZmZlckluZGV4XSA9IHNvdXJjZVtuXTsKKyAgICAg
ICAgbV95QnVmZmVyW21fYnVmZmVySW5kZXhdID0geW47CisKKyAgICAgICAgbV9idWZmZXJJbmRl
eCA9IChtX2J1ZmZlckluZGV4ICsgMSkgJiAoYnVmZmVyTGVuZ3RoIC0gMSk7CisKKyAgICAgICAg
ZGVzdGluYXRpb25bbl0gPSB5bjsKKyAgICB9Cit9CisKK3ZvaWQgSUlSRmlsdGVyOjpnZXRGcmVx
dWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3ksIGZs
b2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCit7CisgICAgLy8gRXZhbHVh
dGUgdGhlIHotdHJhbnNmb3JtIG9mIHRoZSBmaWx0ZXIgYXQgdGhlIGdpdmVuIG5vcm1hbGl6ZWQg
ZnJlcXVlbmNpZXMKKyAgICAvLyBmcm9tIDAgdG8gMS4gKE9uZSBjb3JyZXNwb25kcyB0byB0aGUg
TnlxdWlzdCBmcmVxdWVuY3kuKQorICAgIC8vCisgICAgLy8gVGhlIHotdHJhbmZvcm0gb2YgdGhl
IGZpbHRlciBpcworICAgIC8vCisgICAgLy8gSCh6KSA9IHN1bShiW2tdKnpeKC1rKSwgaywgMCwg
TSkgLyBzdW0oYVtrXSp6XigtayksIGssIDAsIE4pOworICAgIC8vCisgICAgLy8gVGhlIGRlc2ly
ZWQgZnJlcXVlbmN5IHJlc3BvbnNlIGlzIEgoZXhwKGoqb21lZ2EpKSwgd2hlcmUgb21lZ2EgaXMg
aW4gWzAsCisgICAgLy8gMSkuCisgICAgLy8KKyAgICAvLyBMZXQgUCh4KSA9IHN1bShjW2tdKnhe
aywgaywgMCwgUCkgYmUgYSBwb2x5bm9taWFsIG9mIG9yZGVyIFAuIFRoZW4gZWFjaCBvZgorICAg
IC8vIHRoZSBzdW1zIGluIEgoeikgaXMgZXF1aXZhbGVudCB0byBldmFsdWF0aW5nIGEgcG9seW5v
bWlhbCBhdCB0aGUgcG9pbnQKKyAgICAvLyAxL3ouCisKKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAw
OyBrIDwgbGVuZ3RoOyArK2spIHsKKyAgICAgICAgaWYgKGZyZXF1ZW5jeVtrXSA8IDAgfHwgZnJl
cXVlbmN5W2tdID4gMSkgeworICAgICAgICAgICAgLy8gT3V0LW9mLWJvdW5kcyBmcmVxdWVuY2ll
cyBzaG91bGQgcmV0dXJuIE5hTi4KKyAgICAgICAgICAgIG1hZ1Jlc3BvbnNlW2tdID0gc3RkOjpu
YW5mKCIiKTsKKyAgICAgICAgICAgIHBoYXNlUmVzcG9uc2Vba10gPSBzdGQ6Om5hbmYoIiIpOwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLy8gelJlY2lwID0gMS96ID0gZXhwKC1qKmZy
ZXF1ZW5jeSkKKyAgICAgICAgICAgIGRvdWJsZSBvbWVnYSA9IC1waURvdWJsZSAqIGZyZXF1ZW5j
eVtrXTsKKyAgICAgICAgICAgIGF1dG8gelJlY2lwID0gc3RkOjpjb21wbGV4PGRvdWJsZT4oY29z
KG9tZWdhKSwgc2luKG9tZWdhKSk7CisKKyAgICAgICAgICAgIGF1dG8gbnVtZXJhdG9yID0gZXZh
bHVhdGVQb2x5bm9taWFsKG1fZmVlZGZvcndhcmQuZGF0YSgpLCB6UmVjaXAsIG1fZmVlZGZvcndh
cmQuc2l6ZSgpIC0gMSk7CisgICAgICAgICAgICBhdXRvIGRlbm9taW5hdG9yID0gZXZhbHVhdGVQ
b2x5bm9taWFsKG1fZmVlZGJhY2suZGF0YSgpLCB6UmVjaXAsIG1fZmVlZGJhY2suc2l6ZSgpIC0g
MSk7CisgICAgICAgICAgICBhdXRvIHJlc3BvbnNlID0gbnVtZXJhdG9yIC8gZGVub21pbmF0b3I7
CisgICAgICAgICAgICBtYWdSZXNwb25zZVtrXSA9IHN0YXRpY19jYXN0PGZsb2F0PihhYnMocmVz
cG9uc2UpKTsKKyAgICAgICAgICAgIHBoYXNlUmVzcG9uc2Vba10gPSBzdGF0aWNfY2FzdDxmbG9h
dD4oYXRhbjIoaW1hZyhyZXNwb25zZSksIHJlYWwocmVzcG9uc2UpKSk7CisgICAgICAgIH0KKyAg
ICB9Cit9CisKK2RvdWJsZSBJSVJGaWx0ZXI6OnRhaWxUaW1lKGRvdWJsZSBzYW1wbGVSYXRlLCBi
b29sIGlzRmlsdGVyU3RhYmxlKQoreworICAgIC8vIFRoZSBtYXhpbXVtIHRhaWwgdGltZS4gVGhp
cyBpcyBzb21ld2hhdCBhcmJpdHJhcnksIGJ1dCB3ZSdyZSBhc3N1bWluZyB0aGF0CisgICAgLy8g
bm8gb25lIGlzIGdvaW5nIHRvIGV4cGVjdCB0aGUgSUlSRmlsdGVyIHRvIHByb2R1Y2UgYW4gb3V0
cHV0IGFmdGVyIHRoaXMKKyAgICAvLyBtdWNoIHRpbWUgYWZ0ZXIgdGhlIGlucHV0cyBoYXZlIHN0
b3BwZWQuCisgICAgY29uc3RleHByIGRvdWJsZSBtYXhUYWlsVGltZSA9IDEwOworCisgICAgLy8g
SWYgdGhlIG1heGltdW0gYW1wbGl0dWRlIG9mIHRoZSBpbXB1bHNlIHJlc3BvbnNlIGlzIGxlc3Mg
dGhhbiB0aGlzLCB3ZQorICAgIC8vIGFzc3VtZSB0aGF0IHdlJ3ZlIHJlYWNoZWQgdGhlIHRhaWwg
b2YgdGhlIHJlc3BvbnNlLiBDdXJyZW50bHksIHRoaXMgbWVhbnMKKyAgICAvLyB0aGF0IHRoZSBp
bXB1bHNlIGlzIGxlc3MgdGhhbiAxIGJpdCBvZiBhIDE2LWJpdCBQQ00gdmFsdWUuCisgICAgY29u
c3RleHByIGZsb2F0IG1heFRhaWxBbXBsaXR1ZGUgPSAxIC8gMzI3NjguMDsKKworICAgIC8vIElm
IGZpbHRlciBpcyBub3Qgc3RhYmxlLCBqdXN0IHJldHVybiBtYXggdGFpbC4gU2luY2UgdGhlIGZp
bHRlciBpcyBub3QKKyAgICAvLyBzdGFibGUsIHRoZSBpbXB1bHNlIHJlc3BvbnNlIHdvbid0IGNv
bnZlcmdlIHRvIHplcm8sIHNvIHdlIGRvbid0IG5lZWQgdG8KKyAgICAvLyBmaW5kIHRoZSBpbXB1
bHNlIHJlc3BvbnNlIHRvIGZpbmQgdGhlIGFjdHVhbCB0YWlsIHRpbWUuCisgICAgaWYgKCFpc0Zp
bHRlclN0YWJsZSkKKyAgICAgICAgcmV0dXJuIG1heFRhaWxUaW1lOworCisgICAgLy8gSG93IHRv
IGNvbXB1dGUgdGhlIHRhaWwgdGltZT8gV2UncmUgZ29pbmcgdG8gZmlsdGVyIGFuIGltcHVsc2UK
KyAgICAvLyBmb3IgfG1heFRhaWxUaW1lfCBzZWNvbmRzLCBpbiBibG9ja3Mgb2Yga1JlbmRlclF1
YW50dW1GcmFtZXMgYXQKKyAgICAvLyBhIHRpbWUuIFRoZSBtYXhpbXVtIG1hZ25pdHVkZSBvZiB0
aGlzIGJsb2NrIGlzIHNhdmVkLiBBZnRlciBhbGwKKyAgICAvLyBvZiB0aGUgc2FtcGxlcyBoYXZl
IGJlZW4gY29tcHV0ZWQsIGZpbmQgdGhlIGxhc3QgYmxvY2sgd2l0aCBhCisgICAgLy8gbWF4aW11
bSBtYWduaXR1ZGUgZ3JlYXRlciB0aGFuIHxrTWF4VGFpbGVBbXBsaXR1ZGV8LiBUaGF0IGJsb2Nr
CisgICAgLy8gaW5kZXggKyAxIHdpbGwgYmUgdGhlIHRhaWwgdGltZS4gV2UgZG9uJ3QgbmVlZCB0
byBiZQorICAgIC8vIHN1cGVyLWFjY3VyYXRlIGluIGNvbXB1dGluZyB0aGUgdGFpbCB0aW1lIHNp
bmNlIHdlIHByb2Nlc3Mgb24KKyAgICAvLyBibG9ja3MsIGJsb2NrIGFjY3VyYWN5IGlzIGdvb2Qg
ZW5vdWdoLCBhbmQgdGhlIHZhbHVlIGp1c3QgbmVlZHMKKyAgICAvLyB0byBiZSBsYXJnZXIgdGhh
biB0aGUgInJlYWwiIHRhaWwgdGltZSwgc28gd2UgZG9uJ3QgcHJlbWF0dXJlbHkKKyAgICAvLyB6
ZXJvIG91dCB0aGUgb3V0cHV0IG9mIHRoZSBub2RlLgorCisgICAgLy8gTnVtYmVyIG9mIHJlbmRl
ciBxdWFudGEgbmVlZGVkIHRvIHJlYWNoIHRoZSBtYXggdGFpbCB0aW1lLgorICAgIGludCBudW1i
ZXJPZkJsb2NrcyA9IHN0ZDo6Y2VpbChzYW1wbGVSYXRlICogbWF4VGFpbFRpbWUgLyBpaXJSZW5k
ZXJpbmdRdWFudHVtKTsKKworICAgIC8vIElucHV0IGFuZCBvdXRwdXQgYnVmZmVycyBmb3IgZmls
dGVyaW5nLgorICAgIEF1ZGlvRmxvYXRBcnJheSBpbnB1dChpaXJSZW5kZXJpbmdRdWFudHVtKTsK
KyAgICBBdWRpb0Zsb2F0QXJyYXkgb3V0cHV0KGlpclJlbmRlcmluZ1F1YW50dW0pOworCisgICAg
Ly8gQXJyYXkgdG8gaG9sZCB0aGUgbWF4IG1hZ25pdHVkZXMKKyAgICBBdWRpb0Zsb2F0QXJyYXkg
bWFnbml0dWRlcyhudW1iZXJPZkJsb2Nrcyk7CisKKyAgICAvLyBDcmVhdGUgdGhlIGltcHVsc2Ug
aW5wdXQgc2lnbmFsLgorICAgIGlucHV0WzBdID0gMTsKKworICAgIC8vIFByb2Nlc3MgdGhlIGZp
cnN0IGJsb2NrIGFuZCBnZXQgdGhlIG1heCBtYWduaXR1ZGUgb2YgdGhlIG91dHB1dC4KKyAgICBw
cm9jZXNzKGlucHV0LmRhdGEoKSwgb3V0cHV0LmRhdGEoKSwgaWlyUmVuZGVyaW5nUXVhbnR1bSk7
CisgICAgVmVjdG9yTWF0aDo6dm1heG1ndihvdXRwdXQuZGF0YSgpLCAxLCAmbWFnbml0dWRlc1sw
XSwgaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisKKyAgICAvLyBQcm9jZXNzIHRoZSByZXN0IG9mIHRo
ZSBzaWduYWwsIGdldHRpbmcgdGhlIG1heCBtYWduaXR1ZGUgb2YgdGhlCisgICAgLy8gb3V0cHV0
IGZvciBlYWNoIGJsb2NrLgorICAgIGlucHV0WzBdID0gMDsKKworICAgIGZvciAoaW50IGsgPSAx
OyBrIDwgbnVtYmVyT2ZCbG9ja3M7ICsraykgeworICAgICAgICBwcm9jZXNzKGlucHV0LmRhdGEo
KSwgb3V0cHV0LmRhdGEoKSwgaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisgICAgICAgIFZlY3Rvck1h
dGg6OnZtYXhtZ3Yob3V0cHV0LmRhdGEoKSwgMSwgJm1hZ25pdHVkZXNba10sIGlpclJlbmRlcmlu
Z1F1YW50dW0pOworICAgIH0KKworICAgIC8vIERvbmUgY29tcHV0aW5nIHRoZSBpbXB1bHNlIHJl
c3BvbnNlOyByZXNldCB0aGUgc3RhdGUgc28gdGhlIGFjdHVhbCBub2RlCisgICAgLy8gc3RhcnRz
IGluIHRoZSBleHBlY3RlZCBpbml0aWFsIHN0YXRlLgorICAgIHJlc2V0KCk7CisKKyAgICAvLyBG
aW5kIHRoZSBsYXN0IGJsb2NrIHdpdGggYW1wbGl0dWRlIGdyZWF0ZXIgdGhhbiB0aGUgdGhyZXNo
b2xkLgorICAgIGludCBpbmRleCA9IG51bWJlck9mQmxvY2tzIC0gMTsKKyAgICBmb3IgKGludCBr
ID0gaW5kZXg7IGsgPj0gMDsgLS1rKSB7CisgICAgICAgIGlmIChtYWduaXR1ZGVzW2tdID4gbWF4
VGFpbEFtcGxpdHVkZSkgeworICAgICAgICAgICAgaW5kZXggPSBrOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvLyBUaGUgbWFnbml0dWRlIGZpcnN0IGJlY29t
ZSBsb3dlciB0aGFuIHRoZSB0aHJlc2hvbGQgYXQgdGhlIG5leHQgYmxvY2suCisgICAgLy8gQ29t
cHV0ZSB0aGUgY29ycmVzcG9uZGluZyB0aW1lIHZhbHVlIHZhbHVlOyB0aGF0J3MgdGhlIHRhaWwg
dGltZS4KKyAgICByZXR1cm4gKGluZGV4ICsgMSkgKiBpaXJSZW5kZXJpbmdRdWFudHVtIC8gc2Ft
cGxlUmF0ZTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSUlSRmlsdGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9JSVJGaWx0ZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMGJkN2RlNzFkYzI0YmVmMGFkMjFm
Y2YxNTg0ZWUwMmRmNjMwYjg1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vSUlSRmlsdGVyLmgKQEAgLTAsMCArMSw3NCBAQAorLyoKKyAqIENvcHlyaWdo
dCAyMDE2IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAq
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgor
ICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBJSVJGaWx0ZXIg
eworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAgIHN0YXRpYyBjb25z
dGV4cHIgc2l6ZV90IG1heE9yZGVyIHsgMjAgfTsKKyAgICBJSVJGaWx0ZXIoY29uc3QgVmVjdG9y
PGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2spOwor
CisgICAgdm9pZCByZXNldCgpOworCisgICAgdm9pZCBwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3Vy
Y2UsIGZsb2F0KiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2Vzcyk7CisgICAgdm9p
ZCBnZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5ndGgsIGNvbnN0IGZsb2F0KiBmcmVx
dWVuY3ksIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpOworICAgIGRv
dWJsZSB0YWlsVGltZShkb3VibGUgc2FtcGxlUmF0ZSwgYm9vbCBpc0ZpbHRlclN0YWJsZSk7CisK
KyAgICBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQoKSBjb25zdCB7IHJldHVybiBt
X2ZlZWRmb3J3YXJkOyB9CisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKCkgY29u
c3QgeyByZXR1cm4gbV9mZWVkYmFjazsgfQorCitwcml2YXRlOgorICAgIC8vIEZpbHRlciBtZW1v
cnkKKyAgICAvLworICAgIC8vIEZvciBzaW1wbGljaXR5LCB3ZSBhc3N1bWUgfG1feEJ1ZmZlcnwg
YW5kIHxtX3lCdWZmZXJ8IGhhdmUgdGhlIHNhbWUgbGVuZ3RoLAorICAgIC8vIGFuZCB0aGUgbGVu
Z3RoIGlzIGEgcG93ZXIgb2YgdHdvLiBTaW5jZSB0aGUgbnVtYmVyIG9mIGNvZWZmaWNpZW50cyBo
YXMgYQorICAgIC8vIGZpeGVkIHVwcGVyIGxlbmd0aCwgdGhlIHNpemUgb2YgeEJ1ZmZlciBhbmQg
eUJ1ZmZlciBpcyBmaXhlZC4gfG1feEJ1ZmZlcnwKKyAgICAvLyBob2xkcyB0aGUgb2xkIGlucHV0
IHZhbHVlcyBhbmQgfG1feUJ1ZmZlcnwgaG9sZHMgdGhlIG9sZCBvdXRwdXQgdmFsdWVzCisgICAg
Ly8gbmVlZGVkIHRvIGNvbXB1dGUgdGhlIG5ldyBvdXRwdXQgdmFsdWUuCisgICAgLy8KKyAgICAv
LyBtX3lCdWZmZXJbbV9idWZmZXJJbmRleF0gaG9sZHMgdGhlIG1vc3QgcmVjZW50IG91dHB1dCB2
YWx1ZSwgc2F5LCB5W25dLgorICAgIC8vIFRoZW4gbV95QnVmZmVyW21fYnVmZmVySW5kZXggLSBr
XSBpcyB5W24gLSBrXS4gU2ltaWxhcmx5IGZvciBtX3hCdWZmZXIuCisgICAgLy8KKyAgICAvLyBU
byBtaW5pbWl6ZSByb3VuZG9mZiwgdGhlc2UgYXJyYXlzIGFyZSBkb3VibGUncyBpbnN0ZWFkIG9m
IGZsb2F0cy4KKyAgICBWZWN0b3I8ZG91YmxlPiBtX3hCdWZmZXI7CisgICAgVmVjdG9yPGRvdWJs
ZT4gbV95QnVmZmVyOworCisgICAgLy8gSW5kZXggaW50byB0aGUgeEJ1ZmZlciBhbmQgeUJ1ZmZl
ciBhcnJheXMgd2hlcmUgdGhlIG1vc3QgY3VycmVudCB4IGFuZCB5CisgICAgLy8gdmFsdWVzIHNo
b3VsZCBiZSBzdG9yZWQuIHhCdWZmZXJbYnVmZmVySW5kZXhdIGNvcnJlc3BvbmRzIHRvIHhbbl0s
IHRoZQorICAgIC8vIGN1cnJlbnQgeCBpbnB1dCB2YWx1ZSBhbmQgeUJ1ZmZlcltidWZmZXJJbmRl
eF0gaXMgd2hlcmUgeVtuXSwgdGhlIGN1cnJlbnQKKyAgICAvLyBvdXRwdXQgdmFsdWUuCisgICAg
c2l6ZV90IG1fYnVmZmVySW5kZXggeyAwIH07CisKKyAgICAvLyBUaG9zZSBWZWN0b3JzIGFyZSBv
d25lZCBieSB0aGUgSUlSUHJvY2Vzcywgd2hpY2ggb3ducyB0aGUgSUlSRmlsdGVycyB2aWEKKyAg
ICAvLyB0aGUgSUlSRFNQS2VybmVscy4gVGhpcyBpcyBhIG1lbW9yeSBvcHRpbWl6YXRpb24gdG8g
YXZvaWQgaGF2aW5nIGNvcGllcworICAgIC8vIG9mIHRoZXNlIHZlY3RvcnMgaW4gZWFjaCBJSVJE
U1BLZXJuZWwgLyBJSVJGaWx0ZXIuCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIG1fZmVlZGZv
cndhcmQ7CisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIG1fZmVlZGJhY2s7Cit9OworCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9JbWFnZVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvSW1hZ2VVdGlsaXRpZXMuaAppbmRleCA5YjE4Y2FhOGQ4NmJmOGQyNzUzYzNjYmVjYTVkNzQ0
NGZhZjk4MWQ3Li4wM2NmMTE3ZDU0ZDQxOTE4NWQ0YThmMDI0NjA0NzU0NTgwYzUxZDc3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVzLmgK
QEAgLTI1LDYgKzI1LDkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDx3dGYvRm9yd2Fy
ZC5oPgorI2luY2x1ZGUgPHd0Zi9Xb3JrUXVldWUuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBXRUJDT1JFX0VYUE9SVCBXb3JrUXVldWUmIHNoYXJlZEltYWdlVHJhbnNjb2RpbmdRdWV1ZSgp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNTdhNjEyNTFjYjRiMzM2ZDM5MjJl
YzUyYWJmYTliNjZjMjY0NzE4Ny4uMTkzYzdiYzRkOTllODc3OTQ1MjdkZTI2ODA5MTk4ODVjOTZh
MzljMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIw
MjAtMDgtMjUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBJSVJG
aWx0ZXJOb2RlIGludGVyZmFjZSBpcyBub3Qgc3VwcG9ydGVkCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU4MTAKKworICAgICAgICBSZXZpZXdlZCBi
eSBEYXJpbiBBZGxlci4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyB0aGF0IGFyZSBu
b3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxo
YXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNl
L2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWly
ZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmls
dGVyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWdldEZy
ZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvdGVz
dC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wOC0yNCAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFVwZGF0ZSBpT1MgbGF5
b3V0IHRlc3QgcmVzdWx0cyBhZnRlciByMjY2MDg3CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA3ZTk3
Mjg3OTA5YWYzNmFkNzBjOGFmN2ViYmMyYjZlNTM3YTEyYWVkLi5mMDIyMTgxMDI3MzAyOTZkYmJi
ZjFkYzJlOTg4NWE4N2M3NDBlOTBhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0
YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMzNSw2ICszMzUs
OSBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlLwogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJh
dGUtZGVsYXkuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2st
cmF0ZS1nYWluLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCisjIG9uZS1wb2xlIHN1YnRlc3QgaXMg
Zmxha2lseSBmYWlsaW5nLgoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXIuaHRt
bCBbIFBhc3MgRmFpbHVyZSBdCisKICMgVGhpcyB0ZXN0IHBhc3NlcyBidXQgcHJpbnRzIGEgZGlm
ZmVyZW50IHZhbHVlIGFsbW9zdCBldmVyeSB0aW1lLgogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFj
ZS9jb252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53
aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDVlOTEyMzJmODdjZDdlMGEwZGFmZTI5MDE4NjU0N2Iz
ZjNhZjY1MTguLjgxNzQ5NDU1MTY4NDIwNGQyNWJjNDhkMTExZjRkYjJhYjBjYjRhZTcgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRw
cy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0zMyw3ICszMyw3IEBAIFBBU1MgQmFzZUF1ZGlvQ29u
dGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVDb252b2x2ZXIoKQogUEFTUyBCYXNlQXVk
aW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJs
ZSkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlRHlu
YW1pY3NDb21wcmVzc29yKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVy
YXRpb24gY3JlYXRlR2FpbigpIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3Bl
cmF0aW9uIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+
KSBhc3NlcnRfb3duX3Byb3BlcnR5OiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCBtaXNzaW5n
IG5vbi1zdGF0aWMgb3BlcmF0aW9uIGV4cGVjdGVkIHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIi
IG1pc3NpbmcKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVh
dGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgCiBQQVNTIEJh
c2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlT3NjaWxsYXRvcigpIAog
UEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZVBhbm5lcigp
IAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZVBlcmlv
ZGljV2F2ZShzZXF1ZW5jZTxmbG9hdD4sIHNlcXVlbmNlPGZsb2F0Piwgb3B0aW9uYWwgUGVyaW9k
aWNXYXZlQ29uc3RyYWludHMpIApAQCAtOTQsOCArOTQsOCBAQCBQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlRGVsYXko
b3B0aQogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVEZWxh
eShvcHRpb25hbCBkb3VibGUpIG9uIGNvbnRleHQgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0
IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRl
eHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVEeW5hbWljc0NvbXByZXNzb3IoKSIgd2l0
aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250
ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlR2FpbigpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKLUZBSUwgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8
ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkg
ImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJTCBCYXNl
QXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8
ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgb24gY29udGV4dCB3aXRoIHRvbyBmZXcgYXJndW1l
bnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImNyZWF0
ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBCYXNlQXVkaW9D
b250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUlJ
UkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgCitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0
ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSBvbiBjb250ZXh0
IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNTIEJhc2VB
dWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3Jl
YXRlT3NjaWxsYXRvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29u
dGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVQYW5u
ZXIoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJm
YWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlUGVyaW9kaWNXYXZlKHNl
cXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25z
dHJhaW50cykiIHdpdGggdGhlIHByb3BlciB0eXBlIApAQCAtMTQ3LDggKzE0Nyw4IEBAIFBBU1Mg
QmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEs
IHNhbXBsZV9yYXRlKSBtdXN0CiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxs
aW5nIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJsZSkgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRl
eHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBU
eXBlRXJyb3IgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1
ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVh
dGVEeW5hbWljc0NvbXByZXNzb3IoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VB
dWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1w
bGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVHYWluKCkiIHdpdGggdGhlIHBy
b3BlciB0eXBlIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVB
dWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3Jl
YXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIi
IG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KLUZBSUwgQmFzZUF1ZGlvQ29udGV4dCBpbnRl
cmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNl
PGRvdWJsZT4pIG9uIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSB3
aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9pbmhlcml0
czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFp
bgorUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRl
eHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlSUlSRmls
dGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlS
RmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIG9uIG5ldyBPZmZsaW5l
QXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11
c3QgdGhyb3cgVHlwZUVycm9yIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3
IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAiY3JlYXRlT3NjaWxsYXRvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFz
ZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNh
bXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZVBhbm5lcigpIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZs
aW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkg
ImNyZWF0ZVBlcmlvZGljV2F2ZShzZXF1ZW5jZTxmbG9hdD4sIHNlcXVlbmNlPGZsb2F0Piwgb3B0
aW9uYWwgUGVyaW9kaWNXYXZlQ29uc3RyYWludHMpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKQEAg
LTc0NCw0MCArNzQ0LDQwIEBAIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5Ob2Rl
KGNvbnRleHQpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPCiBQQVNTIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQgcHJvcGVydHkg
ImNoYW5uZWxDb3VudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEF1ZGlvTm9kZSBpbnRl
cmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5u
ZWxDb3VudE1vZGUiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgR2Fpbk5vZGUoY29udGV4dCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVs
SW50ZXJwcmV0YXRpb24iIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBJSVJGaWx0ZXJOb2Rl
IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3Qg
YXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlS
RmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZB
SUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2Ugb2JqZWN0IGxlbmd0aCBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBl
Y3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2Rl
IGludGVyZmFjZSBvYmplY3QgbmFtZSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90
IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlS
RmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3Rl
bmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IGFzc2VydF9v
d25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5v
ZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZp
bHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNl
IHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0b3IiIHByb3BlcnR5IGFzc2VydF9vd25fcHJv
cGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4
cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5v
ZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3Rv
dHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IGFzc2VydF9vd25fcHJvcGVydHk6
IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVk
IHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50
ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBGbG9h
dDMyQXJyYXksIEZsb2F0MzJBcnJheSkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5v
dCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJ
UkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBtdXN0IGJlIHByaW1hcnkg
aW50ZXJmYWNlIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hl
biBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVu
Y2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgU3RyaW5n
aWZpY2F0aW9uIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hl
biBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVu
Y2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgSUlSRmls
dGVyTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJnZXRGcmVxdWVu
Y3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSIgd2l0
aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hl
biBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVu
Y2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgSUlSRmls
dGVyTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFy
cmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJn
dW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhj
ZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVj
dCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1G
QUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25u
ZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5zaWduZWQg
bG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhj
ZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVj
dCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1G
QUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgY29ubmVjdChBdWRpb05vZGUsIG9wdGlv
bmFsIHVuc2lnbmVkIGxvbmcsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0
ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0
b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4
cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0
IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0
ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250
ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAiY29ubmVjdChBdWRpb1BhcmFtLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBl
dmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VF
cnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2Rl
IGludGVyZmFjZTogY2FsbGluZyBjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVk
IGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJv
ciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2Jq
ZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCgpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcg
b2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNl
OiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6
IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCh1bnNpZ25lZCBsb25nKSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24g
d2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVk
aW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIG9uIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1
YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVy
Tm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUpIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2Jq
ZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBj
YWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9Ob2RlKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVu
dHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
QXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5l
Y3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0
X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBl
Y3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJp
YWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBk
aXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcg
YXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQg
ZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9i
amVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUi
Ci1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtm
ZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJk
aXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZykiIHdpdGgg
dGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4g
ZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNl
RXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcs
IHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93
IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50
ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVl
ZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFt
KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
QXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0pIG9uIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1
YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVy
Tm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBsb25nKSIgd2l0
aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hl
biBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVu
Y2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9O
b2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxv
bmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVk
YmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBh
c3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0
IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcg
SUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0p
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY29udGV4dCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNz
ZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBl
eHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2
YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBt
dXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJlck9mSW5wdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2Jq
ZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPdXRwdXRzIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50IiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50
ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVl
ZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0
aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hl
biBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVu
Y2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9O
b2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBb
MV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxJbnRlcnBy
ZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBl
eGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2Jq
ZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIK
K1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2Ugb2JqZWN0IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3Qg
bGVuZ3RoIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbmFtZSAKK1BBU1Mg
SUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRl
cmZhY2UgcHJvdG90eXBlIG9iamVjdCAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4
aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJj
b25zdHJ1Y3RvciIgcHJvcGVydHkgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlz
dGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVu
c2NvcGFibGVzIHByb3BlcnR5IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogb3BlcmF0
aW9uIGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5LCBGbG9h
dDMyQXJyYXkpIAorUEFTUyBJSVJGaWx0ZXJOb2RlIG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ug
b2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNr
OiBbMV19KSAKK1BBU1MgU3RyaW5naWZpY2F0aW9uIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRl
eHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgCitQQVNTIElJUkZpbHRlck5v
ZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsx
XSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZ2V0RnJlcXVlbmN5UmVz
cG9uc2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkiIHdpdGggdGhl
IHByb3BlciB0eXBlIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogY2FsbGluZyBnZXRG
cmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5
KSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQ
QVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25u
ZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5zaWduZWQg
bG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBj
YWxsaW5nIGNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nLCBvcHRpb25h
bCB1bnNpZ25lZCBsb25nKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndh
cmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJv
dyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBj
b25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0
ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0
b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGlu
dGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZl
ZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoKSIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJO
b2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KHVuc2ln
bmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1
ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUpIG9uIG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
d2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9O
b2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBb
MV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVk
aW9Ob2RlLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxv
bmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVk
YmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAK
K1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2Zl
ZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRp
c2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29u
bmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0
aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2Rl
IGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Q
YXJhbSkiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBj
YWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1l
bnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcg
SUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0p
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBs
b25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNh
bGxpbmcgZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBsb25nKSBvbiBuZXcgSUlSRmls
dGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGgg
dG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBp
bnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb250ZXh0IiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQg
cHJvcGVydHkgIm51bWJlck9mSW5wdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVk
aW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJlck9mT3V0
cHV0cyIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnQiIHdpdGggdGhlIHByb3BlciB0
eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsSW50ZXJwcmV0
YXRpb24iIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJj
ZU5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9i
amVjdCAKIFBBU1MgTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlIGludGVyZmFjZSBvYmplY3Qg
bGVuZ3RoIAogUEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUgaW50ZXJmYWNlIG9iamVj
dCBuYW1lIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFj
ZS9jdG9yLWlpcmZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5v
ZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAppbmRleCBlOTAxYTJjNDQz
MTYwMzA2Mjk2ZGQwNzM0MTMxMTE3NTdlZjczOTAyLi43YWU3N2MxYzIyOTFkODEwODIyNTQ1ZjI0
Mzc3MmFhOWFkOGY2MjA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUt
aW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dApAQCAt
MiwyNyArMiw1NiBAQAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBF
eGVjdXRpbmcgImluaXRpYWxpemUiIAogUEFTUyBFeGVjdXRpbmcgImludmFsaWQgY29uc3RydWN0
b3IiIAotRkFJTCBFeGVjdXRpbmcgImRlZmF1bHQgY29uc3RydWN0b3IiIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogUmlnaHQg
aGFuZCBzaWRlIG9mIGluc3RhbmNlb2YgaXMgbm90IGFuIG9iamVjdCIKLUZBSUwgRXhlY3V0aW5n
ICJ0ZXN0IEF1ZGlvTm9kZU9wdGlvbnMiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmpl
Y3QgKGV2YWx1YXRpbmcgJ25vZGUuY2hhbm5lbENvdW50JykiCitQQVNTIEV4ZWN1dGluZyAiZGVm
YXVsdCBjb25zdHJ1Y3RvciIgCitQQVNTIEV4ZWN1dGluZyAidGVzdCBBdWRpb05vZGVPcHRpb25z
IiAKIFBBU1MgRXhlY3V0aW5nICJjb25zdHJ1Y3RvciBvcHRpb25zIiAKLUZBSUwgRXhlY3V0aW5n
ICJmdW5jdGlvbmFsaXR5IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmls
dGVyTm9kZSIKK1BBU1MgRXhlY3V0aW5nICJmdW5jdGlvbmFsaXR5IiAKIFBBU1MgQXVkaXQgcmVw
b3J0IAogUEFTUyA+IFtpbml0aWFsaXplXSAgCiBQQVNTICAgY29udGV4dCA9IG5ldyBPZmZsaW5l
QXVkaW9Db250ZXh0KC4uLikgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyA8IFtp
bml0aWFsaXplXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAog
UEFTUyA+IFtpbnZhbGlkIGNvbnN0cnVjdG9yXSAgCi1QQVNTICAgbmV3IElJUkZpbHRlck5vZGUo
KSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1
YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oKScpIi4gCi1QQVNTICAgbmV3IElJUkZpbHRlck5vZGUo
MSkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9yIChldmFs
dWF0aW5nICduZXcgd2luZG93W25hbWVdKDEpJykiLiAKLVBBU1MgICBuZXcgSUlSRmlsdGVyTm9k
ZShjb250ZXh0LCA0MikgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhIGNvbnN0
cnVjdG9yIChldmFsdWF0aW5nICduZXcgd2luZG93W25hbWVdKGNvbnRleHQsIDQyKScpIi4gCitQ
QVNTICAgbmV3IElJUkZpbHRlck5vZGUoKSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5vdWdoIGFy
Z3VtZW50cyIuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKDEpIHRocmV3IFR5cGVFcnJvcjog
Ik5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwgNDIpIHRocmV3IFR5cGVFcnJvcjogIlR5cGUgZXJyb3IiLiAKIFBBU1MgPCBbaW52YWxpZCBj
b25zdHJ1Y3Rvcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMyBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbZGVmYXVsdCBjb25zdHJ1Y3Rvcl0gIAotRkFJTCBYIG5vZGUwID0gbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJmZWVkYmFjayI6WzEsLTAuOV19
KSBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3Ry
dWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oY29udGV4dCwgb3B0aW9ucy5jb25z
dHJ1Y3Rvck9wdGlvbnMpJykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
K1BBU1MgICBub2RlMCA9IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHsiZmVlZGZvcndhcmQi
OlsxXSwiZmVlZGJhY2siOlsxLC0wLjldfSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAor
UEFTUyAgIG5vZGUwIGluc3RhbmNlb2YgSUlSRmlsdGVyTm9kZSBpcyBlcXVhbCB0byB0cnVlLiAK
K1BBU1MgICBub2RlMC5udW1iZXJPZklucHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBub2Rl
MC5udW1iZXJPZk91dHB1dHMgaXMgZXF1YWwgdG8gMS4gCitQQVNTICAgbm9kZTAuY2hhbm5lbENv
dW50IGlzIGVxdWFsIHRvIDIuIAorUEFTUyAgIG5vZGUwLmNoYW5uZWxDb3VudE1vZGUgaXMgZXF1
YWwgdG8gbWF4LiAKK1BBU1MgICBub2RlMC5jaGFubmVsSW50ZXJwcmV0YXRpb24gaXMgZXF1YWwg
dG8gc3BlYWtlcnMuIAorUEFTUyA8IFtkZWZhdWx0IGNvbnN0cnVjdG9yXSBBbGwgYXNzZXJ0aW9u
cyBwYXNzZWQuICh0b3RhbCA3IGFzc2VydGlvbnMpIAogUEFTUyA+IFt0ZXN0IEF1ZGlvTm9kZU9w
dGlvbnNdICAKLUZBSUwgWCBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50OiAxN30p
IGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1
Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tub2RlTmFtZV0nKSIuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFu
bmVsQ291bnQ6IDE3fSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUu
Y2hhbm5lbENvdW50IGlzIGVxdWFsIHRvIDE3LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShj
LCB7Y2hhbm5lbENvdW50OiAwfSkgdGhyZXcgSW52YWxpZFN0YXRlRXJyb3I6ICJUaGUgb2JqZWN0
IGlzIGluIGFuIGludmFsaWQgc3RhdGUuIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywg
e2NoYW5uZWxDb3VudDogOTl9KSB0aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogIlRoZSBvYmplY3Qg
aXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4iLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7
Y2hhbm5lbENvdW50TW9kZTogIm1heCJ9IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BB
U1MgICBub2RlLmNoYW5uZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BBU1MgICBuZXcg
SUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50TW9kZTogIm1heCJ9KSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVyIHZhbGlk
IHNldHRlciBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtj
aGFubmVsQ291bnRNb2RlOiAiY2xhbXBlZC1tYXgifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciB2YWxpZCBzZXR0ZXIgaXMg
ZXF1YWwgdG8gY2xhbXBlZC1tYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFu
bmVsQ291bnRNb2RlOiAiZXhwbGljaXQifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAor
UEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciB2YWxpZCBzZXR0ZXIgaXMgZXF1YWwg
dG8gZXhwbGljaXQuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRN
b2RlOiAiZm9vYmFyIn0gdGhyZXcgVHlwZUVycm9yOiAiVHlwZSBlcnJvciIuIAorUEFTUyAgIG5v
ZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciBpbnZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBleHBs
aWNpdC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnByZXRhdGlv
bjogInNwZWFrZXJzIn0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2Rl
LmNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNTICAgbmV3
IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnByZXRhdGlvbjogImRpc2NyZXRlIn0pIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRlcnByZXRh
dGlvbiBpcyBlcXVhbCB0byBkaXNjcmV0ZS4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywg
e2NoYW5uZWxJbnRlcnByZXRhdGlvbjogImZvb2JhciJ9KSB0aHJldyBUeXBlRXJyb3I6ICJUeXBl
IGVycm9yIi4gCitQQVNTICAgbm9kZS5jaGFubmVsSW50ZXJwcmV0YXRpb24gYWZ0ZXIgaW52YWxp
ZCBzZXR0ZXIgaXMgZXF1YWwgdG8gZGlzY3JldGUuIAorUEFTUyA8IFt0ZXN0IEF1ZGlvTm9kZU9w
dGlvbnNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIwIGFzc2VydGlvbnMpIAogUEFT
UyA+IFtjb25zdHJ1Y3RvciBvcHRpb25zXSAgCi1GQUlMIFggbm9kZSA9IG5ldyBJSVJGaWx0ZXJO
b2RlKCwgeyJmZWVkYmFjayI6WzEsMC41XX0pIHRocmV3ICJSZWZlcmVuY2VFcnJvciIgaW5zdGVh
ZCBvZiBFY21hU2NyaXB0IGVycm9yIFR5cGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFggbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHsiZmVlZGZv
cndhcmQiOlsxLDAuNV19KSB0aHJldyAiUmVmZXJlbmNlRXJyb3IiIGluc3RlYWQgb2YgRWNtYVNj
cmlwdCBlcnJvciBUeXBlRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQotRkFJTCA8IFtjb25zdHJ1Y3RvciBvcHRpb25zXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5v
ZGUgPSBuZXcgSUlSRmlsdGVyTm9kZSgsIHsiZmVlZGJhY2siOlsxLDAuNV19KSB0aHJldyBUeXBl
RXJyb3I6ICJNZW1iZXIgSUlSRmlsdGVyT3B0aW9ucy5mZWVkZm9yd2FyZCBpcyByZXF1aXJlZCBh
bmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBzZXF1ZW5jZSIuIAorUEFTUyAgIG5vZGUgPSBuZXcg
SUlSRmlsdGVyTm9kZShjLCB7ImZlZWRmb3J3YXJkIjpbMSwwLjVdfSkgdGhyZXcgVHlwZUVycm9y
OiAiTWVtYmVyIElJUkZpbHRlck9wdGlvbnMuZmVlZGJhY2sgaXMgcmVxdWlyZWQgYW5kIG11c3Qg
YmUgYW4gaW5zdGFuY2Ugb2Ygc2VxdWVuY2UiLiAKK1BBU1MgPCBbY29uc3RydWN0b3Igb3B0aW9u
c10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBb
ZnVuY3Rpb25hbGl0eV0gIAotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAzIG91
dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK1BBU1MgICBPdXRwdXQgb2YgZmlsdGVyIHVzaW5nIG5ldyBJSVJGaWx0ZXIoLi4uKSBp
cyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMDU3NTY0MDM1MDU4MDIxNTQ1LDAuMTQzNzE5
MTk2MzE5NTgwMDgsMC4yMTUwMDY2MzQ1OTMwMDk5NSwwLjI5Mjc3NjU4NDYyNTI0NDE0LDAuMzY1
OTc3NzkzOTMxOTYxMDYsMC40Mzk3NjQyMzE0NDM0MDUxNSwwLjUxMTE5MjczOTAwOTg1NzIsMC41
ODEzNzU1OTg5MDc0NzA3LDAuNjQ5NDA1ODM3MDU5MDIxLDAuNzE1Mzk0NDk2OTE3NzI0NiwwLjc3
ODk1NDU2NTUyNTA1NDksMC44Mzk5NTk1MDIyMjAxNTM4LDAuODk4MTY0Njg5NTQwODYzLDAuOTUz
Mzk4NDA2NTA1NTg0NywxLjAwNTQ2NjY5OTYwMDIxOTcuLi5dLiAKK1BBU1MgPCBbZnVuY3Rpb25h
bGl0eV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKK1BBU1Mg
IyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogNiB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJm
aWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWlu
dGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0CmluZGV4IDQ1MzRjODNmZDQ1Zjhk
MGNlMjI2NDY2YWQ3MWNmMjYyZTljZjU0NTIuLjViOTM3NGI5OWQyMDRkNjRjZjg3YTYxOTkzOWNj
M2U4NmJiMTYzMWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRl
cmZhY2UvaWlyZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlp
cmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQKQEAgLTIs
MzMgKzIsNDQgQEAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhl
Y3V0aW5nICJpbml0aWFsaXplIiAKIFBBU1MgRXhlY3V0aW5nICJleGlzdGVuY2UiIAotRkFJTCBF
eGVjdXRpbmcgInBhcmFtZXRlcnMiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3
aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoY29lZiwgY29lZikn
LCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCitQQVNTIEV4ZWN1dGlu
ZyAicGFyYW1ldGVycyIgCiBQQVNTIEV4ZWN1dGluZyAiZXhjZXB0aW9ucy1jcmVhdGVJSVJGaWx0
ZXIiIAotRkFJTCBFeGVjdXRpbmcgImV4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YSIgcHJvbWlz
ZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9y
OiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlcihjb2VmLCBjb2VmKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicg
aXMgdW5kZWZpbmVkKSIKK1BBU1MgRXhlY3V0aW5nICJleGNlcHRpb25zLWdldEZyZXF1ZW5jeURh
dGEiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW2luaXRpYWxpemVdICAKIFBBU1MgICBJ
bml0aWFsaXplIGNvbnRleHQgZm9yIHRlc3RpbmcgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAogUEFTUyA8IFtpbml0aWFsaXplXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFz
c2VydGlvbnMpIAogUEFTUyA+IFtleGlzdGVuY2VdICAKLUZBSUwgWCBjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlciBkb2VzIG5vdCBleGlzdC4gR290IHVuZGVmaW5lZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2V4aXN0ZW5jZV0gMSBvdXQgb2YgMSBhc3NlcnRp
b25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BB
U1MgICBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBkb2VzIGV4aXN0LiAKK1BBU1MgPCBbZXhpc3Rl
bmNlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+
IFtwYXJhbWV0ZXJzXSAgCitQQVNTICAgbnVtYmVyT2ZJbnB1dHMgaXMgZXF1YWwgdG8gMS4gCitQ
QVNTICAgbnVtYmVyT2ZPdXRwdXRzIGlzIGVxdWFsIHRvIDEuIAorUEFTUyAgIGNoYW5uZWxDb3Vu
dE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BBU1MgICBjaGFubmVsSW50ZXJwcmV0YXRpb24gaXMg
ZXF1YWwgdG8gc3BlYWtlcnMuIAorUEFTUyA8IFtwYXJhbWV0ZXJzXSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyA+IFtleGNlcHRpb25zLWNyZWF0ZUlJ
UkZpbHRlcl0gIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcigpIHRocmV3IFR5cGVFcnJvcjogImNv
bnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyKCknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCki
LiAKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxKSkgdGhyZXcgVHlw
ZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxKSknLCAnY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIo
bnVsbCwgbnVsbCkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIobnVsbCwgbnVsbCkn
LCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLUZBSUwgWCBjcmVh
dGVJSVJGaWx0ZXIoW10sIFtdKSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBv
cnRlZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBj
cmVhdGVJSVJGaWx0ZXIoWzFdLCBbXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RT
dXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlM
IFggY3JlYXRlSUlSRmlsdGVyKFtdLCBbMV0pIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2Yg
Tm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIwKSwgbmV3IEZsb2F0MzJB
cnJheSgyMCkpIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlS
RmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGZi
LCBmYiknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIobmV3
IEZsb2F0MzJBcnJheSgyMSksIFsxXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RT
dXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlM
IFggY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyMSkpIHRocmV3ICJUeXBl
RXJyb3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbMV0sIG5ldyBGbG9hdDMy
QXJyYXkoMikpIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgSW52YWxpZFN0YXRlRXJyb3Iu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZp
bHRlcihuZXcgRmxvYXQzMkFycmF5KDEwKSwgWzFdKSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFk
IG9mIEludmFsaWRTdGF0ZUVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgTmFOLCBJbmZpbml0eV0pIHRocmV3
IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEsIEluZmluaXR5LCBOYU5dKScsICdj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAgIGNyZWF0ZUlJ
UkZpbHRlcihbMSwgTmFOLCBJbmZpbml0eV0sIFsxXSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXIoWzEsIEluZmluaXR5LCBOYU5dLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyJyBpcyB1bmRlZmluZWQpIi4gCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCAnYWJjJywg
W11dLCBbMV0pIHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxLCAnYWJjJywgW11d
LCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gCi1GQUlM
IDwgW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVyXSA4IG91dCBvZiAxNCBhc3NlcnRpb25zIHdl
cmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBj
cmVhdGVJSVJGaWx0ZXIoKSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5vdWdoIGFyZ3VtZW50cyIu
IAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBl
RXJyb3I6ICJOb3QgZW5vdWdoIGFyZ3VtZW50cyIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihu
dWxsLCBudWxsKSB0aHJldyBUeXBlRXJyb3I6ICJWYWx1ZSBpcyBub3QgYSBzZXF1ZW5jZSIuIAor
UEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbXSwgW10pIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAi
ZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAK
K1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbXSkgdGhyZXcgTm90U3VwcG9ydGVkRXJyb3I6
ICJmZWVkYmFjayBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCIuIAor
UEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbXSwgWzFdKSB0aHJldyBOb3RTdXBwb3J0ZWRFcnJvcjog
ImZlZWRmb3J3YXJkIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDIwIi4g
CitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMjApLCBuZXcgRmxvYXQz
MkFycmF5KDIwKSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGNyZWF0ZUlJ
UkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIxKSwgWzFdKSB0aHJldyBOb3RTdXBwb3J0ZWRFcnJv
cjogImZlZWRmb3J3YXJkIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDIw
Ii4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyMSkpIHRo
cmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGJhY2sgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3Ro
IGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBuZXcgRmxv
YXQzMkFycmF5KDIpKSB0aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogImZpcnN0IHZhbHVlIG9mIGZl
ZWRiYWNrIGFycmF5IGNhbm5vdCBiZSB6ZXJvIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5l
dyBGbG9hdDMyQXJyYXkoMTApLCBbMV0pIHRocmV3IEludmFsaWRTdGF0ZUVycm9yOiAiZmVlZGZv
cndhcmQgYXJyYXkgbXVzdCBjb250YWluIGEgbm9uLXplcm8gdmFsdWUiLiAKK1BBU1MgICBjcmVh
dGVJSVJGaWx0ZXIoWzFdLCBbMSwgTmFOLCBJbmZpbml0eV0pIHRocmV3IFR5cGVFcnJvcjogIlRo
ZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVy
KFsxLCBOYU4sIEluZmluaXR5XSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJUaGUgcHJvdmlkZWQg
dmFsdWUgaXMgbm9uLWZpbml0ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMSwgJ2FiYycs
IFtdXSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJUaGUgcHJvdmlkZWQgdmFsdWUgaXMgbm9uLWZp
bml0ZSIuIAorUEFTUyA8IFtleGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlcl0gQWxsIGFzc2VydGlv
bnMgcGFzc2VkLiAodG90YWwgMTQgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4Y2VwdGlvbnMtZ2V0
RnJlcXVlbmN5RGF0YV0gIAotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAyIG91
dCBvZiA1IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShudWxsLCBuZXcgRmxvYXQzMkFycmF5
KDEpLCBuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJBcmd1bWVudCAxICgn
ZnJlcXVlbmN5SHonKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNlIG11c3Qg
YmUgYW4gaW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVlbmN5UmVz
cG9uc2UobmV3IEZsb2F0MzJBcnJheSgxKSwgbnVsbCwgbmV3IEZsb2F0MzJBcnJheSgxKSkgdGhy
ZXcgVHlwZUVycm9yOiAiQXJndW1lbnQgMiAoJ21hZ1Jlc3BvbnNlJykgdG8gSUlSRmlsdGVyTm9k
ZS5nZXRGcmVxdWVuY3lSZXNwb25zZSBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIEZsb2F0MzJBcnJh
eSIuIAorUEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMSksIG5l
dyBGbG9hdDMyQXJyYXkoMSksIG51bGwpIHRocmV3IFR5cGVFcnJvcjogIkFyZ3VtZW50IDMgKCdw
aGFzZVJlc3BvbnNlJykgdG8gSUlSRmlsdGVyTm9kZS5nZXRGcmVxdWVuY3lSZXNwb25zZSBtdXN0
IGJlIGFuIGluc3RhbmNlIG9mIEZsb2F0MzJBcnJheSIuIAorUEFTUyAgIGdldEZyZXF1ZW5jeVJl
c3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBuZXcgRmxvYXQzMkFycmF5KDEpLCBuZXcgRmxv
YXQzMkFycmF5KDIwKSkgdGhyZXcgSW52YWxpZEFjY2Vzc0Vycm9yOiAiQXJyYXlzIG11c3QgaGF2
ZSB0aGUgc2FtZSBsZW5ndGgiLiAKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShuZXcgRmxv
YXQzMkFycmF5KDEwKSwgbmV3IEZsb2F0MzJBcnJheSgyMCksIG5ldyBGbG9hdDMyQXJyYXkoMSkp
IHRocmV3IEludmFsaWRBY2Nlc3NFcnJvcjogIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVu
Z3RoIi4gCitQQVNTIDwgW2V4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YV0gQWxsIGFzc2VydGlv
bnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5F
UiBGSU5JU0hFRDogNSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0
ZWQudHh0CmluZGV4IGRlYmRiN2UyZWU0NThiOWMyMTU5ZGU2ODdmZWEwOWFmNzMyY2MzN2YuLmJl
ZmIzYmE1YTFiYjM5YjI4MTY1ODM1NjkyY2FhMmI5NzU4YTVjMTIgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBl
Y3RlZC50eHQKQEAgLTEsNDEgKzEsNzAgQEAKIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNU
QVJURUQuIAotRkFJTCBFeGVjdXRpbmcgImNvZWZmaWNpZW50LW5vcm1hbGl6YXRpb24iIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogVHlwZSBlcnJvciIKLUZBSUwgRXhlY3V0aW5nICJvbmUtemVybyIgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcihbMC41LCAwLjVdLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1
bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIm9uZS1wb2xlIiBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyKFsxXSwgWzEsIGNdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVk
KSIKLUZBSUwgRXhlY3V0aW5nICIwOiBsb3dwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCBy
ZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlS
RmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAot
ICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBj
b2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlM
IEV4ZWN1dGluZyAiMTogaGlnaHBhc3MiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAg
ICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJd
KScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0
aW5nICIyOiBiYW5kcGFzcyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAg
W2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjM6
IG5vdGNoIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwg
Y29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNDogYWxscGFzcyIg
cHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlw
ZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEs
IGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjU6IGxvd3NoZWxmIiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5i
Ml0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNjogaGlnaHNoZWxmIiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsx
LCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVm
aW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNzogcGVha2luZyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
cigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5h
MSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgot
RkFJTCBFeGVjdXRpbmcgIm11bHRpLWNoYW5uZWwiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoZmYs
IGZiKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhl
Y3V0aW5nICI0dGgtb3JkZXItaWlyIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGNhc2NhZGUuZmYs
IGNhc2NhZGUuZmIpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgor
UEFTUyBFeGVjdXRpbmcgImNvZWZmaWNpZW50LW5vcm1hbGl6YXRpb24iIAorUEFTUyBFeGVjdXRp
bmcgIm9uZS16ZXJvIiAKK1BBU1MgRXhlY3V0aW5nICJvbmUtcG9sZSIgCitQQVNTIEV4ZWN1dGlu
ZyAiMDogbG93cGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiMTogaGlnaHBhc3MiIAorUEFTUyBFeGVj
dXRpbmcgIjI6IGJhbmRwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICIzOiBub3RjaCIgCitQQVNTIEV4
ZWN1dGluZyAiNDogYWxscGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiNTogbG93c2hlbGYiIAorUEFT
UyBFeGVjdXRpbmcgIjY6IGhpZ2hzaGVsZiIgCitQQVNTIEV4ZWN1dGluZyAiNzogcGVha2luZyIg
CitQQVNTIEV4ZWN1dGluZyAibXVsdGktY2hhbm5lbCIgCitQQVNTIEV4ZWN1dGluZyAiNHRoLW9y
ZGVyLWlpciIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbY29lZmZpY2llbnQtbm9ybWFs
aXphdGlvbl0gIAotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlciB3aXRoIG5vcm1hbGl6ZWQgY29lZmZp
Y2llbnRzIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmls
dGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGZmLCBm
YjEpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyIHdpdGgg
dW5ub3JtYWxpemVkIGNvZWZmaWNpZW50cyBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcihmZiwgZmIyKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5k
ZWZpbmVkKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNy
ZWF0ZUlJUkZpbHRlciB3aXRoIG5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIgd2l0aCB1bm5vcm1hbGl6ZWQg
Y29lZmZpY2llbnRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBPdXRwdXQg
b2YgSUlSIGZpbHRlciB3aXRoIHVubm9ybWFsaXplZCBjb2VmZmljaWVudHMgZXF1YWxzIFsxLC0w
Ljg5OTk5OTk3NjE1ODE0MjEsMC44MTAwMDAwMDIzODQxODU4LC0wLjcyODk5OTk3MjM0MzQ0NDgs
MC42NTYwOTk5NzUxMDkxMDAzLC0wLjU5MDQ4OTk4MzU1ODY1NDgsMC41MzE0NDA5NzMyODE4NjA0
LC0wLjQ3ODI5NjkwNTc1NTk5NjcsMC40MzA0NjcyMTgxNjA2MjkzLC0wLjM4NzQyMDQ3NTQ4Mjk0
MDcsMC4zNDg2Nzg0Mzk4NTU1NzU1NiwtMC4zMTM4MTA1ODY5MjkzMjEzLDAuMjgyNDI5NTQ2MTE3
NzgyNiwtMC4yNTQxODY1NzA2NDQzNzg2NiwwLjIyODc2NzkzMTQ2MTMzNDIzLC0wLjIwNTg5MTEz
MjM1NDczNjMzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0
ZVRocmVzaG9sZCI6Mi4xOTU4ZS0zOCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBb
Y29lZmZpY2llbnQtbm9ybWFsaXphdGlvbl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwg
MyBhc3NlcnRpb25zKSAKIFBBU1MgPiBbb25lLXplcm9dICAKK1BBU1MgICBJSVIgMS16ZXJvIG91
dHB1dCBlcXVhbHMgWzAuNSwwLjUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLi4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVs
YXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbb25lLXplcm9dIEFsbCBhc3NlcnRpb25zIHBh
c3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW29uZS1wb2xlXSAgCitQQVNTICAg
SUlSIDEtcG9sZSBvdXRwdXQgZXF1YWxzIFsxLC0wLjksMC44MSwtMC43MjkwMDAwMDAwMDAwMDAx
LDAuNjU2MTAwMDAwMDAwMDAwMSwtMC41OTA0OTAwMDAwMDAwMDAyLDAuNTMxNDQxMDAwMDAwMDAw
MiwtMC40NzgyOTY5MDAwMDAwMDAxNCwwLjQzMDQ2NzIxMDAwMDAwMDE2LC0wLjM4NzQyMDQ4OTAw
MDAwMDE1LDAuMzQ4Njc4NDQwMTAwMDAwMTUsLTAuMzEzODEwNTk2MDkwMDAwMTcsMC4yODI0Mjk1
MzY0ODEwMDAxNywtMC4yNTQxODY1ODI4MzI5MDAxMywwLjIyODc2NzkyNDU0OTYxMDEyLC0wLjIw
NTg5MTEzMjA5NDY0OTEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjoyLjc2NTdlLTgsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNT
IDwgW29uZS1wb2xlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMp
IAogUEFTUyA+IFswOiBsb3dwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbG93
cGFzcyBlcXVhbHMgWzAuMDAyMDY3NjIyNDk1ODE1MTU4LDAuMDEwMjYyMDM4NTU4NzIxNTQyLDAu
MDI2NDA4MzQ0NTA3MjE3NDA3LDAuMDUwMTQ2MTk2MDM3NTMwOSwwLjA4MTA2MjczNDEyNzA0NDY4
LDAuMTE4Njk3NTE2NjIwMTU5MTUsMC4xNjI1NDc2NDc5NTMwMzM0NSwwLjIxMjA3MzIwNjkwMTU1
MDMsMC4yNjY3MDI2ODE3Nzk4NjE0NSwwLjMyNTgzODc0NDY0MDM1MDM0LDAuMzg4ODYzNzEyNTQ5
MjA5NiwwLjQ1NTE0NTQxODY0Mzk1MTQsMC41MjQwNDI4NDQ3NzIzMzg5LDAuNTk0OTExNDU2MTA4
MDkzMywwLjY2NzEwOTA3MjIwODQwNDUsMC43NDAwMDA1NDU5Nzg1NDYxLi4uXSB3aXRoIGFuIGVs
ZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVU
aHJlc2hvbGQiOjAuMDAwMDQ5ODM0fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJp
cXVhZCBsb3dwYXNzIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS4yMjEuIAorUEFTUyA8
IFswOiBsb3dwYXNzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMp
IAogUEFTUyA+IFsxOiBoaWdocGFzc10gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIGhp
Z2hwYXNzIGVxdWFscyBbMC45ODM2NzEwMDk1NDA1NTc5LDAuOTQ3NDc4NjUyMDAwNDI3MiwwLjkw
NDQ4MjQyNDI1OTE4NTgsMC44NTUyMzIxMTk1NjAyNDE3LDAuODAwMzEzMjkzOTMzODY4NCwwLjc0
MDM0MTk2MTM4MzgxOTYsMC42NzU5NTgyMTYxOTAzMzgxLDAuNjA3ODIwMzMyMDUwMzIzNSwwLjUz
NjU5ODkyMDgyMjE0MzYsMC40NjI5NzEwMzE2NjU4MDIsMC4zODc2MTQyMjAzODA3ODMxLDAuMzEx
MjAxMDA2MTc0MDg3NSwwLjIzNDM5MzUzNzA0NDUyNTE1LDAuMTU3ODM4MjcwMDY4MTY4NjQsMC4w
ODIxNjExNjU3NzM4Njg1NiwwLjAwNzk2MzA1NjY3NjA4OTc2NC4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAyOSwicmVsYXRp
dmVUaHJlc2hvbGQiOjAuMDAwMDN9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlx
dWFkIGhpZ2hwYXNzIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMDUuNDU5LiAKK1BBU1Mg
PCBbMTogaGlnaHBhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9u
cykgCiBQQVNTID4gWzI6IGJhbmRwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQg
YmFuZHBhc3MgZXF1YWxzIFswLjAwNDU1NDI0NDY4OTY0MzM4MywwLjAxMzU4MzIxNTg4NDg2NDMz
LDAuMDIyNDE2NTAwMzc0Njc0Nzk3LDAuMDMwOTgyMTA1MDYxNDExODU4LDAuMDM5MjEwOTMwNDY2
NjUxOTE3LDAuMDQ3MDM3MzE0NjIzNTk0Mjg0LDAuMDU0Mzk5NTYxMTM2OTYwOTgsMC4wNjEyNDA0
MDg1Njk1NzQzNTYsMC4wNjc1MDc0NjgxNjM5NjcxMywwLjA3MzE1MzYyOTg5OTAyNDk2LDAuMDc4
MTM3MzgyODY0OTUyMDksMC4wODI0MjMxNTA1MzkzOTgyLDAuMDg1OTgxNDgwNzc3MjYzNjQsMC4w
ODg3ODkyOTkxMzA0Mzk3NiwwLjA5MDgyOTk2ODQ1MjQ1MzYxLDAuMDkyMDkzNDUyODExMjQxMTUu
Li5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xk
IjoyZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDA4N30uIAorUEFTUyAgIFNOUiBmb3IgSUlS
RklsdGVyIGZvciBCaXF1YWQgYmFuZHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEw
NC4wNi4gCitQQVNTIDwgWzI6IGJhbmRwYXNzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFszOiBub3RjaF0gIAorUEFTUyAgIElJUkZpbHRlciBm
b3IgQmlxdWFkIG5vdGNoIGVxdWFscyBbMC45OTU0NDU3MjgzMDIwMDIsMC45ODY0MTY3NTcxMDY3
ODEsMC45Nzc1ODM1Mjc1NjUwMDI0LDAuOTY5MDE3OTIyODc4MjY1NCwwLjk2MDc4OTA4NDQzNDUw
OTMsMC45NTI5NjI2OTY1NTIyNzY2LDAuOTQ1NjAwNDUwMDM4OTA5OSwwLjkzODc1OTU2NTM1MzM5
MzYsMC45MzI0OTI1NTQxODc3NzQ3LDAuOTI2ODQ2Mzg1MDAyMTM2MiwwLjkyMTg2MjYwMjIzMzg4
NjcsMC45MTc1NzY4NDk0NjA2MDE4LDAuOTE0MDE4NTExNzcyMTU1OCwwLjkxMTIxMDcxNTc3MDcy
MTQsMC45MDkxNzAwMzE1NDc1NDY0LDAuOTA3OTA2NTMyMjg3NTk3Ny4uLl0gd2l0aCBhbiBlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhy
ZXNob2xkIjowLjAwMDA0MjJ9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFk
IG5vdGNoIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS4zMTIuIAorUEFTUyA8IFszOiBu
b3RjaF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1Mg
PiBbNDogYWxscGFzc10gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIGFsbHBhc3MgZXF1
YWxzIFswLjk5MDg5MTUxNjIwODY0ODcsMC45NzI4MzM1NzM4MTgyMDY4LDAuOTU1MTY2OTk1NTI1
MzYwMSwwLjkzODAzNTc4NjE1MTg4NiwwLjkyMTU3ODE2ODg2OTAxODYsMC45MDU5MjUzOTMxMDQ1
NTMyLDAuODkxMjAwOTAwMDc3ODE5OCwwLjg3NzUxOTE5MDMxMTQzMTksMC44NjQ5ODUwNDg3NzA5
MDQ1LDAuODUzNjkyNzcwMDA0MjcyNSwwLjg0MzcyNTIwNDQ2Nzc3MzQsMC44MzUxNTM2OTg5MjEy
MDM2LDAuODI4MDM3MDIzNTQ0MzExNSwwLjgyMjQyMTQzMTU0MTQ0MjksMC44MTgzNDAwNjMwOTUw
OTI4LDAuODE1ODEzMTI0MTc5ODQwMS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDA0MzF9
LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGFsbHBhc3MgaXMgZ3JlYXRl
ciB0aGFuIG9yIGVxdWFsIHRvIDkxLjMxOS4gCitQQVNTIDwgWzQ6IGFsbHBhc3NdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzU6IGxvd3NoZWxm
XSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbG93c2hlbGYgZXF1YWxzIFsxLjAzODQ4
MDI4MTgyOTgzNCwxLjExNjU3MjI2MDg1NjYyODQsMS4xOTY2NDQwNjc3NjQyODIyLDEuMjc4MTUx
NTEyMTQ1OTk2LDEuMzYwNTk0NjMwMjQxMzk0LDEuNDQzNTE1NDE5OTYwMDIyLDEuNTI2NDk2MTcx
OTUxMjk0LDEuNjA5MTU3NjgxNDY1MTQ5LDEuNjkxMTU3MTAyNTg0ODM4OSwxLjc3MjE4NjYzNjky
NDc0MzcsMS44NTE5NzA5MTEwMjYwMDEsMS45MzAyNjYyNjExMDA3NjksMi4wMDY4NTc4NzIwMDky
NzczLDIuMDgxNTU4NDY1OTU3NjQxNiwyLjE1NDIwNjk5MTE5NTY3ODcsMi4yMjQ2NjYxMTg2MjE4
MjYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMjk4fS4gCitQQVNTICAgU05SIGZvciBJ
SVJGSWx0ZXIgZm9yIEJpcXVhZCBsb3dzaGVsZiBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8g
OTAuNjA5LiAKK1BBU1MgPCBbNTogbG93c2hlbGZdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzY6IGhpZ2hzaGVsZl0gIAorUEFTUyAgIElJUkZp
bHRlciBmb3IgQmlxdWFkIGhpZ2hzaGVsZiBlcXVhbHMgWzMuMDQ1MTAxNDA0MTkwMDYzNSwyLjgx
NjExNDY2NDA3Nzc1OSwyLjU5ODU0MjQ1MTg1ODUyMDUsMi4zOTM1NTc3ODY5NDE1MjgzLDIuMjAx
OTc1MzQ1NjExNTcyMywyLjAyNDI5Njk5ODk3NzY2MSwxLjg2MDc1Mzc3NDY0Mjk0NDMsMS43MTEz
NDY2MjYyODE3MzgzLDEuNTc1ODgyMzE1NjM1NjgxMiwxLjQ1NDAwNzAyOTUzMzM4NjIsMS4zNDUy
MzY4OTc0Njg1NjcsMS4yNDg5ODQ4MTM2OTAxODU1LDEuMTY0NTg1MzUxOTQzOTY5NywxLjA5MTMx
NTc0NjMwNzM3MywxLjAyODQxNTY3OTkzMTY0MDYsMC45NzUxMDI5NjEwNjMzODUuLi5dIHdpdGgg
YW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxh
dGl2ZVRocmVzaG9sZCI6MC4wMDAwMTI0fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9y
IEJpcXVhZCBoaWdoc2hlbGYgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEwMy4xNTkuIAor
UEFTUyA8IFs2OiBoaWdoc2hlbGZdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gWzc6IHBlYWtpbmddICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJp
cXVhZCBwZWFraW5nIGVxdWFscyBbMS4wMDU1NDg3MTU1OTE0MzA3LDEuMDE2NTcxMjgzMzQwNDU0
LDEuMDI3Mzk4NTg2MjczMTkzNCwxLjAzNzk0MTA5ODIxMzE5NTgsMS4wNDgxMTE5MTU1ODgzNzks
MS4wNTc4Mjc5NDk1MjM5MjU4LDEuMDY3MDEwMTY0MjYwODY0MywxLjA3NTU4NDQxMTYyMTA5Mzgs
MS4wODM0ODIxNDYyNjMxMjI2LDEuMDkwNjQwNzgzMzA5OTM2NSwxLjA5NzAwNDA1NTk3Njg2Nzcs
MS4xMDI1MjI5NjkyNDU5MTA2LDEuMTA3MTU1NDQyMjM3ODU0LDEuMTEwODY3NTAwMzA1MTc1OCwx
LjExMzYzMjY3ODk4NTU5NTcsMS4xMTU0MzI3MzkyNTc4MTI1Li4uXSB3aXRoIGFuIGVsZW1lbnQt
d2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hv
bGQiOjAuMDAwMDUwNX0uIAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgcGVh
a2luZyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gOTEuNTA0LiAKK1BBU1MgPCBbNzogcGVh
a2luZ10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1Mg
PiBbbXVsdGktY2hhbm5lbF0gIAorUEFTUyAgIE1heCBkaWZmZXJlbmNlIGJldHdlZW4gSUlSIGFu
ZCBCaXF1YWQgb24gY2hhbm5lbCAwIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAwLjAwMDAzNzY3
MS4gCitQQVNTICAgTWF4IGRpZmZlcmVuY2UgYmV0d2VlbiBJSVIgYW5kIEJpcXVhZCBvbiBjaGFu
bmVsIDEgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDAuMDAwMDMwMDcxLiAKK1BBU1MgICBNYXgg
ZGlmZmVyZW5jZSBiZXR3ZWVuIElJUiBhbmQgQmlxdWFkIG9uIGNoYW5uZWwgMiBpcyBsZXNzIHRo
YW4gb3IgZXF1YWwgdG8gMC4wMDAwMjYyNDEuIAorUEFTUyA8IFttdWx0aS1jaGFubmVsXSBBbGwg
YXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFs0dGgtb3Jk
ZXItaWlyXSAgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDEz
IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
K1BBU1MgICA0LXRoIG9yZGVyIElJUkZpbHRlciAoYmlxdWFkIHJlZikgZXF1YWxzIFswLjAwMDAw
NDE4MTcxOTMwNTA1MTk1NiwwLjAwMDAzMjk2NTc5NTk4MDk5OTI0NiwwLjAwMDEyOTM5NzY4MjAz
MDY4NTI1LDAuMDAwMzQ3NzM2NTgyNjI1NjU3MywwLjAwMDczODcyNzI3ODA3NjExMjMsMC4wMDEz
NDQ2ODk3NTAxMTI1OTMyLDAuMDAyMTk5Mzc2MjM0Nzg0NzIyMywwLjAwMzMyNzk1NTk1NzUwMjEy
NjcsMC4wMDQ3NDcxMTY5MzgyMzMzNzU1LDAuMDA2NDY1MjgxODI1NTEyNjQ4LDAuMDA4NDgyOTIy
Nzk5ODg1MjczLDAuMDEwNzkyOTcwNjU3MzQ4NjMzLDAuMDEzMzgxMzAzMjg4MDQyNTQ1LDAuMDE2
MjI3MzEyMzg2MDM1OTIsMC4wMTkzMDQ1MTk1MTkyMDk4NjIsMC4wMjI1ODEyNTEzMzgxMjQyNzUu
Li5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xk
IjoxLjU5ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMjExfS4gCitQQVNTICAgU05SIG9m
IDQtdGggb3JkZXIgSUlSRmlsdGVyIChiaXF1YWQgcmVmKSBpcyBncmVhdGVyIHRoYW4gb3IgZXF1
YWwgdG8gMTA4Ljk0Ny4gCitQQVNTIDwgWzR0aC1vcmRlci1paXJdIEFsbCBhc3NlcnRpb25zIHBh
c3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgRklO
SVNIRUQ6IDEzIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNw
b25zZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNl
L2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50eHQKaW5kZXggYzFjMTZi
NDU2Yjc0M2VjNjdkYmQ2YWQwZGNiMjQzZDc3ZTRhZTJjYS4uODNjNGQ4NGI1NTkzNWVhMjZjODM5
MTE0YmVjOWNmMTBhNjNlNjVlMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJu
b2RlLWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVzcG9uc2UtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWdl
dEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dApAQCAtMSwxMiArMSwyMiBAQAogCiBQQVNT
ICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCi1GQUlMIEV4ZWN1dGluZyAiMS1wb2xlIElJ
UiIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCAtMC45XSknLCAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiY29tcGFyZSBJSVIg
YW5kIGJpcXVhZCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgIFtjb2VmLmIw
LCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICJnZXRGcmVxdWVu
Y3lSZXNwb25zZSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5v
ZGUiCitQQVNTIEV4ZWN1dGluZyAiMS1wb2xlIElJUiIgCitQQVNTIEV4ZWN1dGluZyAiY29tcGFy
ZSBJSVIgYW5kIGJpcXVhZCIgCitQQVNTIEV4ZWN1dGluZyAiZ2V0RnJlcXVlbmN5UmVzcG9uc2Ui
IAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gWzEtcG9sZSBJSVJdICAKK1BBU1MgICAxLXBv
bGUgSUlSIE1hZ25pdHVkZSBSZXNwb25zZSBlcXVhbHMgWzEwLDkuOTk1NTYxNTk5NzMxNDQ1LDku
OTgyMjgxNjg0ODc1NDg4LDkuOTYwMjY2MTEzMjgxMjUsOS45Mjk2ODg0NTM2NzQzMTYsOS44OTA3
ODUyMTcyODUxNTYsOS44NDM4NTIwNDMxNTE4NTUsOS43ODkyMzg5Mjk3NDg1MzUsOS43MjczNDE2
NTE5MTY1MDQsOS42NTg1OTIyMjQxMjEwOTQsOS41ODM0NTUwODU3NTQzOTUsOS41MDI0MTg1MTgw
NjY0MDYsOS40MTU5ODMyMDAwNzMyNDIsOS4zMjQ2NTkzNDc1MzQxOCw5LjIyODk1ODEyOTg4Mjgx
Miw5LjEyOTM4NDA0MDgzMjUyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDI4NjExLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0u
IAorUEFTUyAgIDEtcG9sZSBJSVIgUGhhc2UgUmVzcG9uc2UgZXF1YWxzIFswLC0wLjAyODI2NTUw
MjMwMzgzODczLC0wLjA1NjQ3ODEyNDExMTg5MDc5LC0wLjA4NDU4NTU0NzQ0NzIwNDU5LC0wLjEx
MjUzNjU1NzAxODc1Njg3LC0wLjE0MDI4MTU3MjkzNzk2NTQsLTAuMTY3NzczMDk3NzUzNTI0Nzgs
LTAuMTk0OTY2MTY3MjExNTMyNiwtMC4yMjE4MTg2ODU1MzE2MTYyLC0wLjI0ODI5MTc3NTU4NDIy
MDksLTAuMjc0MzQ5OTU3NzA0NTQ0MDcsLTAuMjk5OTYxMjM5MDk5NTAyNTYsLTAuMzI1MDk3NDQx
NjczMjc4OCwtMC4zNDk3MzM4ODkxMDI5MzU4LC0wLjM3Mzg0OTcxOTc2MjgwMjEsLTAuMzk3NDI3
NDY5NDkxOTU4Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1
dGVUaHJlc2hvbGQiOjEuNzg4MmUtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBb
MS1wb2xlIElJUl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbY29tcGFyZSBJSVIgYW5kIGJpcXVhZF0gIAorUEFTUyAgIElJUiBNYWduaXR1ZGUg
UmVzcG9uc2UgZXF1YWxzIFsxLDEuMDAyODM0NTU4NDg2OTM4NSwxLjAxMTM0Nzg4OTkwMDIwNzUs
MS4wMjU1NTQ4OTU0MDEwMDEsMS4wNDU0MjgyNzYwNjIwMTE3LDEuMDcwODA1MzExMjAzMDAzLDEu
MTAxMjI1NDk1MzM4NDQsMS4xMzU2NzE5NzMyMjg0NTQ2LDEuMTcyMTk1MDc2OTQyNDQzOCwxLjIw
NzQ1NDMyMzc2ODYxNTcsMS4yMzYzNTYzNzc2MDE2MjM1LDEuMjUyMjA5NzgyNjAwNDAyOCwxLjI0
Nzk2MjIzNjQwNDQxOSwxLjIxODY0NDYxODk4ODAzNywxLjE2MzkwNTg1ODk5MzUzMDMsMS4wODg2
NjQ4ODkzMzU2MzIzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNv
bHV0ZVRocmVzaG9sZCI6MC4wMDAwMjc0MTksInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNT
ICAgSUlSIFBoYXNlIFJlc3BvbnNlIGVxdWFscyBbMCwtMC4wNjEzMTUzMjQxNTc0NzY0MjUsLTAu
MTIzOTExMzczMzE3MjQxNjcsLTAuMTg5MTIyMjQ0NzE1NjkwNiwtMC4yNTgzODY5Mzk3NjQwMjI4
LC0wLjMzMzI5Mzc5NTU4NTYzMjMsLTAuNDE1NjA3MDY0OTYyMzg3MSwtMC41MDcyNTAyNDkzODU4
MzM3LC0wLjYxMDIwMjU1MDg4ODA2MTUsLTAuNzI2MjQwMDM4ODcxNzY1MSwtMC44NTY0NDkxODY4
MDE5MTA0LC0xLjAwMDUwNjE2MjY0MzQzMjYsLTEuMTU1OTI3MzAwNDUzMTg2LC0xLjMxNzc4MDk3
MTUyNzA5OTYsLTEuNDc5Mzg5NTQ4MzAxNjk2OCwtMS42MzM5NTk3NzAyMDI2MzY3Li4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAw
Mjc2NTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTIDwgW2NvbXBhcmUgSUlSIGFuZCBi
aXF1YWRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gW2dldEZyZXF1ZW5jeVJlc3BvbnNlXSBUZXN0IG91dC1vZi1ib3VuZHMgZnJlcXVlbmN5IHZh
bHVlcyAKK1BBU1MgICBNYWduaXR1ZGUgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IC0xIGlzIE5hTi4g
CitQQVNTICAgTWFnbml0dWRlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAyNDAwMSBpcyBOYU4uIAor
UEFTUyAgIFBoYXNlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAtMSBpcyBOYU4uIAorUEFTUyAgIFBo
YXNlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAyNDAwMSBpcyBOYU4uIAorUEFTUyA8IFtnZXRGcmVx
dWVuY3lSZXNwb25zZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNCBhc3NlcnRpb25z
KSAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMyB0YXNrcyByYW4gc3VjY2Vz
c2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVy
ZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJm
aWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0CmluZGV4
IGJmNmRmY2Y4NmFmY2ZhNTFmZWFhYjA1YWYwYmYwMGUxNjlhMTg4MDIuLjEyZTcxNzAyMTAyZDdj
YzUzYTFkNjI0ZDIxY2Y1ZGE2NmE4NDE2ZGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWly
ZmlsdGVybm9kZS1pbnRlcmZhY2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9k
ZS1leHBlY3RlZC50eHQKQEAgLTEsMjIgKzEsMTAgQEAKIAogUEFTUyBJSVJGaWx0ZXJOb2RlIGNv
ZWZmaWNpZW50cyBhcmUgY2hlY2tlZCBwcm9wZXJseSAKLUZBSUwgZmVlZGZvcndhcmQgY29lZmZp
Y2llbnRzIGNhbiBub3QgYmUgZW1wdHkgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICJmdW5j
dGlvbiAoKSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQotICAgICAg
fSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMuY3JlYXRl
SUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb3RT
dXBwb3J0ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhw
ZWN0ZWQgOQotRkFJTCBmZWVkYmFjayBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0eSBhc3Nl
cnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRl
SUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjog
YWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZp
bHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRo
YXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0eSAiY29k
ZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIG1vcmUgdGhhbiAyMCBm
ZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSB1c2VkIGFzc2VydF90aHJvd3NfZG9t
OiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJn
MSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJG
aWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFy
ZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBE
T01FeGNlcHRpb24gTm90U3VwcG9ydGVkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0
byB1bmRlZmluZWQsIGV4cGVjdGVkIDkKLUZBSUwgbW9yZSB0aGFuIDIwIGZlZWRiYWNrIGNvZWZm
aWNpZW50cyBjYW4gbm90IGJlIHVzZWQgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICJmdW5j
dGlvbiAoKSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQotICAgICAg
fSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMuY3JlYXRl
SUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb3RT
dXBwb3J0ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhw
ZWN0ZWQgOQotRkFJTCBhdCBsZWFzdCBvbmUgZmVlZGZvcndhcmQgY29lZmZpY2llbnQgbXVzdCBi
ZSBub24temVybyBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAg
ICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmpl
Y3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9y
OiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAxMQotRkFJ
TCB0aGUgZmlyc3QgZmVlZGJhY2sgY29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyBhc3NlcnRf
dGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlS
RmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMu
Y3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRl
cihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQg
aXMgbm90IGEgRE9NRXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yOiBwcm9wZXJ0eSAiY29kZSIg
aXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAxMQotRkFJTCBJSVJGaWx0ZXJOb2RlIGdl
dEZyZXF1ZW5jeVJlc3BvbnNlIGhhbmRsZXMgaW52YWxpZCBmcmVxdWVuY2llcyBwcm9wZXJseSBh
Yy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmls
dGVyKFswLjUsIDAuNV0sIFsxLjBdKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkKK1BBU1MgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgZW1wdHkgCitQQVNT
IGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIGVtcHR5IAorUEFTUyBtb3JlIHRoYW4g
MjAgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgdXNlZCAKK1BBU1MgbW9yZSB0
aGFuIDIwIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIHVzZWQgCitQQVNTIGF0IGxl
YXN0IG9uZSBmZWVkZm9yd2FyZCBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIAorUEFTUyB0
aGUgZmlyc3QgZmVlZGJhY2sgY29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyAKK1BBU1MgSUlS
RmlsdGVyTm9kZSBnZXRGcmVxdWVuY3lSZXNwb25zZSBoYW5kbGVzIGludmFsaWQgZnJlcXVlbmNp
ZXMgcHJvcGVybHkgCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407303</attachid>
            <date>2020-08-26 09:23:36 -0700</date>
            <delta_ts>2020-08-26 09:52:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200826092336.patch</filename>
            <type>text/plain</type>
            <size>126350</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uYjk4MzkyNzc4YzZjMWZiZjJjY2MxZGRjNzVmZjYw
MjIzM2Q5MTg5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTA4LTI1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgorICAg
ICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQorCisg
ICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJpbmcp
OgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNzYXJ5
KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpC
YXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BLZXJu
ZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQS2Vy
bmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9u
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFibGUp
OgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlByb2Nl
c3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9h
dWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRlUG9s
eW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZp
bHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1ZW5j
eVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgorICAg
ICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5pdGlh
bGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRpYWxp
emF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJkNGY4YmU3NmQ1MzFkMDMyNjNjMTYwMjY0
MjYzOGU4YWYxMzNhNTkuLjI5ZjExN2ZjOWVjOWU5YWUwOTk2Y2JlMmMyNzA2YzQ4M2NjZWRkMzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00ODgsNiArNDg4LDggQEAgc2V0KFdlYkNvcmVfTk9O
X1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck9w
dGlvbnMuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICAgICBNb2R1bGVz
L3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbAorICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVy
Tm9kZS5pZGwKKyAgICBNb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMjU0MmVm
MWM1Y2FhOGQ3MGY4MTAzNzRiMmIwYzJhOWI3YTAwOTU4Mi4uMjVkYzcwYzEwMGZmZmFjNGQyZjgy
NjI5NWQyNWM1NjhiNTA4YzU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0zMzksNiArMzM5LDggQEAgJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbAogJChQUk9KRUNU
X0RJUikvTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVs
ZXMvd2ViYXVkaW8vR2Fpbk9wdGlvbnMuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVk
aW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAyNzkx
ZTRkMTk5YzM1MmMxOGY0NTI0NzEwMDAxOWE4MGFjNTE3MmE4Li5hNTYwMDM0MzNkOTU1NjE2MTMw
ODJhNDliMjMxYmYwY2YzZTkyNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtOTgyLDYgKzk4MiwxMCBAQCAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lEQlRyYW5zYWN0aW9uTW9kZS5jcHAK
ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJhbnNh
Y3Rpb25Nb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaAorJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2RlLmNwcAorJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2Rl
LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSUlSRmls
dGVyT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSUlSRmlsdGVyT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0lkbGVEZWFkbGluZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZURlYWRsaW5lLmgKICQoQlVJTFRfUFJPRFVDVFNf
RElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJhMTA3OTI1MzRiYjNmMmQ1N2U2MjIxMWQ2
MDMxNjYzN2Y2ZTY5MmQuLmUyZmI4YTkyNTU4NGYzMTAyZmRhY2I0NDdkMmU3NDNmM2ZkNTQzOWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDIwLDYgKzQyMCw4IEBAIEpTX0JJ
TkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3ND
b21wcmVzc29yT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9H
YWluTm9kZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9HYWluT3B0aW9u
cy5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmlk
bCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRs
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3Vy
Y2VOb2RlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVu
dEF1ZGlvU291cmNlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRp
by9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKaW5kZXggNDFkZDEzZGVhN2U3Y2E3NDc0
NmI2NjQ1OThkMDNkMDBkYjQxZjVhOS4uYmIyYWU5MGU0ZGIyYTcwYzU1ZDc0MDM0N2I5MGY0MGQ3
NjFhZjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Ob2Rl
LmNwcApAQCAtOTQsNyArOTQsOCBAQCBTdHJpbmcgY29udmVydEVudW1lcmF0aW9uVG9TdHJpbmco
QXVkaW9Ob2RlOjpOb2RlVHlwZSBlbnVtZXJhdGlvblZhbHVlKQogICAgIHN0YXRpY19hc3NlcnQo
c3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlQmFzaWNJbnNwZWN0b3IpID09
IDE4LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUJhc2ljSW5zcGVjdG9yIGlzIG5vdCAxOCBhcyBleHBl
Y3RlZCIpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6
Ok5vZGVUeXBlQ29uc3RhbnQpID09IDE5LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCBpcyBub3Qg
MTkgYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4o
QXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbykgPT0gMjAsICJBdWRpb05vZGU6Ok5vZGVUeXBlU3Rl
cmVvIGlzIG5vdCAyMCBhcyBleHBlY3RlZCIpOwotICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nh
c3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlRW5kKSA9PSAyMSwgIkF1ZGlvTm9kZTo6Tm9k
ZVR5cGVDb25zdGFudCBpcyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNzZXJ0
KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlcikgPT0gMjEs
ICJBdWRpb05vZGU6Ok5vZGVUeXBlSUlSRmlsdGVyIGlzIG5vdCAyMSBhcyBleHBlY3RlZCIpOwor
ICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBl
RW5kKSA9PSAyMiwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjIgYXMgZXhw
ZWN0ZWQiKTsKIAogICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9uVmFs
dWUpIDwgV1RGX0FSUkFZX0xFTkdUSCh2YWx1ZXMpKTsKICAgICAKQEAgLTU1Myw3ICs1NTQsNyBA
QCB2b2lkIEF1ZGlvTm9kZTo6ZGlzYWJsZU91dHB1dHNJZk5lY2Vzc2FyeSgpCiAgICAgICAgIC8v
IGxvbmdlciBhbnkgYWN0aXZlIGNvbm5lY3Rpb25zLgogICAgICAgICAvLyBBbHNvLCBXYXZlU2hh
cGVyTm9kZSBtYXkgcHJvZHVjZSBub24tc2lsZW5jZSBldmVuIHdoZW4gaXQgbm8gbG9uZ2VyIGhh
cyBhbnkgb3V0cHV0LiBGb3IgdGhpcyByZWFzb24sIHdlIGNhbm5vdAogICAgICAgICAvLyBkaXNh
YmxlIGl0IGVpdGhlci4KLSAgICAgICAgaWYgKG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVDb252b2x2
ZXIgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZURlbGF5ICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5
cGVXYXZlU2hhcGVyKSB7CisgICAgICAgIGlmIChub2RlVHlwZSgpICE9IE5vZGVUeXBlQ29udm9s
dmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxheSAmJiBub2RlVHlwZSgpICE9IE5vZGVU
eXBlV2F2ZVNoYXBlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlSUlSRmlsdGVyKSB7CiAgICAg
ICAgICAgICBtX2lzRGlzYWJsZWQgPSB0cnVlOwogICAgICAgICAgICAgZm9yIChhdXRvJiBvdXRw
dXQgOiBtX291dHB1dHMpCiAgICAgICAgICAgICAgICAgb3V0cHV0LT5kaXNhYmxlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAppbmRleCA3MWJjYmRjNWM2
NGNiYTE1MWE4YzdlYzU1YWFjM2Q4ZDExYWVjN2M3Li5mOTY1ZWEwNTJkZDk5OTYxN2EwMzYwYjM3
ZGI5ZmE0OWZjYjBmYzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0F1ZGlvTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVk
aW9Ob2RlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBOb2RlVHlwZUJhc2lj
SW5zcGVjdG9yLAogICAgICAgICBOb2RlVHlwZUNvbnN0YW50LAogICAgICAgICBOb2RlVHlwZVN0
ZXJlbywKKyAgICAgICAgTm9kZVR5cGVJSVJGaWx0ZXIsCiAgICAgICAgIE5vZGVUeXBlRW5kCiAg
ICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNl
QXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1
ZGlvQ29udGV4dC5jcHAKaW5kZXggODI1NDRjNmE2NGMyOWUzZDk0NTE2YTMzZjdmNzQzMWI4MWRl
ZWVlYi4uMjNlNzZkOGYxNTE0YWJlMDg1M2Y3Y2Y1MzE4N2JhY2I0ZTcxMzg2MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3Bw
CkBAIC02MCw2ICs2MCw4IEBACiAjaW5jbHVkZSAiR2VuZXJpY0V2ZW50UXVldWUuaCIKICNpbmNs
dWRlICJIUlRGRGF0YWJhc2VMb2FkZXIuaCIKICNpbmNsdWRlICJIUlRGUGFubmVyLmgiCisjaW5j
bHVkZSAiSUlSRmlsdGVyTm9kZS5oIgorI2luY2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIKICNp
bmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQu
aCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC02MzAsNiArNjMyLDE3IEBAIEV4Y2VwdGlvbk9y
PFJlZjxTdGVyZW9QYW5uZXJOb2RlPj4gQmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlU3RlcmVvUGFu
bmVyKCkKICAgICByZXR1cm4gU3RlcmVvUGFubmVyTm9kZTo6Y3JlYXRlKCp0aGlzKTsKIH0KIAor
RXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5vZGU+PiBCYXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJ
SVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
VmVjdG9yPGRvdWJsZT4mJiBmZWVkZm9yd2FyZCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkYmFjaykK
K3sKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOworCisgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKKyAgICBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnM7CisgICAgb3B0aW9ucy5mZWVk
Zm9yd2FyZCA9IFdURk1vdmUoZmVlZGZvcndhcmQpOworICAgIG9wdGlvbnMuZmVlZGJhY2sgPSBX
VEZNb3ZlKGZlZWRiYWNrKTsKKyAgICByZXR1cm4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsICp0aGlzLCBXVEZNb3ZlKG9wdGlvbnMpKTsKK30KKwogdm9pZCBC
YXNlQXVkaW9Db250ZXh0Ojpub3RpZnlOb2RlRmluaXNoZWRQcm9jZXNzaW5nKEF1ZGlvTm9kZSog
bm9kZSkKIHsKICAgICBBU1NFUlQoaXNBdWRpb1RocmVhZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggNDRjMmNlNzZl
MGRjNjU3MGI1ZmYxYTU5NDhiOTBlYmIxZGFiYjkzZi4uNjdmMzQ5MjQ5NzAxZWMwM2I2ODgwOTQx
ZjgxZjliODc1YmZjODllMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTcwLDYgKzcwLDcgQEAgY2xhc3MgRG9jdW1lbnQ7
CiBjbGFzcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlOwogY2xhc3MgR2Fpbk5vZGU7CiBjbGFzcyBI
VE1MTWVkaWFFbGVtZW50OworY2xhc3MgSUlSRmlsdGVyTm9kZTsKIGNsYXNzIE1haW5UaHJlYWRH
ZW5lcmljRXZlbnRRdWV1ZTsKIGNsYXNzIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZTsKIGNs
YXNzIE1lZGlhU3RyZWFtOwpAQCAtNzgsNiArNzksNyBAQCBjbGFzcyBNZWRpYVN0cmVhbUF1ZGlv
U291cmNlTm9kZTsKIGNsYXNzIE9zY2lsbGF0b3JOb2RlOwogY2xhc3MgUGFubmVyTm9kZTsKIGNs
YXNzIFBlcmlvZGljV2F2ZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFzcyBT
Y3JpcHRQcm9jZXNzb3JOb2RlOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTdGVyZW9Q
YW5uZXJOb2RlOwpAQCAtMTY0LDYgKzE2Niw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25PcjxS
ZWY8UGVyaW9kaWNXYXZlPj4gY3JlYXRlUGVyaW9kaWNXYXZlKFZlY3RvcjxmbG9hdD4mJiByZWFs
LCBWZWN0b3I8ZmxvYXQ+JiYgaW1hZ2luYXJ5LCBjb25zdCBQZXJpb2RpY1dhdmVDb25zdHJhaW50
cyYgPSB7IH0pOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxDb25zdGFudFNvdXJjZU5vZGU+PiBjcmVh
dGVDb25zdGFudFNvdXJjZSgpOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxTdGVyZW9QYW5uZXJOb2Rl
Pj4gY3JlYXRlU3RlcmVvUGFubmVyKCk7CisgICAgRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5v
ZGU+PiBjcmVhdGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFZlY3Rvcjxkb3Vi
bGU+JiYgZmVlZGZvcndhcmQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spOwogCiAgICAgLy8g
V2hlbiBhIHNvdXJjZSBub2RlIGhhcyBubyBtb3JlIHByb2Nlc3NpbmcgdG8gZG8gKGhhcyBmaW5p
c2hlZCBwbGF5aW5nKSwgdGhlbiBpdCB0ZWxscyB0aGUgY29udGV4dCB0byBkZXJlZmVyZW5jZSBp
dC4KICAgICB2b2lkIG5vdGlmeU5vZGVGaW5pc2hlZFByb2Nlc3NpbmcoQXVkaW9Ob2RlKik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRl
eHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmlkbAppbmRleCBjNjVjYjE5NmI3MzYxZjk3ZjBmOTljMDVmN2E5ZTEwNmIwYjQxY2FhLi4zMWYw
MWJiZWU0NzFmZDQ2ZWQwYWM1ODQ1ODU2NGVjMzVlMDI2YTljIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTY2LDYg
KzY2LDcgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIFBlcmlvZGljV2F2ZSBjcmVhdGVQZXJp
b2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+IHJlYWwsIHNlcXVlbmNlPGZsb2F0PiBpbWFnLCBvcHRp
b25hbCBQZXJpb2RpY1dhdmVPcHRpb25zIG9wdGlvbnMpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlv
bl0gQ29uc3RhbnRTb3VyY2VOb2RlIGNyZWF0ZUNvbnN0YW50U291cmNlKCk7CiAgICAgW01heVRo
cm93RXhjZXB0aW9uXSBTdGVyZW9QYW5uZXJOb2RlIGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOworICAg
IFtNYXlUaHJvd0V4Y2VwdGlvbiwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSUlS
RmlsdGVyTm9kZSBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiBmZWVkZm9yd2FyZCwg
c2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFjayk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGluZyBh
bmQgbWVyZ2luZwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gQ2hhbm5lbFNwbGl0dGVyTm9kZSBj
cmVhdGVDaGFubmVsU3BsaXR0ZXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBudW1iZXJPZk91dHB1
dHMgPSA2KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
RFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2Vy
bmVsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42MmVlZTJjYTk4NTIwMGZhOWIzNDliNTQ1MThjYjRhNjBmNjU2
NThhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9J
SVJEU1BLZXJuZWwuY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBU
aGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJEU1BL
ZXJuZWwuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitJSVJEU1BLZXJuZWw6OklJUkRTUEtl
cm5lbChJSVJQcm9jZXNzb3ImIHByb2Nlc3NvcikKKyAgICA6IEF1ZGlvRFNQS2VybmVsKCZwcm9j
ZXNzb3IpCisgICAgLCBtX2lpckZpbHRlcihwcm9jZXNzb3IuZmVlZGZvcndhcmQoKSwgcHJvY2Vz
c29yLmZlZWRiYWNrKCkpCisgICAgLCBtX3RhaWxUaW1lKG1faWlyRmlsdGVyLnRhaWxUaW1lKHBy
b2Nlc3Nvci5zYW1wbGVSYXRlKCksIHByb2Nlc3Nvci5pc0ZpbHRlclN0YWJsZSgpKSkKK3sKK30K
Kwordm9pZCBJSVJEU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxlbmd0
aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0KiBw
aGFzZVJlc3BvbnNlKQoreworICAgIEFTU0VSVChmcmVxdWVuY3lIeik7CisgICAgQVNTRVJUKG1h
Z1Jlc3BvbnNlKTsKKyAgICBBU1NFUlQocGhhc2VSZXNwb25zZSk7CisKKyAgICBWZWN0b3I8Zmxv
YXQ+IGZyZXF1ZW5jeShsZW5ndGgpOworICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlxdWlz
dCgpOworCisgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBub3JtYWxpemVk
IGZyZXF1ZW5jeSAoMCAtPiAxKSwgd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1aXN0IGZyZXF1ZW5j
eS4KKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spCisgICAgICAgIGZy
ZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKKworICAgIG1faWlyRmlsdGVy
LmdldEZyZXF1ZW5jeVJlc3BvbnNlKGxlbmd0aCwgZnJlcXVlbmN5LmRhdGEoKSwgbWFnUmVzcG9u
c2UsIHBoYXNlUmVzcG9uc2UpOworfQorCit2b2lkIElJUkRTUEtlcm5lbDo6cHJvY2Vzcyhjb25z
dCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nl
c3MpCit7CisgICAgQVNTRVJUKHNvdXJjZSk7CisgICAgQVNTRVJUKGRlc3RpbmF0aW9uKTsKKwor
ICAgIG1faWlyRmlsdGVyLnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Qcm9j
ZXNzKTsKK30KKwordm9pZCBJSVJEU1BLZXJuZWw6OnJlc2V0KCkKK3sKKyAgICBtX2lpckZpbHRl
ci5yZXNldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJEU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQ
S2VybmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY4YTQ0MmE2NzdkMDQwMzRjMDEyM2MzZjMyNjBkNWMzYzY1
OTM0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSRFNQS2VybmVsLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
LmgiCisjaW5jbHVkZSAiSUlSUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgSUlSRFNQS2VybmVsIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsIHsKK3B1Ymxp
YzoKKyAgICBleHBsaWNpdCBJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJik7CisKKyAgICAvLyBH
ZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUg
Z2l2ZW4gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBp
biByYWRpYW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3Ro
LCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBo
YXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29y
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9CisK
KyAgICAvLyBBdWRpb0RTUEtlcm5lbAorICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291
cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOwor
ICAgIGRvdWJsZSB0YWlsVGltZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdGFpbFRpbWU7IH0K
KyAgICBkb3VibGUgbGF0ZW5jeVRpbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAwOyB9CisgICAg
dm9pZCByZXNldCgpIGZpbmFsOworCisgICAgSUlSRmlsdGVyIG1faWlyRmlsdGVyOworICAgIGRv
dWJsZSBtX3RhaWxUaW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uY2JiNjk5MTVjMDYwYWQ0Mjg0Mjk4NTkyNTdjOGE3MTNjOGI5MmU4ZAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAK
QEAgLTAsMCArMSwxNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJGaWx0ZXJOb2RlLmgiCisKKyNp
bmNsdWRlICJCYXNlQXVkaW9Db250ZXh0LmgiCisjaW5jbHVkZSAiSUlSRmlsdGVyLmgiCisjaW5j
bHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJ
bmxpbmVzLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV1RGX01BS0VfSVNPX0FMTE9DQVRF
RF9JTVBMKElJUkZpbHRlck5vZGUpOworCisvLyBEZXRlcm1pbmUgaWYgZmlsdGVyIGlzIHN0YWJs
ZSBiYXNlZCBvbiB0aGUgZmVlZGJhY2sgY29lZmZpY2llbnRzLgorLy8gV2UgY29tcHV0ZSB0aGUg
cmVmbGVjdGlvbiBjb2VmZmljaWVudHMgZm9yIHRoZSBmaWx0ZXIuIElmLCBhdCBhbnkKKy8vIHBv
aW50LCB0aGUgbWFnbml0dWRlIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50IGlzIGdyZWF0
ZXIgdGhhbgorLy8gb3IgZXF1YWwgdG8gMSwgdGhlIGZpbHRlciBpcyBkZWNsYXJlZCB1bnN0YWJs
ZS4KKy8vCisvLyBMZXQgQSh6KSBiZSB0aGUgZmVlZGJhY2sgcG9seW5vbWlhbCBnaXZlbiBieQor
Ly8gICBBW25dKHopID0gMSArIGFbMV0veiArIGFbMl0vel4yICsgLi4uICsgYVtuXS96Xm4KKy8v
CisvLyBUaGUgZmlyc3QgcmVmbGVjdGlvbiBjb2VmZmljaWVudCBrW25dID0gYVtuXS4gVGhlbiwg
cmVjdXJzaXZlbHkgY29tcHV0ZQorLy8KKy8vICAgQVtuLTFdKHopID0gKEFbbl0oeikgLSBrW25d
KkFbbl0oMS96KS96Xm4pLygxLWtbbl1eMik7CisvLworLy8gc3RvcHBpbmcgYXQgQVsxXSh6KS4g
SWYgYXQgYW55IHBvaW50IHxrW25dfCA+PSAxLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlLgorc3Rh
dGljIGJvb2wgaXNGaWx0ZXJTdGFibGUoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKQor
eworICAgIC8vIE1ha2UgYSBjb3B5IG9mIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMKKyAgICBW
ZWN0b3I8ZG91YmxlPiBjb2VmZmljaWVudHMoZmVlZGJhY2spOworICAgIGludCBvcmRlciA9IGNv
ZWZmaWNpZW50cy5zaXplKCkgLSAxOworCisgICAgLy8gSWYgbmVjZXNzYXJ5LCBub3JtYWxpemUg
ZmlsdGVyIGNvZWZmaWNpZW50cyBzbyB0aGF0IGNvbnN0YW50IHRlcm0gaXMgMS4KKyAgICBpZiAo
Y29lZmZpY2llbnRzWzBdICE9IDEpIHsKKyAgICAgICAgZm9yIChpbnQgbSA9IDE7IG0gPD0gb3Jk
ZXI7ICsrbSkKKyAgICAgICAgICAgIGNvZWZmaWNpZW50c1ttXSAvPSBjb2VmZmljaWVudHNbMF07
CisgICAgICAgIGNvZWZmaWNpZW50c1swXSA9IDE7CisgICAgfQorCisgICAgLy8gQmVnaW4gcmVj
dXJzaW9uLCB1c2luZyBhIHdvcmsgYXJyYXkgdG8gaG9sZCBpbnRlcm1lZGlhdGUgcmVzdWx0cy4K
KyAgICBWZWN0b3I8ZG91YmxlPiB3b3JrKG9yZGVyICsgMSk7CisgICAgZm9yIChpbnQgbiA9IG9y
ZGVyOyBuID49IDE7IC0tbikgeworICAgICAgICBkb3VibGUgayA9IGNvZWZmaWNpZW50c1tuXTsK
KworICAgICAgICBpZiAoc3RkOjpmYWJzKGspID49IDEpCisgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICAgICAgLy8gTm90ZSB0aGF0IEFbbl0oMS96KS96Xm4gaXMgYmFzaWNhbGx5IHRo
ZSBjb2VmZmljaWVudHMgb2YgQVtuXQorICAgICAgICAvLyBpbiByZXZlcnNlIG9yZGVyLgorICAg
ICAgICBkb3VibGUgZmFjdG9yID0gMSAtIGsgKiBrOworICAgICAgICBmb3IgKGludCBtID0gMDsg
bSA8PSBuOyArK20pCisgICAgICAgICAgICB3b3JrW21dID0gKGNvZWZmaWNpZW50c1ttXSAtIGsg
KiBjb2VmZmljaWVudHNbbiAtIG1dKSAvIGZhY3RvcjsKKyAgICAgICAgY29lZmZpY2llbnRzLnN3
YXAod29yayk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK0V4Y2VwdGlvbk9yPFJl
ZjxJSVJGaWx0ZXJOb2RlPj4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQs
IElJUkZpbHRlck9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIGlmIChjb250ZXh0LmlzU3RvcHBl
ZCgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKKwor
ICAgIGNvbnRleHQubGF6eUluaXRpYWxpemUoKTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkZm9y
d2FyZC5zaXplKCkgfHwgb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXplKCkgPiBJSVJGaWx0ZXI6Om1h
eE9yZGVyKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJm
ZWVkZm9yd2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCJfcyB9
OworCisgICAgYXV0byBub25aZXJvVmFsdWVJbmRleCA9IG9wdGlvbnMuZmVlZGZvcndhcmQuZmlu
ZE1hdGNoaW5nKFtdKGF1dG8mIHZhbHVlKSB7IHJldHVybiAhIXZhbHVlOyB9KTsKKyAgICBpZiAo
bm9uWmVyb1ZhbHVlSW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgImZlZWRmb3J3YXJkIGFycmF5IG11c3QgY29udGFpbiBhIG5v
bi16ZXJvIHZhbHVlIl9zIH07CisKKyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpIHx8
IG9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAg
cmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiZmVlZGJhY2sgYXJyYXkgbXVz
dCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGlmICghb3B0aW9u
cy5mZWVkYmFja1swXSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiZmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iX3MgfTsK
KworICAgIGJvb2wgaXNGaWx0ZXJTdGFibGUgPSBXZWJDb3JlOjppc0ZpbHRlclN0YWJsZShvcHRp
b25zLmZlZWRiYWNrKTsKKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICBzY3JpcHRF
eGVjdXRpb25Db250ZXh0LmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNz
YWdlTGV2ZWw6Oldhcm5pbmcsICJJSVJGaWx0ZXIgaXMgdW5zdGFibGUgd2l0aCBwcm92aWRlZCBm
ZWVkYmFjayBjb2VmZmljaWVudHMiX3MpOworCisgICAgYXV0byBub2RlID0gYWRvcHRSZWYoKm5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIG9wdGlvbnMuZmVlZGZvcndhcmQsIG9wdGlvbnMuZmVl
ZGJhY2ssIGlzRmlsdGVyU3RhYmxlKSk7CisKKyAgICBhdXRvIHJlc3VsdCA9IG5vZGUtPmhhbmRs
ZUF1ZGlvTm9kZU9wdGlvbnMob3B0aW9ucywgeyAyLCBDaGFubmVsQ291bnRNb2RlOjpNYXgsIENo
YW5uZWxJbnRlcnByZXRhdGlvbjo6U3BlYWtlcnMgfSk7CisgICAgaWYgKHJlc3VsdC5oYXNFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKKyAg
ICByZXR1cm4gbm9kZTsKK30KKworSUlSRmlsdGVyTm9kZTo6SUlSRmlsdGVyTm9kZShCYXNlQXVk
aW9Db250ZXh0JiBjb250ZXh0LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNv
bnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaywgYm9vbCBpc0ZpbHRlclN0YWJsZSkKKyAgICA6
IEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKGNvbnRleHQpCit7CisgICAgc2V0Tm9kZVR5cGUoTm9k
ZVR5cGVJSVJGaWx0ZXIpOworICAgIG1fcHJvY2Vzc29yID0gbWFrZVVuaXF1ZTxJSVJQcm9jZXNz
b3I+KGNvbnRleHQuc2FtcGxlUmF0ZSgpLCAxLCBmZWVkZm9yd2FyZCwgZmVlZGJhY2ssIGlzRmls
dGVyU3RhYmxlKTsKKworICAgIGluaXRpYWxpemUoKTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4g
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5JiBmcmVxdWVu
Y3lIeiwgRmxvYXQzMkFycmF5JiBtYWdSZXNwb25zZSwgRmxvYXQzMkFycmF5JiBwaGFzZVJlc3Bv
bnNlKQoreworICAgIGF1dG8gZXhwZWN0ZWRMZW5ndGggPSBmcmVxdWVuY3lIei5sZW5ndGgoKTsK
KyAgICBpZiAobWFnUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGggfHwgcGhhc2VS
ZXNwb25zZS5sZW5ndGgoKSAhPSBleHBlY3RlZExlbmd0aCkKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciwgIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVu
Z3RoIl9zIH07CisKKyAgICAvLyBOb3RoaW5nIHRvIGRvIGlmIHRoZSBsZW5ndGggaXMgMC4KKyAg
ICBpZiAoZXhwZWN0ZWRMZW5ndGggPiAwKQorICAgICAgICBpaXJQcm9jZXNzb3IoKS0+Z2V0RnJl
cXVlbmN5UmVzcG9uc2UoZXhwZWN0ZWRMZW5ndGgsIGZyZXF1ZW5jeUh6LmRhdGEoKSwgbWFnUmVz
cG9uc2UuZGF0YSgpLCBwaGFzZVJlc3BvbnNlLmRhdGEoKSk7CisKKyAgICByZXR1cm4geyB9Owor
fQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElP
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mODJhMjc5OWE2YmU5NmE0NjU4ODFmN2Y4MjBjZTQ2ZGE0ZDg5OTNmCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmgKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1
bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgIkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
T3B0aW9ucy5oIgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgorI2luY2x1ZGUgPEphdmFTY3Jp
cHRDb3JlL0Zsb2F0MzJBcnJheS5oPgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2MuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBJSVJGaWx0ZXJOb2RlIGZpbmFsIDogcHVibGljIEF1
ZGlvQmFzaWNQcm9jZXNzb3JOb2RlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKElJUkZp
bHRlck5vZGUpOworcHVibGljOgorICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8SUlSRmlsdGVy
Tm9kZT4+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgQmFzZUF1ZGlvQ29udGV4dCYs
IElJUkZpbHRlck9wdGlvbnMmJik7CisKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBnZXRGcmVxdWVu
Y3lSZXNwb25zZShGbG9hdDMyQXJyYXkmIGZyZXF1ZW5jeUh6LCBGbG9hdDMyQXJyYXkmIG1hZ1Jl
c3BvbnNlLCBGbG9hdDMyQXJyYXkmIHBoYXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJ
UkZpbHRlck5vZGUoQmFzZUF1ZGlvQ29udGV4dCYsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
Zm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3Rh
YmxlKTsKKworICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29yKCkgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0
ZXJOb2RlLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZGRjNWFjM2NmMjc4OWMxMzczY2ZmMjA0Njc3ODQxODRj
ZTY0YzIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJGaWx0ZXJOb2RlLmlkbApAQCAtMCwwICsxLDMyIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAg
Q29uZGl0aW9uYWw9V0VCX0FVRElPLAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorICAgIEVu
YWJsZWRCeVNldHRpbmc9TW9kZXJuVW5wcmVmaXhlZFdlYkF1ZGlvLAorXSBpbnRlcmZhY2UgSUlS
RmlsdGVyTm9kZSA6IEF1ZGlvTm9kZSB7CisgICAgW01heVRocm93RXhjZXB0aW9uLCBDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihCYXNlQXVkaW9Db250ZXh0IGF1
ZGlvQ29udGV4dCwgSUlSRmlsdGVyT3B0aW9ucyBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dFeGNl
cHRpb25dIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5IGZyZXF1ZW5jeUh6
LCBGbG9hdDMyQXJyYXkgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSBwaGFzZVJlc3BvbnNlKTsK
K307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRl
ck9wdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0
aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjFiMDJmNTk3NjM5NTRkNDIzZjU0YjQ3MmVkZjFlZjliMGM2ZjFl
MzEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaApAQCAtMCwwICsxLDQxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2lmIEVOQUJMRShXRUJfQVVESU8pCisKKyNpbmNsdWRlICJBdWRpb05vZGVPcHRpb25z
LmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0
cnVjdCBJSVJGaWx0ZXJPcHRpb25zIDogQXVkaW9Ob2RlT3B0aW9ucyB7CisgICAgVmVjdG9yPGRv
dWJsZT4gZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gZmVlZGJhY2s7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25z
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjFmMzQ3ODc3MWVlMTI0OTFiYjZhNTAxZTVmOGIyZTI4MjI2MWUzMQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmls
dGVyT3B0aW9ucy5pZGwKQEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworWworICAgIENvbmRp
dGlvbmFsPVdFQl9BVURJTworXSBkaWN0aW9uYXJ5IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05v
ZGVPcHRpb25zIHsKKyAgICByZXF1aXJlZCBzZXF1ZW5jZTxkb3VibGU+IGZlZWRmb3J3YXJkOwor
ICAgIHJlcXVpcmVkIHNlcXVlbmNlPGRvdWJsZT4gZmVlZGJhY2s7Cit9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1
YjQyNzMwOWEzNzcxMjQyYWEwMDVkY2NiZTA1OWZlZGVkZGIwMzEKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5jcHAKQEAgLTAs
MCArMSwxMDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYg
RU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJQcm9jZXNzb3IuaCIKKworI2luY2x1ZGUg
IklJUkRTUEtlcm5lbC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0lJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKGZsb2F0IHNhbXBsZVJhdGUsIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMs
IGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4m
IGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3RhYmxlKQorICAgIDogQXVkaW9EU1BLZXJuZWxQcm9j
ZXNzb3Ioc2FtcGxlUmF0ZSwgbnVtYmVyT2ZDaGFubmVscykKKyAgICAsIG1fZmVlZGZvcndhcmQo
ZmVlZGZvcndhcmQpCisgICAgLCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQorICAgICwgbV9pc0ZpbHRl
clN0YWJsZShpc0ZpbHRlclN0YWJsZSkKK3sKKyAgICB1bnNpZ25lZCBmZWVkYmFja0xlbmd0aCA9
IGZlZWRiYWNrLnNpemUoKTsKKyAgICB1bnNpZ25lZCBmZWVkZm9yd2FyZExlbmd0aCA9IGZlZWRm
b3J3YXJkLnNpemUoKTsKKyAgICBBU1NFUlQoZmVlZGJhY2tMZW5ndGggPiAwKTsKKyAgICBBU1NF
UlQoZmVlZGZvcndhcmRMZW5ndGggPiAwKTsKKworICAgIC8vIE5lZWQgdG8gc2NhbGUgdGhlIGZl
ZWRiYWNrIGFuZCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgYXBwcm9wcmlhdGVseS4KKyAgICAv
LyAoSXQncyB1cCB0byB0aGUgY2FsbGVyIHRvIGVuc3VyZSBmZWVkYmFja0NvZWZbMF0gaXMgbm90
IDAuKQorICAgIEFTU0VSVCghIWZlZWRiYWNrWzBdKTsKKworICAgIGlmIChmZWVkYmFja1swXSAh
PSAxKSB7CisgICAgICAgIC8vIFRoZSBwcm92aWRlZCBmaWx0ZXIgaXM6CisgICAgICAgIC8vCisg
ICAgICAgIC8vICAgYVswXSp5KG4pICsgYVsxXSp5KG4tMSkgKyAuLi4gPSBiWzBdKngobikgKyBi
WzFdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBXZSB3YW50IHRoZSBsZWFk
aW5nIGNvZWZmaWNpZW50IG9mIHkobikgdG8gYmUgMToKKyAgICAgICAgLy8KKyAgICAgICAgLy8g
ICB5KG4pICsgYVsxXS9hWzBdKnkobi0xKSArIC4uLiA9IGJbMF0vYVswXSp4KG4pICsgYlsxXS9h
WzBdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBUaHVzLCB0aGUgZmVlZGJh
Y2sgYW5kIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBuZWVkIHRvIGJlIHNjYWxlZCBieSAxL2Fb
MF0uCisgICAgICAgIGZsb2F0IHNjYWxlID0gZmVlZGJhY2tbMF07CisgICAgICAgIGZvciAodW5z
aWduZWQgayA9IDE7IGsgPCBmZWVkYmFja0xlbmd0aDsgKytrKQorICAgICAgICAgICAgbV9mZWVk
YmFja1trXSAvPSBzY2FsZTsKKworICAgICAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgZmVl
ZGZvcndhcmRMZW5ndGg7ICsraykKKyAgICAgICAgICAgIG1fZmVlZGZvcndhcmRba10gLz0gc2Nh
bGU7CisKKyAgICAgICAgLy8gVGhlIElJUkZpbHRlciBjaGVja3MgdG8gbWFrZSBzdXJlIHRoaXMg
Y29lZmZpY2llbnQgaXMgMSwgc28gbWFrZSBpdCBzby4KKyAgICAgICAgbV9mZWVkYmFja1swXSA9
IDE7CisgICAgfQorCisgICAgbV9yZXNwb25zZUtlcm5lbCA9IG1ha2VVbmlxdWU8SUlSRFNQS2Vy
bmVsPigqdGhpcyk7Cit9CisKK0lJUlByb2Nlc3Nvcjo6fklJUlByb2Nlc3NvcigpCit7CisgICAg
aWYgKGlzSW5pdGlhbGl6ZWQoKSkKKyAgICAgICAgdW5pbml0aWFsaXplKCk7Cit9CisKK3N0ZDo6
dW5pcXVlX3B0cjxBdWRpb0RTUEtlcm5lbD4gSUlSUHJvY2Vzc29yOjpjcmVhdGVLZXJuZWwoKQor
eworICAgIHJldHVybiBtYWtlVW5pcXVlPElJUkRTUEtlcm5lbD4oKnRoaXMpOworfQorCit2b2lk
IElJUlByb2Nlc3Nvcjo6cHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyog
ZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgaWYgKCFpc0luaXRp
YWxpemVkKCkpIHsKKyAgICAgICAgZGVzdGluYXRpb24tPnplcm8oKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIC8vIEZvciBlYWNoIGNoYW5uZWwgb2Ygb3VyIGlucHV0LCBwcm9jZXNz
IHVzaW5nIHRoZSBjb3JyZXNwb25kaW5nIElJUkRTUEtlcm5lbAorICAgIC8vIGludG8gdGhlIG91
dHB1dCBjaGFubmVsLgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9rZXJuZWxzLnNpemUo
KTsgKytpKQorICAgICAgICBtX2tlcm5lbHNbaV0tPnByb2Nlc3Moc291cmNlLT5jaGFubmVsKGkp
LT5kYXRhKCksIGRlc3RpbmF0aW9uLT5jaGFubmVsKGkpLT5tdXRhYmxlRGF0YSgpLCBmcmFtZXNU
b1Byb2Nlc3MpOworfQorCit2b2lkIElJUlByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2Uo
dW5zaWduZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNw
b25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCit7CisgICAgbV9yZXNwb25zZUtlcm5lbC0+Z2V0
RnJlcXVlbmN5UmVzcG9uc2UobGVuZ3RoLCBmcmVxdWVuY3lIeiwgbWFnUmVzcG9uc2UsIHBoYXNl
UmVzcG9uc2UpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJQcm9jZXNzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSUHJv
Y2Vzc29yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDRjNWVkOWRmOGU1OWI3ZTczYzIwNGViMGMzYTE0MjY1Y2E2
NDJkZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSUHJvY2Vzc29yLmgKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLmgiCisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkRTUEtlcm5l
bDsKKworY2xhc3MgSUlSUHJvY2Vzc29yIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsUHJv
Y2Vzc29yIHsKK3B1YmxpYzoKKyAgICBJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5z
aWduZWQgbnVtYmVyT2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJk
LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOwor
ICAgIH5JSVJQcm9jZXNzb3IoKTsKKworICAgIC8vIEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLgor
ICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyogZGVzdGlu
YXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOworICAgIHN0ZDo6dW5pcXVlX3B0
cjxBdWRpb0RTUEtlcm5lbD4gY3JlYXRlS2VybmVsKCkgZmluYWw7CisKKyAgICAvLyBHZXQgdGhl
IG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4g
c2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBpbiByYWRp
YW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3RoLCBjb25z
dCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVz
cG9uc2UpOworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkKCkgY29uc3Qg
eyByZXR1cm4gbV9mZWVkZm9yd2FyZDsgfQorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
YmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGJhY2s7IH0KKyAgICBib29sIGlzRmlsdGVyU3Rh
YmxlKCkgY29uc3QgeyByZXR1cm4gbV9pc0ZpbHRlclN0YWJsZTsgfQorCitwcml2YXRlOgorICAg
IFZlY3Rvcjxkb3VibGU+IG1fZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVk
YmFjazsKKyAgICBib29sIG1faXNGaWx0ZXJTdGFibGU7CisKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
SUlSRFNQS2VybmVsPiBtX3Jlc3BvbnNlS2VybmVsOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2Vi
Q29yZS9Tb3VyY2VzLnR4dAppbmRleCBkZTQ5ZmQyNjZiNmE4NGI5Yzg1M2I2YzVkOTRmZTM4YjI2
MDMxMzM3Li4zNjI2NjVhYjE3MTMxZjJjZjM3ZjhhZGY4OTA1NDA1YmYyOTcyNmM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dApAQCAtMjIxLDYgKzIyMSw5IEBAIE1vZHVsZXMvd2ViYXVkaW8vRGVsYXlOb2RlLmNw
cAogTW9kdWxlcy93ZWJhdWRpby9EZWxheVByb2Nlc3Nvci5jcHAKIE1vZHVsZXMvd2ViYXVkaW8v
RHluYW1pY3NDb21wcmVzc29yTm9kZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vR2Fpbk5vZGUuY3Bw
CitNb2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlSUHJvY2Vzc29yLmNwcAogTW9kdWxl
cy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1
ZGlvL01lZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlv
L01lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuY3BwCkBAIC0xNzk5LDYgKzE4MDIsNyBAQCBwbGF0Zm9y
bS9hdWRpby9IUlRGRGF0YWJhc2VMb2FkZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0
aW9uLmNwcAogcGxhdGZvcm0vYXVkaW8vSFJURktlcm5lbC5jcHAKIHBsYXRmb3JtL2F1ZGlvL0hS
VEZQYW5uZXIuY3BwCitwbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCiBwbGF0Zm9ybS9hdWRp
by9NdWx0aUNoYW5uZWxSZXNhbXBsZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9QYW5uZXIuY3BwCiBw
bGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHAKQEAgLTMwMzQsNiArMzAzOCw4
IEBAIEpTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogSlNJZGxlRGVhZGxpbmUuY3BwCiBKU0lk
bGVSZXF1ZXN0Q2FsbGJhY2suY3BwCiBKU0lkbGVSZXF1ZXN0T3B0aW9ucy5jcHAKK0pTSUlSRmls
dGVyTm9kZS5jcHAKK0pTSUlSRmlsdGVyT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXAuY3BwCiBK
U0ltYWdlQml0bWFwT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDNhMzYxYWE5OGU5YzI3YjM5ZjcyYmMyNWFmOThmZjAwY2E2MDNiMzAuLmRjMjk4M2Ji
NTNjYjkxZWE3ZmJlODgwYTVkZWQyZWEyYTNkMzYxZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTI0MzMsNiArMjQzMyw3IEBA
CiAJCTgzMDc4NEIyMUM1MkVFMkMwMDEwNEQxRCAvKiBYTUxEb2N1bWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwNzg0QjExQzUyRUUxOTAwMTA0
RDFEIC8qIFhNTERvY3VtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJODMwQTFDN0QyNERCNzg4QjAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1
ZGlvU291cmNlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODMwQTFDN0MyNERCNzg3MDAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291
cmNlT3B0aW9ucy5oICovOyB9OwogCQk4MzBBMzZCRDFEQUM1RkFEMDA2RDdEMDkgLyogSlNNb3Vz
ZUV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODMwQTM2QkIxREFDNUZBNzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLzsgfTsK
KwkJODMwRDBCNjkyNEY1N0Q2NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRDBCNjYyNEY1N0Q1MDAwN0VE
MTIyIC8qIElJUlByb2Nlc3Nvci5oICovOyB9OwogCQk4MzBFRUFCQTI0REI2QTY0MDA5RUZCQ0Ug
LyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRUVBQjcyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktp
dER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaCAqLzsgfTsKIAkJODMxMDJCMjcxRjlFQUREOTAwRTQw
NEI5IC8qIEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMxMDJCMjMxRjlFQURDMjAwRTQwNEI5IC8qIEpTRXh0
ZW5kYWJsZU1lc3NhZ2VFdmVudC5oICovOyB9OwogCQk4MzExQzAwMzFGQUEyRTk1MDBFM0M4RTUg
LyogU1dTZXJ2ZXJKb2JRdWV1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODMxMUMwMDIxRkFBMkU4OTAwRTNDOEU1IC8qIFNXU2VydmVySm9iUXVldWUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMjQ1
OSwxMiArMjQ2MCwxNSBAQAogCQk4MzQ4QkZBQzFCODU3Mjk4MDA5MTJGMzYgLyogQ2xhc3NDb2xs
ZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzQ4QkZBQTFCODU3Mjk1MDA5MTJGMzYgLyogQ2xhc3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTgz
NENCRkMyMjREQzc4NjcwMEMyQTNEOCAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlT3B0aW9ucy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM0Q0JGQkYy
NERDNzg1NTAwQzJBM0Q4IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggKi87IH07
CiAJCTgzNERGQUQwMUY3REFFNUQwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzUwNTFBMjI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVyTm9kZS5oICovOyB9OworCQk4
MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MDUxQTAyNEY1NzNBRTAwOTkx
MUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaCAqLzsgfTsKIAkJODM1MjBDN0UxQTcxQkZDQzAwNkJE
MkFBIC8qIENTU0ZvbnRGYW1pbHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNTIwQzdEMUE3MUJGQ0MwMDZCRDJBQSAvKiBDU1NGb250RmFtaWx5Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM1NkY5
N0YyNEQ5RjgxODAwNkMzRTQxIC8qIFdlYktpdEF1ZGlvTGlzdGVuZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTZGOTdFMjREOUY4MDkwMDZDM0U0
MSAvKiBXZWJLaXRBdWRpb0xpc3RlbmVyLmggKi87IH07CiAJCTgzNThDQjcwMUM1MzI3NzUwMEUw
QzJEOCAvKiBKU1hNTERvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4M0Y1NzBBRDFDNTMyNjhFMDA3RkQ2Q0IgLyogSlNYTUxEb2N1bWVudC5o
ICovOyB9OwogCQk4MzVEMkQ3ODFGNUYxRkJEMDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVu
dHJpZXNBUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNUQyRDc1MUY1RjFGQjgwMDE0MURFRCAvKiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5o
ICovOyB9OwogCQk4MzVEMzYzNzE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9t
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEMzYz
NjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi87IH07CiAJCTgzNUQ1
NEM1MUY0REU1MzgwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNUQ1NEMyMUY0REU1MzQw
MEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCAqLzsgfTsKKwkJODM1REE5MDIy
NEY1ODI2NTAwMjJEREE0IC8qIElJUkRTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1REE5MDEyNEY1ODI1NzAwMjJEREE0IC8qIElJUkRT
UEtlcm5lbC5oICovOyB9OwogCQk4MzYyRThDMTIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJl
YXRBc0NvbnRpbnVpbmdMb2FkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJODM2NTg5REUxRjU0QTc2OTAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJl
YWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2
NTg5RDkxRjU0QTc2MjAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5oICov
OyB9OwogCQk4MzY1ODlFMDFGNTRBNzZFMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzY1ODlEODFGNTRBNzYyMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmgg
Ki87IH07CkBAIC0yNTA0LDYgKzI1MDgsNyBAQAogCQk4Mzk5NDcxMDFGNTBCNkZBMDBFOUQ4NkIg
LyogSlNET01GaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4Mzk5NDcwRTFGNTBCNkYzMDBFOUQ4NkIgLyogSlNET01GaWxlU3lzdGVtLmgg
Ki87IH07CiAJCTgzOUEyRjJFMUUyMDRBNzEwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QTJGMkMx
RTIwNEE2RDAwMzkwNTdFIC8qIFdlYkdMU3RhdGVUcmFja2VyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM5QUFGRUQxQTBDMEM4RDAwNjA1Rjk5
IC8qIEhUTUxXQlJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzlBQUZFQjFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCAq
LzsgfTsKKwkJODM5QkU2RDUyNEY1ODc2MjAwNERGNTBGIC8qIElJUkZpbHRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QkU2RDIyNEY1ODc1NTAw
NERGNTBGIC8qIElJUkZpbHRlci5oICovOyB9OwogCQk4M0EyQUJEQjI0RDg2REUwMDBFMkQ3M0Qg
LyogRGVsYXlPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25zLmggKi87IH07
CiAJCTgzQThBQzQwMUZBQkJGRTUwMDIwNjRBQyAvKiBTZXJ2aWNlV29ya2VySWRlbnRpZmllci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNBOEFDM0Ux
RkFCQkZEMTAwMjA2NEFDIC8qIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODNCMUE3MDIyNDk5ODVGMDAw
RkU1OTYxIC8qIFdlYktpdEF1ZGlvQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODNCMUE2RkYyNDk5ODVEMDAwRkU1OTYxIC8qIFdlYktpdEF1
ZGlvQ29udGV4dC5oICovOyB9OwpAQCAtMTA0NDUsNiArMTA0NTAsOCBAQAogCQk4MzBBMUM3QzI0
REI3ODcwMDAyRUNDQUQgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk4MzBBMzZCQTFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50
SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vdXNlRXZl
bnRJbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODMwQTM2QkIxREFDNUZB
NzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNNb3VzZUV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IElJUlByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzBEMEI2
ODI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IElJUlByb2Nlc3Nvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEVFQUI3
MjREQjZBNTIwMDlFRkJDRSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODMwRUVBQjkyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNz
Q29tcHJlc3Nvck5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzEwMkIyMzFGOUVBREMyMDBFNDA0Qjkg
LyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTA0OTgsNiArMTA1MDUsMTEgQEAKIAkJODM0REQ0RjMxQkUwODk4OTAwMkM5QzNF
IC8qIFBhZ2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQ
YWdlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaGFyZWRTdHJpbmdIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTgzNERGQUNFMUY3REFFNTcwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXJlZFN0cmluZ0hhc2guY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTE5RTI0RjU3M0FEMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJGaWx0ZXJOb2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTAyNEY1NzNBRTAwOTkxMUQ3IC8qIElJ
UkZpbHRlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSRmlsdGVyT3B0aW9ucy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMTI0RjU3M0FFMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVyTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IElJUkZpbHRlck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM1MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IElJUkZpbHRlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzUwQzNFNzFEQTU5QjYyMDAzNTU0MjQgLyogU2Nyb2xsTG9naWNhbFBvc2l0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbExvZ2ljYWxQb3NpdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUwQzNFNzFEQTU5QjYyMDAzNTU0MzUgLyogU2Ny
b2xsSW50b1ZpZXdPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
cm9sbEludG9WaWV3T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUw
QzNFNzFEQTU5QjYyMDAzNTY0MjQgLyogU2Nyb2xsQmVoYXZpb3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQmVoYXZpb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTEwNTIwLDYgKzEwNTMyLDggQEAKIAkJODM1RDM2MzYxOUZGNjE5MzAwNEM5M0FC
IC8qIFN0eWxlQnVpbGRlckN1c3RvbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTdHlsZUJ1aWxkZXJDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1
RDU0QzExRjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXJlY3RvcnlGaWxlTGlzdENyZWF0
b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzVENTRDMjFGNERFNTM0MDBF
NjA2NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElJUkRTUEtlcm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNURBOTAxMjRGNTgyNTcwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSUlSRFNQS2VybmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNUY4QjI2MUQyRDkwQkEwMEU0MDhFQyAvKiBTbG90YWJsZS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gU2xvdGFibGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNob3VsZFRyZWF0QXNDb250aW51aW5n
TG9hZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzY1ODlEODFGNTRBNzYyMDBE
QzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTA2MDQsNiArMTA2MTgsOCBAQAogCQk4MzlBMkYyQzFFMjA0
QTZEMDAzOTA1N0UgLyogV2ViR0xTdGF0ZVRyYWNrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViR0xTdGF0ZVRyYWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJODM5QUFGRUExQTBDMEM4RDAwNjA1Rjk5IC8qIEhUTUxXQlJFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxXQlJFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM5QUFGRUIxQTBDMEM4RDAwNjA1Rjk5IC8qIEhU
TUxXQlJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxXQlJF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQyMjRGNTg3NTUw
MDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SUlSRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQ0MjRGNTg3
NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSUlSRmlsdGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNB
MkFCRDgyNEQ4NkRDNjAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
ZWxheU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBMkFCREEyNEQ4
NkRDNzAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGVsYXlPcHRpb25zLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBNEE5RjgxQ0U3RkQ3RTAwNzA5QjAwIC8q
IEpTWE1MRG9jdW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNYTUxEb2N1bWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0yOTY3OSw2ICsyOTY5NSwxNSBAQAogCQkJCUZEMzE1RkM0MTJCMDI2NzUwMEMxQTM1OSAv
KiBHYWluTm9kZS5pZGwgKi8sCiAJCQkJODM3NDVDRkYyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5P
cHRpb25zLmggKi8sCiAJCQkJODM3NDVEMDEyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5PcHRpb25z
LmlkbCAqLywKKwkJCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLywKKwkJCQk4MzVEQTkwMTI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggKi8s
CisJCQkJODM1MDUxOUUyNEY1NzNBRDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuY3BwICovLAor
CQkJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmggKi8sCisJCQkJ
ODM1MDUxQTEyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaWRsICovLAorCQkJCTgz
NTA1MUEwMjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggKi8sCisJCQkJODM1
MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICovLAorCQkJCTgz
MEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuY3BwICovLAorCQkJCTgzMEQw
QjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCAqLywKIAkJCQlGRDZGMjUyOTEz
RjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmNwcCAqLywKIAkJ
CQlGRDZGMjUyQTEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2Rl
LmggKi8sCiAJCQkJRkQ2RjI1MkIxM0Y1RUYwRTAwNjUxNjVGIC8qIE1lZGlhRWxlbWVudEF1ZGlv
U291cmNlTm9kZS5pZGwgKi8sCkBAIC0yOTgzMiw2ICsyOTg1Nyw4IEBACiAJCQkJRkQzMTYwNjkx
MkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZLZXJuZWwuaCAqLywKIAkJCQlGRDMxNjA2QTEyQjAyNkY3
MDBDMUEzNTkgLyogSFJURlBhbm5lci5jcHAgKi8sCiAJCQkJRkQzMTYwNkIxMkIwMjZGNzAwQzFB
MzU5IC8qIEhSVEZQYW5uZXIuaCAqLywKKwkJCQk4MzlCRTZENDI0RjU4NzU1MDA0REY1MEYgLyog
SUlSRmlsdGVyLmNwcCAqLywKKwkJCQk4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmls
dGVyLmggKi8sCiAJCQkJRkRCMTcwMDMxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hhbm5lbFJl
c2FtcGxlci5jcHAgKi8sCiAJCQkJRkRCMTcwMDQxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hh
bm5lbFJlc2FtcGxlci5oICovLAogCQkJCTQxNkZEMjVEMjQwRUUxQUUwMDY2NjFEOCAvKiBOb3dQ
bGF5aW5nSW5mby5oICovLApAQCAtMzE0NTAsNiArMzE0NzcsMTEgQEAKIAkJCQlDM0NGMTdBNzE1
QjAwNjNGMDAyNzZEMzkgLyogSWRUYXJnZXRPYnNlcnZlclJlZ2lzdHJ5LmggaW4gSGVhZGVycyAq
LywKIAkJCQk4QUI0QkM3NzEyNkZEQjcxMDBERUI3MjcgLyogSWdub3JlRGVzdHJ1Y3RpdmVXcml0
ZUNvdW50SW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ2NzMwMjAyMUM0RUZFNzgw
MEJDQjM1NyAvKiBJZ25vcmVPcGVuc0R1cmluZ1VubG9hZENvdW50SW5jcmVtZW50ZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzNURBOTAyMjRGNTgyNjUwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzOUJFNkQ1MjRGNTg3NjIwMDRERjUwRiAvKiBJSVJGaWx0
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcg
LyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMwRDBCNjkyNEY1N0Q2
NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjI3NTM1NzAw
QjA1MzgxNDAwMkNFNjRGIC8qIEltYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NUEzMzZGOTFE
ODIxRTNDMDAyMkM0QzcgLyogSW1hZ2VCYWNraW5nU3RvcmUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxODE1QTMxMUY5QTZDOEYwMEZDQkY4OSAvKiBJbWFnZUJpdG1hcC5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5h
bWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgK
aW5kZXggMjI0ZGJjMmU2MzM5ZTY0ZDUwNjNlYjJjZDViOTgxM2ZmZTczNjJkOC4uNmQwOWYyMWY2
ZGExZDNlY2EyMTkwMWI4NjEzOGUwM2NlNTAwYzI1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaApAQCAtMTQzLDYgKzE0Myw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhJREJSZXF1ZXN0KSBcCiAgICAgbWFjcm8oSURC
VHJhbnNhY3Rpb24pIFwKICAgICBtYWNybyhJREJWZXJzaW9uQ2hhbmdlRXZlbnQpIFwKKyAgICBt
YWNybyhJSVJGaWx0ZXJOb2RlKSBcCiAgICAgbWFjcm8oSW1hZ2VCaXRtYXApIFwKICAgICBtYWNy
byhJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQpIFwKICAgICBtYWNybyhJZGxlRGVhZGxpbmUp
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjExYjRiYWNmMjUzOGE4NGUyMjEwNmM2MTU2ZWM3MTk5YTE2NTQ1NjMKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCkBAIC0w
LDAgKzEsMjMxIEBACisvKgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJJSVJGaWx0ZXIuaCIKKworI2luY2x1ZGUgIlZlY3Rvck1hdGguaCIKKyNpbmNsdWRlIDxh
bGdvcml0aG0+CisjaW5jbHVkZSA8Y29tcGxleD4KKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5o
PgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NvbnN0ZXhwciB1bnNpZ25lZCBpaXJSZW5kZXJp
bmdRdWFudHVtID0gMTI4OworCisvLyBUaGUgbGVuZ3RoIG9mIHRoZSBtZW1vcnkgYnVmZmVycyBm
b3IgdGhlIElJUiBmaWx0ZXIuIFRoaXMgTVVTVCBiZSBhIHBvd2VyIG9mCisvLyB0d28gYW5kIG11
c3QgYmUgZ3JlYXRlciB0aGFuIHRoZSBwb3NzaWJsZSBsZW5ndGggb2YgdGhlIGZpbHRlciBjb2Vm
ZmljaWVudHMuCitjb25zdGV4cHIgaW50IGJ1ZmZlckxlbmd0aCA9IDMyOworc3RhdGljX2Fzc2Vy
dChidWZmZXJMZW5ndGggPj0gSUlSRmlsdGVyOjptYXhPcmRlciArIDEsICJJbnRlcm5hbCBJSVIg
YnVmZmVyIGxlbmd0aCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBtYXhpbXVtIElJUiBGaWx0ZXIgb3Jk
ZXIuIik7CisKK3N0YXRpYyBzdGQ6OmNvbXBsZXg8ZG91YmxlPiBldmFsdWF0ZVBvbHlub21pYWwo
Y29uc3QgZG91YmxlKiBjb2VmZmljaWVudHMsIHN0ZDo6Y29tcGxleDxkb3VibGU+IHosIGludCBv
cmRlcikKK3sKKyAgICAvLyBVc2UgSG9ybmVyJ3MgbWV0aG9kIHRvIGV2YWx1YXRlIHRoZSBwb2x5
bm9taWFsIFAoeikgPSBzdW0oY29lZltrXSp6XmssIGssIDAsIG9yZGVyKTsKKyAgICBzdGQ6OmNv
bXBsZXg8ZG91YmxlPiByZXN1bHQgPSAwOworICAgIGZvciAoaW50IGsgPSBvcmRlcjsgayA+PSAw
OyAtLWspCisgICAgICAgIHJlc3VsdCA9IHJlc3VsdCAqIHogKyBzdGQ6OmNvbXBsZXg8ZG91Ymxl
Pihjb2VmZmljaWVudHNba10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK0lJUkZpbHRlcjo6
SUlSRmlsdGVyKGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9y
PGRvdWJsZT4mIGZlZWRiYWNrKQorICAgIDogbV9mZWVkZm9yd2FyZChmZWVkZm9yd2FyZCkKKyAg
ICAsIG1fZmVlZGJhY2soZmVlZGJhY2spCit7CisgICAgbV94QnVmZmVyLmZpbGwoMCwgYnVmZmVy
TGVuZ3RoKTsKKyAgICBtX3lCdWZmZXIuZmlsbCgwLCBidWZmZXJMZW5ndGgpOworfQorCit2b2lk
IElJUkZpbHRlcjo6cmVzZXQoKQoreworICAgIG1feEJ1ZmZlci5maWxsKDApOworICAgIG1feUJ1
ZmZlci5maWxsKDApOworICAgIG1fYnVmZmVySW5kZXggPSAwOworfQorCit2b2lkIElJUkZpbHRl
cjo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVf
dCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgLy8gQ29tcHV0ZQorICAgIC8vCisgICAgLy8gICB5
W25dID0gc3VtKGJba10gKiB4W24gLSBrXSwgayA9IDAsIE0pIC0gc3VtKGFba10gKiB5W24gLSBr
XSwgayA9IDEsIE4pCisgICAgLy8KKyAgICAvLyB3aGVyZSBiW2tdIGFyZSB0aGUgZmVlZGZvcndh
cmQgY29lZmZpY2llbnRzIGFuZCBhW2tdIGFyZSB0aGUgZmVlZGJhY2sKKyAgICAvLyBjb2VmZmlj
aWVudHMgb2YgdGhlIGZpbHRlci4KKyAgICAvLyBUaGlzIGlzIGEgRGlyZWN0IEZvcm0gSSBpbXBs
ZW1lbnRhdGlvbiBvZiBhbiBJSVIgRmlsdGVyLiBTaG91bGQgd2UKKyAgICAvLyBjb25zaWRlciBk
b2luZyBhIGRpZmZlcmVudCBpbXBsZW1lbnRhdGlvbiBzdWNoIGFzIFRyYW5zcG9zZWQgRGlyZWN0
IEZvcm0KKyAgICAvLyBJST8KKyAgICBjb25zdCBkb3VibGUqIGZlZWRiYWNrID0gbV9mZWVkYmFj
ay5kYXRhKCk7CisgICAgY29uc3QgZG91YmxlKiBmZWVkZm9yd2FyZCA9IG1fZmVlZGZvcndhcmQu
ZGF0YSgpOworCisgICAgQVNTRVJUKGZlZWRiYWNrKTsKKyAgICBBU1NFUlQoZmVlZGZvcndhcmQp
OworCisgICAgLy8gU2FuaXR5IGNoZWNrIHRvIHNlZSBpZiB0aGUgZmVlZGJhY2sgY29lZmZpY2ll
bnRzIGhhdmUgYmVlbiBzY2FsZWQgYXBwcm9wcmlhdGVseS4gSXQgbXVzdCBiZSBFWEFDVExZIDEh
CisgICAgQVNTRVJUKGZlZWRiYWNrWzBdID09IDEpOworCisgICAgaW50IGZlZWRiYWNrTGVuZ3Ro
ID0gbV9mZWVkYmFjay5zaXplKCk7CisgICAgaW50IGZlZWRmb3J3YXJkTGVuZ3RoID0gbV9mZWVk
Zm9yd2FyZC5zaXplKCk7CisgICAgaW50IG1pbkxlbmd0aCA9IHN0ZDo6bWluKGZlZWRiYWNrTGVu
Z3RoLCBmZWVkZm9yd2FyZExlbmd0aCk7CisKKyAgICBkb3VibGUqIHhCdWZmZXIgPSBtX3hCdWZm
ZXIuZGF0YSgpOworICAgIGRvdWJsZSogeUJ1ZmZlciA9IG1feUJ1ZmZlci5kYXRhKCk7CisKKyAg
ICBmb3IgKHNpemVfdCBuID0gMDsgbiA8IGZyYW1lc1RvUHJvY2VzczsgKytuKSB7CisgICAgICAg
IC8vIFRvIGhlbHAgbWluaW1pemUgcm91bmRvZmYsIHdlIGNvbXB1dGUgdXNpbmcgZG91YmxlJ3Ms
IGV2ZW4gdGhvdWdoIHRoZQorICAgICAgICAvLyBmaWx0ZXIgY29lZmZpY2llbnRzIG9ubHkgaGF2
ZSBzaW5nbGUgcHJlY2lzaW9uIHZhbHVlcy4KKyAgICAgICAgZG91YmxlIHluID0gZmVlZGZvcndh
cmRbMF0gKiBzb3VyY2Vbbl07CisKKyAgICAgICAgLy8gUnVuIGJvdGggdGhlIGZlZWRmb3J3YXJk
IGFuZCBmZWVkYmFjayB0ZXJtcyB0b2dldGhlciwgd2hlbiBwb3NzaWJsZS4KKyAgICAgICAgZm9y
IChpbnQgayA9IDE7IGsgPCBtaW5MZW5ndGg7ICsraykgeworICAgICAgICAgICAgaW50IG0gPSAo
bV9idWZmZXJJbmRleCAtIGspICYgKGJ1ZmZlckxlbmd0aCAtIDEpOworICAgICAgICAgICAgeW4g
Kz0gZmVlZGZvcndhcmRba10gKiB4QnVmZmVyW21dOworICAgICAgICAgICAgeW4gLT0gZmVlZGJh
Y2tba10gKiB5QnVmZmVyW21dOworICAgICAgICB9CisKKyAgICAgICAgLy8gSGFuZGxlIGFueSBy
ZW1haW5pbmcgZmVlZGZvcndhcmQgb3IgZmVlZGJhY2sgdGVybXMuCisgICAgICAgIGZvciAoaW50
IGsgPSBtaW5MZW5ndGg7IGsgPCBmZWVkZm9yd2FyZExlbmd0aDsgKytrKQorICAgICAgICAgICAg
eW4gKz0gZmVlZGZvcndhcmRba10gKiB4QnVmZmVyWyhtX2J1ZmZlckluZGV4IC0gaykgJiAoYnVm
ZmVyTGVuZ3RoIC0gMSldOworICAgICAgICBmb3IgKGludCBrID0gbWluTGVuZ3RoOyBrIDwgZmVl
ZGJhY2tMZW5ndGg7ICsraykKKyAgICAgICAgICAgIHluIC09IGZlZWRiYWNrW2tdICogeUJ1ZmZl
clsobV9idWZmZXJJbmRleCAtIGspICYgKGJ1ZmZlckxlbmd0aCAtIDEpXTsKKworICAgICAgICAv
LyBTYXZlIHRoZSBjdXJyZW50IGlucHV0IGFuZCBvdXRwdXQgdmFsdWVzIGluIHRoZSBtZW1vcnkg
YnVmZmVycyBmb3IgdGhlCisgICAgICAgIC8vIG5leHQgb3V0cHV0LgorICAgICAgICBtX3hCdWZm
ZXJbbV9idWZmZXJJbmRleF0gPSBzb3VyY2Vbbl07CisgICAgICAgIG1feUJ1ZmZlclttX2J1ZmZl
ckluZGV4XSA9IHluOworCisgICAgICAgIG1fYnVmZmVySW5kZXggPSAobV9idWZmZXJJbmRleCAr
IDEpICYgKGJ1ZmZlckxlbmd0aCAtIDEpOworCisgICAgICAgIGRlc3RpbmF0aW9uW25dID0geW47
CisgICAgfQorfQorCit2b2lkIElJUkZpbHRlcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWdu
ZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZs
b2F0KiBwaGFzZVJlc3BvbnNlKQoreworICAgIC8vIEV2YWx1YXRlIHRoZSB6LXRyYW5zZm9ybSBv
ZiB0aGUgZmlsdGVyIGF0IHRoZSBnaXZlbiBub3JtYWxpemVkIGZyZXF1ZW5jaWVzCisgICAgLy8g
ZnJvbSAwIHRvIDEuIChPbmUgY29ycmVzcG9uZHMgdG8gdGhlIE55cXVpc3QgZnJlcXVlbmN5LikK
KyAgICAvLworICAgIC8vIFRoZSB6LXRyYW5mb3JtIG9mIHRoZSBmaWx0ZXIgaXMKKyAgICAvLwor
ICAgIC8vIEgoeikgPSBzdW0oYltrXSp6XigtayksIGssIDAsIE0pIC8gc3VtKGFba10qel4oLWsp
LCBrLCAwLCBOKTsKKyAgICAvLworICAgIC8vIFRoZSBkZXNpcmVkIGZyZXF1ZW5jeSByZXNwb25z
ZSBpcyBIKGV4cChqKm9tZWdhKSksIHdoZXJlIG9tZWdhIGlzIGluIFswLAorICAgIC8vIDEpLgor
ICAgIC8vCisgICAgLy8gTGV0IFAoeCkgPSBzdW0oY1trXSp4XmssIGssIDAsIFApIGJlIGEgcG9s
eW5vbWlhbCBvZiBvcmRlciBQLiBUaGVuIGVhY2ggb2YKKyAgICAvLyB0aGUgc3VtcyBpbiBIKHop
IGlzIGVxdWl2YWxlbnQgdG8gZXZhbHVhdGluZyBhIHBvbHlub21pYWwgYXQgdGhlIHBvaW50Cisg
ICAgLy8gMS96LgorCisgICAgZm9yICh1bnNpZ25lZCBrID0gMDsgayA8IGxlbmd0aDsgKytrKSB7
CisgICAgICAgIGlmIChmcmVxdWVuY3lba10gPCAwIHx8IGZyZXF1ZW5jeVtrXSA+IDEpIHsKKyAg
ICAgICAgICAgIC8vIE91dC1vZi1ib3VuZHMgZnJlcXVlbmNpZXMgc2hvdWxkIHJldHVybiBOYU4u
CisgICAgICAgICAgICBtYWdSZXNwb25zZVtrXSA9IHN0ZDo6bmFuZigiIik7CisgICAgICAgICAg
ICBwaGFzZVJlc3BvbnNlW2tdID0gc3RkOjpuYW5mKCIiKTsKKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIC8vIHpSZWNpcCA9IDEveiA9IGV4cCgtaipmcmVxdWVuY3kpCisgICAgICAgICAg
ICBkb3VibGUgb21lZ2EgPSAtcGlEb3VibGUgKiBmcmVxdWVuY3lba107CisgICAgICAgICAgICBh
dXRvIHpSZWNpcCA9IHN0ZDo6Y29tcGxleDxkb3VibGU+KGNvcyhvbWVnYSksIHNpbihvbWVnYSkp
OworCisgICAgICAgICAgICBhdXRvIG51bWVyYXRvciA9IGV2YWx1YXRlUG9seW5vbWlhbChtX2Zl
ZWRmb3J3YXJkLmRhdGEoKSwgelJlY2lwLCBtX2ZlZWRmb3J3YXJkLnNpemUoKSAtIDEpOworICAg
ICAgICAgICAgYXV0byBkZW5vbWluYXRvciA9IGV2YWx1YXRlUG9seW5vbWlhbChtX2ZlZWRiYWNr
LmRhdGEoKSwgelJlY2lwLCBtX2ZlZWRiYWNrLnNpemUoKSAtIDEpOworICAgICAgICAgICAgYXV0
byByZXNwb25zZSA9IG51bWVyYXRvciAvIGRlbm9taW5hdG9yOworICAgICAgICAgICAgbWFnUmVz
cG9uc2Vba10gPSBzdGF0aWNfY2FzdDxmbG9hdD4oYWJzKHJlc3BvbnNlKSk7CisgICAgICAgICAg
ICBwaGFzZVJlc3BvbnNlW2tdID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KGF0YW4yKGltYWcocmVzcG9u
c2UpLCByZWFsKHJlc3BvbnNlKSkpOworICAgICAgICB9CisgICAgfQorfQorCitkb3VibGUgSUlS
RmlsdGVyOjp0YWlsVGltZShkb3VibGUgc2FtcGxlUmF0ZSwgYm9vbCBpc0ZpbHRlclN0YWJsZSkK
K3sKKyAgICAvLyBUaGUgbWF4aW11bSB0YWlsIHRpbWUuIFRoaXMgaXMgc29tZXdoYXQgYXJiaXRy
YXJ5LCBidXQgd2UncmUgYXNzdW1pbmcgdGhhdAorICAgIC8vIG5vIG9uZSBpcyBnb2luZyB0byBl
eHBlY3QgdGhlIElJUkZpbHRlciB0byBwcm9kdWNlIGFuIG91dHB1dCBhZnRlciB0aGlzCisgICAg
Ly8gbXVjaCB0aW1lIGFmdGVyIHRoZSBpbnB1dHMgaGF2ZSBzdG9wcGVkLgorICAgIGNvbnN0ZXhw
ciBkb3VibGUgbWF4VGFpbFRpbWUgPSAxMDsKKworICAgIC8vIElmIHRoZSBtYXhpbXVtIGFtcGxp
dHVkZSBvZiB0aGUgaW1wdWxzZSByZXNwb25zZSBpcyBsZXNzIHRoYW4gdGhpcywgd2UKKyAgICAv
LyBhc3N1bWUgdGhhdCB3ZSd2ZSByZWFjaGVkIHRoZSB0YWlsIG9mIHRoZSByZXNwb25zZS4gQ3Vy
cmVudGx5LCB0aGlzIG1lYW5zCisgICAgLy8gdGhhdCB0aGUgaW1wdWxzZSBpcyBsZXNzIHRoYW4g
MSBiaXQgb2YgYSAxNi1iaXQgUENNIHZhbHVlLgorICAgIGNvbnN0ZXhwciBmbG9hdCBtYXhUYWls
QW1wbGl0dWRlID0gMSAvIDMyNzY4LjA7CisKKyAgICAvLyBJZiBmaWx0ZXIgaXMgbm90IHN0YWJs
ZSwganVzdCByZXR1cm4gbWF4IHRhaWwuIFNpbmNlIHRoZSBmaWx0ZXIgaXMgbm90CisgICAgLy8g
c3RhYmxlLCB0aGUgaW1wdWxzZSByZXNwb25zZSB3b24ndCBjb252ZXJnZSB0byB6ZXJvLCBzbyB3
ZSBkb24ndCBuZWVkIHRvCisgICAgLy8gZmluZCB0aGUgaW1wdWxzZSByZXNwb25zZSB0byBmaW5k
IHRoZSBhY3R1YWwgdGFpbCB0aW1lLgorICAgIGlmICghaXNGaWx0ZXJTdGFibGUpCisgICAgICAg
IHJldHVybiBtYXhUYWlsVGltZTsKKworICAgIC8vIEhvdyB0byBjb21wdXRlIHRoZSB0YWlsIHRp
bWU/IFdlJ3JlIGdvaW5nIHRvIGZpbHRlciBhbiBpbXB1bHNlCisgICAgLy8gZm9yIHxtYXhUYWls
VGltZXwgc2Vjb25kcywgaW4gYmxvY2tzIG9mIGtSZW5kZXJRdWFudHVtRnJhbWVzIGF0CisgICAg
Ly8gYSB0aW1lLiBUaGUgbWF4aW11bSBtYWduaXR1ZGUgb2YgdGhpcyBibG9jayBpcyBzYXZlZC4g
QWZ0ZXIgYWxsCisgICAgLy8gb2YgdGhlIHNhbXBsZXMgaGF2ZSBiZWVuIGNvbXB1dGVkLCBmaW5k
IHRoZSBsYXN0IGJsb2NrIHdpdGggYQorICAgIC8vIG1heGltdW0gbWFnbml0dWRlIGdyZWF0ZXIg
dGhhbiB8a01heFRhaWxlQW1wbGl0dWRlfC4gVGhhdCBibG9jaworICAgIC8vIGluZGV4ICsgMSB3
aWxsIGJlIHRoZSB0YWlsIHRpbWUuIFdlIGRvbid0IG5lZWQgdG8gYmUKKyAgICAvLyBzdXBlci1h
Y2N1cmF0ZSBpbiBjb21wdXRpbmcgdGhlIHRhaWwgdGltZSBzaW5jZSB3ZSBwcm9jZXNzIG9uCisg
ICAgLy8gYmxvY2tzLCBibG9jayBhY2N1cmFjeSBpcyBnb29kIGVub3VnaCwgYW5kIHRoZSB2YWx1
ZSBqdXN0IG5lZWRzCisgICAgLy8gdG8gYmUgbGFyZ2VyIHRoYW4gdGhlICJyZWFsIiB0YWlsIHRp
bWUsIHNvIHdlIGRvbid0IHByZW1hdHVyZWx5CisgICAgLy8gemVybyBvdXQgdGhlIG91dHB1dCBv
ZiB0aGUgbm9kZS4KKworICAgIC8vIE51bWJlciBvZiByZW5kZXIgcXVhbnRhIG5lZWRlZCB0byBy
ZWFjaCB0aGUgbWF4IHRhaWwgdGltZS4KKyAgICBpbnQgbnVtYmVyT2ZCbG9ja3MgPSBzdGQ6OmNl
aWwoc2FtcGxlUmF0ZSAqIG1heFRhaWxUaW1lIC8gaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisKKyAg
ICAvLyBJbnB1dCBhbmQgb3V0cHV0IGJ1ZmZlcnMgZm9yIGZpbHRlcmluZy4KKyAgICBBdWRpb0Zs
b2F0QXJyYXkgaW5wdXQoaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisgICAgQXVkaW9GbG9hdEFycmF5
IG91dHB1dChpaXJSZW5kZXJpbmdRdWFudHVtKTsKKworICAgIC8vIEFycmF5IHRvIGhvbGQgdGhl
IG1heCBtYWduaXR1ZGVzCisgICAgQXVkaW9GbG9hdEFycmF5IG1hZ25pdHVkZXMobnVtYmVyT2ZC
bG9ja3MpOworCisgICAgLy8gQ3JlYXRlIHRoZSBpbXB1bHNlIGlucHV0IHNpZ25hbC4KKyAgICBp
bnB1dFswXSA9IDE7CisKKyAgICAvLyBQcm9jZXNzIHRoZSBmaXJzdCBibG9jayBhbmQgZ2V0IHRo
ZSBtYXggbWFnbml0dWRlIG9mIHRoZSBvdXRwdXQuCisgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCks
IG91dHB1dC5kYXRhKCksIGlpclJlbmRlcmluZ1F1YW50dW0pOworICAgIFZlY3Rvck1hdGg6OnZt
YXhtZ3Yob3V0cHV0LmRhdGEoKSwgMSwgJm1hZ25pdHVkZXNbMF0sIGlpclJlbmRlcmluZ1F1YW50
dW0pOworCisgICAgLy8gUHJvY2VzcyB0aGUgcmVzdCBvZiB0aGUgc2lnbmFsLCBnZXR0aW5nIHRo
ZSBtYXggbWFnbml0dWRlIG9mIHRoZQorICAgIC8vIG91dHB1dCBmb3IgZWFjaCBibG9jay4KKyAg
ICBpbnB1dFswXSA9IDA7CisKKyAgICBmb3IgKGludCBrID0gMTsgayA8IG51bWJlck9mQmxvY2tz
OyArK2spIHsKKyAgICAgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCksIG91dHB1dC5kYXRhKCksIGlp
clJlbmRlcmluZ1F1YW50dW0pOworICAgICAgICBWZWN0b3JNYXRoOjp2bWF4bWd2KG91dHB1dC5k
YXRhKCksIDEsICZtYWduaXR1ZGVzW2tdLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKyAgICB9CisK
KyAgICAvLyBEb25lIGNvbXB1dGluZyB0aGUgaW1wdWxzZSByZXNwb25zZTsgcmVzZXQgdGhlIHN0
YXRlIHNvIHRoZSBhY3R1YWwgbm9kZQorICAgIC8vIHN0YXJ0cyBpbiB0aGUgZXhwZWN0ZWQgaW5p
dGlhbCBzdGF0ZS4KKyAgICByZXNldCgpOworCisgICAgLy8gRmluZCB0aGUgbGFzdCBibG9jayB3
aXRoIGFtcGxpdHVkZSBncmVhdGVyIHRoYW4gdGhlIHRocmVzaG9sZC4KKyAgICBpbnQgaW5kZXgg
PSBudW1iZXJPZkJsb2NrcyAtIDE7CisgICAgZm9yIChpbnQgayA9IGluZGV4OyBrID49IDA7IC0t
aykgeworICAgICAgICBpZiAobWFnbml0dWRlc1trXSA+IG1heFRhaWxBbXBsaXR1ZGUpIHsKKyAg
ICAgICAgICAgIGluZGV4ID0gazsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAg
fQorCisgICAgLy8gVGhlIG1hZ25pdHVkZSBmaXJzdCBiZWNvbWUgbG93ZXIgdGhhbiB0aGUgdGhy
ZXNob2xkIGF0IHRoZSBuZXh0IGJsb2NrLgorICAgIC8vIENvbXB1dGUgdGhlIGNvcnJlc3BvbmRp
bmcgdGltZSB2YWx1ZSB2YWx1ZTsgdGhhdCdzIHRoZSB0YWlsIHRpbWUuCisgICAgcmV0dXJuIChp
bmRleCArIDEpICogaWlyUmVuZGVyaW5nUXVhbnR1bSAvIHNhbXBsZVJhdGU7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0lJUkZpbHRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSUlSRmlsdGVy
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZDBiZDdkZTcxZGMyNGJlZjBhZDIxZmNmMTU4NGVlMDJkZjYzMGI4NQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRl
ci5oCkBAIC0wLDAgKzEsNzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0g
QXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSUlSRmlsdGVyIHsKKyAgICBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBzdGF0aWMgY29uc3RleHByIHNpemVfdCBtYXhPcmRl
ciB7IDIwIH07CisgICAgSUlSRmlsdGVyKGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2Fy
ZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKTsKKworICAgIHZvaWQgcmVzZXQoKTsK
KworICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRp
b24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9u
c2UodW5zaWduZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5LCBmbG9hdCogbWFnUmVz
cG9uc2UsIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKKyAgICBkb3VibGUgdGFpbFRpbWUoZG91Ymxl
IHNhbXBsZVJhdGUsIGJvb2wgaXNGaWx0ZXJTdGFibGUpOworCisgICAgY29uc3QgVmVjdG9yPGRv
dWJsZT4mIGZlZWRmb3J3YXJkKCkgY29uc3QgeyByZXR1cm4gbV9mZWVkZm9yd2FyZDsgfQorICAg
IGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGJh
Y2s7IH0KKworcHJpdmF0ZToKKyAgICAvLyBGaWx0ZXIgbWVtb3J5CisgICAgLy8KKyAgICAvLyBG
b3Igc2ltcGxpY2l0eSwgd2UgYXNzdW1lIHxtX3hCdWZmZXJ8IGFuZCB8bV95QnVmZmVyfCBoYXZl
IHRoZSBzYW1lIGxlbmd0aCwKKyAgICAvLyBhbmQgdGhlIGxlbmd0aCBpcyBhIHBvd2VyIG9mIHR3
by4gU2luY2UgdGhlIG51bWJlciBvZiBjb2VmZmljaWVudHMgaGFzIGEKKyAgICAvLyBmaXhlZCB1
cHBlciBsZW5ndGgsIHRoZSBzaXplIG9mIHhCdWZmZXIgYW5kIHlCdWZmZXIgaXMgZml4ZWQuIHxt
X3hCdWZmZXJ8CisgICAgLy8gaG9sZHMgdGhlIG9sZCBpbnB1dCB2YWx1ZXMgYW5kIHxtX3lCdWZm
ZXJ8IGhvbGRzIHRoZSBvbGQgb3V0cHV0IHZhbHVlcworICAgIC8vIG5lZWRlZCB0byBjb21wdXRl
IHRoZSBuZXcgb3V0cHV0IHZhbHVlLgorICAgIC8vCisgICAgLy8gbV95QnVmZmVyW21fYnVmZmVy
SW5kZXhdIGhvbGRzIHRoZSBtb3N0IHJlY2VudCBvdXRwdXQgdmFsdWUsIHNheSwgeVtuXS4KKyAg
ICAvLyBUaGVuIG1feUJ1ZmZlclttX2J1ZmZlckluZGV4IC0ga10gaXMgeVtuIC0ga10uIFNpbWls
YXJseSBmb3IgbV94QnVmZmVyLgorICAgIC8vCisgICAgLy8gVG8gbWluaW1pemUgcm91bmRvZmYs
IHRoZXNlIGFycmF5cyBhcmUgZG91YmxlJ3MgaW5zdGVhZCBvZiBmbG9hdHMuCisgICAgVmVjdG9y
PGRvdWJsZT4gbV94QnVmZmVyOworICAgIFZlY3Rvcjxkb3VibGU+IG1feUJ1ZmZlcjsKKworICAg
IC8vIEluZGV4IGludG8gdGhlIHhCdWZmZXIgYW5kIHlCdWZmZXIgYXJyYXlzIHdoZXJlIHRoZSBt
b3N0IGN1cnJlbnQgeCBhbmQgeQorICAgIC8vIHZhbHVlcyBzaG91bGQgYmUgc3RvcmVkLiB4QnVm
ZmVyW2J1ZmZlckluZGV4XSBjb3JyZXNwb25kcyB0byB4W25dLCB0aGUKKyAgICAvLyBjdXJyZW50
IHggaW5wdXQgdmFsdWUgYW5kIHlCdWZmZXJbYnVmZmVySW5kZXhdIGlzIHdoZXJlIHlbbl0sIHRo
ZSBjdXJyZW50CisgICAgLy8gb3V0cHV0IHZhbHVlLgorICAgIHNpemVfdCBtX2J1ZmZlckluZGV4
IHsgMCB9OworCisgICAgLy8gVGhvc2UgVmVjdG9ycyBhcmUgb3duZWQgYnkgdGhlIElJUlByb2Nl
c3MsIHdoaWNoIG93bnMgdGhlIElJUkZpbHRlcnMgdmlhCisgICAgLy8gdGhlIElJUkRTUEtlcm5l
bHMuIFRoaXMgaXMgYSBtZW1vcnkgb3B0aW1pemF0aW9uIHRvIGF2b2lkIGhhdmluZyBjb3BpZXMK
KyAgICAvLyBvZiB0aGVzZSB2ZWN0b3JzIGluIGVhY2ggSUlSRFNQS2VybmVsIC8gSUlSRmlsdGVy
LgorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBtX2ZlZWRmb3J3YXJkOworICAgIGNvbnN0IFZl
Y3Rvcjxkb3VibGU+JiBtX2ZlZWRiYWNrOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGlsaXRp
ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVzLmgK
aW5kZXggOWIxOGNhYThkODZiZjhkMjc1M2MzY2JlY2E1ZDc0NDRmYWY5ODFkNy4uMDNjZjExN2Q1
NGQ0MTkxODVkNGE4ZjAyNDYwNDc1NDU4MGM1MWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGlsaXRpZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oCkBAIC0yNSw2ICsyNSw5IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKyNpbmNsdWRlIDx3dGYv
V29ya1F1ZXVlLmg+CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV0VCQ09SRV9FWFBPUlQgV29y
a1F1ZXVlJiBzaGFyZWRJbWFnZVRyYW5zY29kaW5nUXVldWUoKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nCmluZGV4IDU3YTYxMjUxY2I0YjMzNmQzOTIyZWM1MmFiZmE5YjY2YzI2NDcxODcu
LjE5M2M3YmM0ZDk5ZTg3Nzk0NTI3ZGUyNjgwOTE5ODg1Yzk2YTM5YzAgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA4LTI1ICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2Ug
aXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAg
ICAgICAgUmViYXNlbGluZSBXUFQgdGVzdHMgdGhhdCBhcmUgbm93IHBhc3NpbmcuCisKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9jdG9yLWlpcmZpbHRlci1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlp
cmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1leHBl
Y3RlZC50eHQ6CisKIDIwMjAtMDgtMjQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5A
d2Via2l0Lm9yZz4KIAogICAgICAgICBVcGRhdGUgaU9TIGxheW91dCB0ZXN0IHJlc3VsdHMgYWZ0
ZXIgcjI2NjA4NwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xh
eW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggN2U5NzI4NzkwOWFmMzZhZDcwYzhhZjdl
YmJjMmI2ZTUzN2ExMmFlZC4uMDAyZTM3ZWZiOTg3YjU4MTQ2ZGI0YjQwNDU4MGZjNzg3NTlkM2U3
NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMzUsOCArMzM1LDEyIEBAIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1p
bnRlcmZhY2UvCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1kZWxheS5odG1sIFsgUGFz
cyBGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWdhaW4uaHRtbCBbIFBh
c3MgRmFpbHVyZSBdCiAKLSMgVGhpcyB0ZXN0IHBhc3NlcyBidXQgcHJpbnRzIGEgZGlmZmVyZW50
IHZhbHVlIGFsbW9zdCBldmVyeSB0aW1lLgorIyBvbmUtcG9sZSBzdWJ0ZXN0IGlzIGZsYWtpbHkg
ZmFpbGluZy4KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLmh0bWwgWyBQYXNz
IEZhaWx1cmUgXQorCisjIFRoZXNlIHRlc3RzIHBhc3MgYnV0IHByaW50IGRpZmZlcmVudCB2YWx1
ZXMgYWxtb3N0IGV2ZXJ5IHRpbWUuCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZl
ci1yZXNwb25zZS00LWNoYW4uaHRtbCBbIFBhc3MgRmFpbHVyZSBdCitpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUt
aW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCiAKICMgU29t
ZSBvZiB0aGUgc3ViY2hlY2tzIGFyZSBmYWlsaW5nIGFuZCBwcmludCBvdXQgYSBkaWZmZXJlbnQg
dmFsdWUgZXZlcnkgdGltZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNWU5MTIzMmY4
N2NkN2UwYTBkYWZlMjkwMTg2NTQ3YjNmM2FmNjUxOC4uODE3NDk0NTUxNjg0MjA0ZDI1YmM0OGQx
MTFmNGRiMmFiMGNiNGFlNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTMzLDcgKzMz
LDcgQEAgUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUNv
bnZvbHZlcigpCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3Jl
YXRlRGVsYXkob3B0aW9uYWwgZG91YmxlKSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZh
Y2U6IG9wZXJhdGlvbiBjcmVhdGVEeW5hbWljc0NvbXByZXNzb3IoKSAKIFBBU1MgQmFzZUF1ZGlv
Q29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVHYWluKCkgCi1GQUlMIEJhc2VBdWRp
b0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRv
dWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIGFzc2VydF9vd25fcHJvcGVydHk6IGludGVyZmFjZSBw
cm90b3R5cGUgb2JqZWN0IG1pc3Npbmcgbm9uLXN0YXRpYyBvcGVyYXRpb24gZXhwZWN0ZWQgcHJv
cGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbWlzc2luZworUEFTUyBCYXNlQXVkaW9Db250ZXh0IGlu
dGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1
ZW5jZTxkb3VibGU+KSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlv
biBjcmVhdGVPc2NpbGxhdG9yKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBv
cGVyYXRpb24gY3JlYXRlUGFubmVyKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNl
OiBvcGVyYXRpb24gY3JlYXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8
ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25zdHJhaW50cykgCkBAIC05NCw4ICs5NCw4
IEBAIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjcmVhdGVEZWxheShvcHRpCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJm
YWNlOiBjYWxsaW5nIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJsZSkgb24gY29udGV4dCB3aXRo
IHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAogUEFTUyBCYXNlQXVkaW9D
b250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUR5
bmFtaWNzQ29tcHJlc3NvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlv
Q29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVH
YWluKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVy
ZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlcihzZXF1
ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNz
ZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3QgZm91bmQgaW4gcHJv
dG90eXBlIGNoYWluCi1GQUlMIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNy
ZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSBvbiBjb250
ZXh0IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2lu
aGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3QgZm91bmQgaW4gcHJvdG90eXBl
IGNoYWluCitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNl
PGRvdWJsZT4pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBp
bnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVl
bmNlPGRvdWJsZT4pIG9uIGNvbnRleHQgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93
IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVPc2NpbGxhdG9yKCkiIHdpdGggdGhlIHByb3BlciB0
eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVy
aXQgcHJvcGVydHkgImNyZWF0ZVBhbm5lcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1Mg
QmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJjcmVhdGVQZXJpb2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+LCBzZXF1ZW5jZTxmbG9hdD4sIG9w
dGlvbmFsIFBlcmlvZGljV2F2ZUNvbnN0cmFpbnRzKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCkBA
IC0xNDcsOCArMTQ3LDggQEAgUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9m
ZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QKIFBBU1MgQmFzZUF1ZGlv
Q29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlRGVsYXkob3B0aW9uYWwgZG91YmxlKSBv
biBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgd2l0aCB0b28gZmV3
IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBp
bnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUR5bmFtaWNzQ29tcHJlc3NvcigpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5l
QXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNy
ZWF0ZUdhaW4oKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCi1GQUlMIEJhc2VBdWRpb0NvbnRleHQg
aW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2Vx
dWVuY2U8ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJv
cGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJ
TCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2Vx
dWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRl
eHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBU
eXBlRXJyb3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3Qg
Zm91bmQgaW4gcHJvdG90eXBlIGNoYWluCitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNl
OiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91
YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVy
ZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8
ZG91YmxlPikgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdp
dGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNTIEJhc2VBdWRp
b0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVf
cmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVPc2NpbGxhdG9yKCkiIHdpdGggdGhl
IHByb3BlciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxp
bmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAi
Y3JlYXRlUGFubmVyKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250
ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUp
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0
Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25zdHJhaW50cykiIHdp
dGggdGhlIHByb3BlciB0eXBlIApAQCAtNzQ0LDQwICs3NDQsNDAgQEAgUEFTUyBBdWRpb05vZGUg
aW50ZXJmYWNlOiBuZXcgR2Fpbk5vZGUoY29udGV4dCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJu
dW1iZXJPZk8KIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5Ob2RlKGNvbnRleHQp
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50IiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSAKIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5Ob2RlKGNvbnRleHQpIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
CiBQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRp
ZXMgb2YgaW50ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90
IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlS
RmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3Qg
bGVuZ3RoIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVy
dHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNz
aW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIG9iamVjdCBuYW1lIGFzc2VydF9vd25f
cHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUi
IGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRl
ck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHBy
b3RvdHlwZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93
biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5v
ZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQg
cHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIg
cHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9w
ZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1p
c3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVy
dGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVy
dHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAi
SUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcK
LUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRGcmVxdWVuY3lSZXNw
b25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSBhc3NlcnRfb3du
X3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2Rl
IiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0
ZXJOb2RlIG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBTdHJpbmdpZmljYXRpb24gb2YgbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVy
aXQgcHJvcGVydHkgImdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFy
cmF5LCBGbG9hdDMyQXJyYXkpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogY2FsbGluZyBnZXRGcmVx
dWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSBv
biBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6
IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0
X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBl
Y3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJp
YWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBs
b25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0
X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBl
Y3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJp
YWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBj
b25uZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5zaWdu
ZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVy
cm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBv
YmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0
IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6
IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazog
WzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4
cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0
IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0
ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9Q
YXJhbSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1l
bnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlM
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9y
d2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25u
ZWN0KCkiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhj
ZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVj
dCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1G
QUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNj
b25uZWN0KHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxz
OiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51
bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJ
SVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5l
Y3QodW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhy
b3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZh
bHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJy
b3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBp
bnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvTm9k
ZSkiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlM
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUpIG9uIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1
YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVy
Tm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcpIiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVu
IGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25n
KSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNz
ZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBl
eHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2
YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBt
dXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25n
LCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5l
eHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1
dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmls
dGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1
ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBm
ZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0
ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290
IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5v
ZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1
YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nv
bm5lY3QoQXVkaW9QYXJhbSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhy
b3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZh
bHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJy
b3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBp
bnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvUGFy
YW0sIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3Qo
QXVkaW9QYXJhbSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRz
IG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9u
IHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVm
ZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1
ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb250ZXh0IiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3
aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVy
ZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRp
b05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6
IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZJbnB1
dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlM
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9y
d2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJudW1iZXJP
Zk91dHB1dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQg
ZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9i
amVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUi
Ci1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtm
ZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJj
aGFubmVsQ291bnQiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0
ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290
IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5v
ZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJjaGFubmVsQ291bnRNb2RlIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiY2hhbm5lbEludGVycHJldGF0aW9uIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3Nl
cnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhp
c3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgCitQQVNTIElJUkZpbHRl
ck5vZGUgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJm
YWNlIG9iamVjdCBuYW1lIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNl
IGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IAorUEFTUyBJSVJG
aWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFj
ZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSAKK1BBU1MgSUlSRmls
dGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ug
cHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgCitQQVNTIElJUkZpbHRl
ck5vZGUgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFy
cmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgCitQQVNTIElJUkZpbHRlck5vZGUgbXVz
dCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVl
ZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIAorUEFTUyBTdHJpbmdpZmljYXRpb24gb2Yg
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwg
RmxvYXQzMkFycmF5KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIElJUkZpbHRlck5vZGUg
aW50ZXJmYWNlOiBjYWxsaW5nIGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxv
YXQzMkFycmF5LCBGbG9hdDMyQXJyYXkpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtm
ZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBt
dXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBs
b25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNT
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgY29ubmVjdChBdWRpb05vZGUsIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJO
b2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28g
ZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVy
ZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9QYXJhbSwgb3B0
aW9uYWwgdW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9QYXJhbSwgb3B0aW9uYWwgdW5zaWdu
ZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVy
cm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiZGlzY29ubmVjdCgpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGlu
dGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZl
ZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QodW5zaWduZWQg
bG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBj
YWxsaW5nIGRpc2Nvbm5lY3QodW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJn
dW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUpIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25u
ZWN0KEF1ZGlvTm9kZSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cg
VHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0
KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRz
IG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcs
IHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGlu
dGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5z
aWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBb
MV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlw
ZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250
ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNT
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb1BhcmFtKSBvbiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1
ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0
KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1Mg
QXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2ln
bmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImNvbnRleHQiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZJbnB1dHMiIHdpdGggdGhl
IHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9k
ZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAibnVtYmVyT2ZPdXRwdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1Mg
QXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxD
b3VudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnRNb2RlIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNT
IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJv
cGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IAogUEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJj
ZU5vZGUgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGggCiBQQVNTIE1lZGlhRWxlbWVudEF1ZGlvU291
cmNlTm9kZSBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0
ZWQudHh0CmluZGV4IGU5MDFhMmM0NDMxNjAzMDYyOTZkZDA3MzQxMzExMTc1N2VmNzM5MDIuLjdh
ZTc3YzFjMjI5MWQ4MTA4MjI1NDVmMjQzNzcyYWE5YWQ4ZjYyMDkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJm
aWx0ZXItZXhwZWN0ZWQudHh0CkBAIC0yLDI3ICsyLDU2IEBACiBQQVNTICMgQVVESVQgVEFTSyBS
VU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAiaW5pdGlhbGl6ZSIgCiBQQVNTIEV4ZWN1
dGluZyAiaW52YWxpZCBjb25zdHJ1Y3RvciIgCi1GQUlMIEV4ZWN1dGluZyAiZGVmYXVsdCBjb25z
dHJ1Y3RvciIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9i
amVjdCAiVHlwZUVycm9yOiBSaWdodCBoYW5kIHNpZGUgb2YgaW5zdGFuY2VvZiBpcyBub3QgYW4g
b2JqZWN0IgotRkFJTCBFeGVjdXRpbmcgInRlc3QgQXVkaW9Ob2RlT3B0aW9ucyIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1
bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbm9kZS5jaGFubmVsQ291bnQn
KSIKK1BBU1MgRXhlY3V0aW5nICJkZWZhdWx0IGNvbnN0cnVjdG9yIiAKK1BBU1MgRXhlY3V0aW5n
ICJ0ZXN0IEF1ZGlvTm9kZU9wdGlvbnMiIAogUEFTUyBFeGVjdXRpbmcgImNvbnN0cnVjdG9yIG9w
dGlvbnMiIAotRkFJTCBFeGVjdXRpbmcgImZ1bmN0aW9uYWxpdHkiIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4n
dCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgorUEFTUyBFeGVjdXRpbmcgImZ1bmN0aW9u
YWxpdHkiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW2luaXRpYWxpemVdICAKIFBBU1Mg
ICBjb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoLi4uKSBkaWQgbm90IHRocm93IGFu
IGV4Y2VwdGlvbi4gCiBQQVNTIDwgW2luaXRpYWxpemVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4g
KHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2ludmFsaWQgY29uc3RydWN0b3JdICAKLVBB
U1MgICBuZXcgSUlSRmlsdGVyTm9kZSgpIHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBu
b3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tuYW1lXSgpJykiLiAKLVBB
U1MgICBuZXcgSUlSRmlsdGVyTm9kZSgxKSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMg
bm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oMSknKSIuIAot
UEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIDQyKSB0aHJldyBUeXBlRXJyb3I6ICJ1
bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFt
ZV0oY29udGV4dCwgNDIpJykiLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZSgpIHRocmV3IFR5
cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5v
ZGUoMSkgdGhyZXcgVHlwZUVycm9yOiAiTm90IGVub3VnaCBhcmd1bWVudHMiLiAKK1BBU1MgICBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCA0MikgdGhyZXcgVHlwZUVycm9yOiAiVHlwZSBlcnJv
ciIuIAogUEFTUyA8IFtpbnZhbGlkIGNvbnN0cnVjdG9yXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFtkZWZhdWx0IGNvbnN0cnVjdG9yXSAgCi1G
QUlMIFggbm9kZTAgPSBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ImZlZWRmb3J3YXJkIjpb
MV0sImZlZWRiYWNrIjpbMSwtMC45XX0pIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVu
ZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tuYW1l
XShjb250ZXh0LCBvcHRpb25zLmNvbnN0cnVjdG9yT3B0aW9ucyknKSIuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5vZGUwID0gbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJmZWVkYmFjayI6WzEsLTAuOV19KSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZTAgaW5zdGFuY2VvZiBJSVJGaWx0ZXJO
b2RlIGlzIGVxdWFsIHRvIHRydWUuIAorUEFTUyAgIG5vZGUwLm51bWJlck9mSW5wdXRzIGlzIGVx
dWFsIHRvIDEuIAorUEFTUyAgIG5vZGUwLm51bWJlck9mT3V0cHV0cyBpcyBlcXVhbCB0byAxLiAK
K1BBU1MgICBub2RlMC5jaGFubmVsQ291bnQgaXMgZXF1YWwgdG8gMi4gCitQQVNTICAgbm9kZTAu
Y2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5vZGUwLmNoYW5uZWxJ
bnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNTIDwgW2RlZmF1bHQgY29u
c3RydWN0b3JdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDcgYXNzZXJ0aW9ucykgCiBQ
QVNTID4gW3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10gIAotRkFJTCBYIG5ldyBJSVJGaWx0ZXJOb2Rl
KGMsIHtjaGFubmVsQ291bnQ6IDE3fSkgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAidW5k
ZWZpbmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9yIChldmFsdWF0aW5nICduZXcgd2luZG93W25vZGVO
YW1lXScpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgbmV3
IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudDogMTd9KSBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnQgaXMgZXF1YWwgdG8gMTcuIAorUEFT
UyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnQ6IDB9KSB0aHJldyBJbnZhbGlk
U3RhdGVFcnJvcjogIlRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4iLiAKK1BBU1Mg
ICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50OiA5OX0pIHRocmV3IEludmFsaWRT
dGF0ZUVycm9yOiAiVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiIuIAorUEFTUyAg
IG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAibWF4In0gZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBpcyBlcXVh
bCB0byBtYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2Rl
OiAibWF4In0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5u
ZWxDb3VudE1vZGUgYWZ0ZXIgdmFsaWQgc2V0dGVyIGlzIGVxdWFsIHRvIG1heC4gCitQQVNTICAg
bmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJjbGFtcGVkLW1heCJ9KSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2Rl
IGFmdGVyIHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBjbGFtcGVkLW1heC4gCitQQVNTICAgbmV3
IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJleHBsaWNpdCJ9KSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVy
IHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBleHBsaWNpdC4gCitQQVNTICAgbmV3IElJUkZpbHRl
ck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJmb29iYXIifSB0aHJldyBUeXBlRXJyb3I6ICJU
eXBlIGVycm9yIi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVyIGludmFsaWQg
c2V0dGVyIGlzIGVxdWFsIHRvIGV4cGxpY2l0LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShj
LCB7Y2hhbm5lbEludGVycHJldGF0aW9uOiAic3BlYWtlcnMifSkgZGlkIG5vdCB0aHJvdyBhbiBl
eGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbEludGVycHJldGF0aW9uIGlzIGVxdWFsIHRv
IHNwZWFrZXJzLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJl
dGF0aW9uOiAiZGlzY3JldGUifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAg
IG5vZGUuY2hhbm5lbEludGVycHJldGF0aW9uIGlzIGVxdWFsIHRvIGRpc2NyZXRlLiAKK1BBU1Mg
ICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJldGF0aW9uOiAiZm9vYmFyIn0p
IHRocmV3IFR5cGVFcnJvcjogIlR5cGUgZXJyb3IiLiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRl
cnByZXRhdGlvbiBhZnRlciBpbnZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBkaXNjcmV0ZS4gCitQ
QVNTIDwgW3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgMjAgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2NvbnN0cnVjdG9yIG9wdGlvbnNdICAKLUZBSUwg
WCBub2RlID0gbmV3IElJUkZpbHRlck5vZGUoLCB7ImZlZWRiYWNrIjpbMSwwLjVdfSkgdGhyZXcg
IlJlZmVyZW5jZUVycm9yIiBpbnN0ZWFkIG9mIEVjbWFTY3JpcHQgZXJyb3IgVHlwZUVycm9yLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBub2RlID0gbmV3IElJ
UkZpbHRlck5vZGUoYywgeyJmZWVkZm9yd2FyZCI6WzEsMC41XX0pIHRocmV3ICJSZWZlcmVuY2VF
cnJvciIgaW5zdGVhZCBvZiBFY21hU2NyaXB0IGVycm9yIFR5cGVFcnJvci4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2NvbnN0cnVjdG9yIG9wdGlvbnNdIDIg
b3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitQQVNTICAgbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKCwgeyJmZWVkYmFj
ayI6WzEsMC41XX0pIHRocmV3IFR5cGVFcnJvcjogIk1lbWJlciBJSVJGaWx0ZXJPcHRpb25zLmZl
ZWRmb3J3YXJkIGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIHNlcXVlbmNl
Ii4gCitQQVNTICAgbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHsiZmVlZGZvcndhcmQiOlsx
LDAuNV19KSB0aHJldyBUeXBlRXJyb3I6ICJNZW1iZXIgSUlSRmlsdGVyT3B0aW9ucy5mZWVkYmFj
ayBpcyByZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBzZXF1ZW5jZSIuIAorUEFT
UyA8IFtjb25zdHJ1Y3RvciBvcHRpb25zXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAy
IGFzc2VydGlvbnMpIAogUEFTUyA+IFtmdW5jdGlvbmFsaXR5XSAgCi1GQUlMICMgQVVESVQgVEFT
SyBSVU5ORVIgRklOSVNIRUQ6IDMgb3V0IG9mIDYgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBmaWx0ZXIgdXNp
bmcgbmV3IElJUkZpbHRlciguLi4pIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4wNTc1
NjQwMzUwNTgwMjE1NDUsMC4xNDM3MTkxOTYzMTk1ODAwOCwwLjIxNTAwNjYzNDU5MzAwOTk1LDAu
MjkyNzc2NTg0NjI1MjQ0MTQsMC4zNjU5Nzc3OTM5MzE5NjEwNiwwLjQzOTc2NDIzMTQ0MzQwNTE1
LDAuNTExMTkyNzM5MDA5ODU3MiwwLjU4MTM3NTU5ODkwNzQ3MDcsMC42NDk0MDU4MzcwNTkwMjEs
MC43MTUzOTQ0OTY5MTc3MjQ2LDAuNzc4OTU0NTY1NTI1MDU0OSwwLjgzOTk1OTUwMjIyMDE1Mzgs
MC44OTgxNjQ2ODk1NDA4NjMsMC45NTMzOTg0MDY1MDU1ODQ3LDEuMDA1NDY2Njk5NjAwMjE5Ny4u
Ll0uIAorUEFTUyA8IFtmdW5jdGlvbmFsaXR5XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAxIGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA2IHRh
c2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZp
bHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50
eHQKaW5kZXggNDUzNGM4M2ZkNDVmOGQwY2UyMjY0NjZhZDcxY2YyNjJlOWNmNTQ1Mi4uNWI5Mzc0
Yjk5ZDIwNGQ2NGNmODdhNjE5OTM5Y2MzZTg2YmIxNjMxZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWJh
c2ljLWV4cGVjdGVkLnR4dApAQCAtMiwzMyArMiw0NCBAQAogUEFTUyAjIEFVRElUIFRBU0sgUlVO
TkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgImluaXRpYWxpemUiIAogUEFTUyBFeGVjdXRp
bmcgImV4aXN0ZW5jZSIgCi1GQUlMIEV4ZWN1dGluZyAicGFyYW1ldGVycyIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlcihjb2VmLCBjb2VmKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5k
ZWZpbmVkKSIKK1BBU1MgRXhlY3V0aW5nICJwYXJhbWV0ZXJzIiAKIFBBU1MgRXhlY3V0aW5nICJl
eGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlciIgCi1GQUlMIEV4ZWN1dGluZyAiZXhjZXB0aW9ucy1n
ZXRGcmVxdWVuY3lEYXRhIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGNvZWYsIGNvZWYpJywgJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgorUEFTUyBFeGVjdXRpbmcgImV4
Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YSIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBb
aW5pdGlhbGl6ZV0gIAogUEFTUyAgIEluaXRpYWxpemUgY29udGV4dCBmb3IgdGVzdGluZyBkaWQg
bm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTIDwgW2luaXRpYWxpemVdIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4aXN0ZW5jZV0gIAot
RkFJTCBYIGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGRvZXMgbm90IGV4aXN0LiBHb3QgdW5kZWZp
bmVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbZXhpc3Rl
bmNlXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGRvZXMg
ZXhpc3QuIAorUEFTUyA8IFtleGlzdGVuY2VdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFs
IDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3BhcmFtZXRlcnNdICAKK1BBU1MgICBudW1iZXJPZklu
cHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBudW1iZXJPZk91dHB1dHMgaXMgZXF1YWwgdG8g
MS4gCitQQVNTICAgY2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIGNo
YW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNTIDwgW3BhcmFt
ZXRlcnNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDQgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVyXSAgCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVy
KCkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoKScsICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxv
YXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQz
MkFycmF5KDEpKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAot
UEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihudWxsLCBudWxsKSB0aHJldyBUeXBlRXJyb3I6ICJjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlcihudWxsLCBudWxsKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5k
ZWZpbmVkKSIuIAotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbXSwgW10pIHRocmV3ICJUeXBlRXJy
b3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFtdKSB0aHJldyAiVHlw
ZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoW10sIFsxXSkgdGhyZXcg
IlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMy
QXJyYXkoMjApLCBuZXcgRmxvYXQzMkFycmF5KDIwKSkgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVy
cm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXIoZmIsIGZiKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicg
aXMgdW5kZWZpbmVkKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJ
TCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIxKSwgWzFdKSB0aHJldyAiVHlw
ZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBuZXcgRmxvYXQz
MkFycmF5KDIxKSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJv
ci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlS
RmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyKSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVh
ZCBvZiBJbnZhbGlkU3RhdGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBbMV0pIHRo
cmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgSW52YWxpZFN0YXRlRXJyb3IuIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFsx
LCBOYU4sIEluZmluaXR5XSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzFdLCBb
MSwgSW5maW5pdHksIE5hTl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmlu
ZWQpIi4gCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCBOYU4sIEluZmluaXR5XSwgWzFdKSB0
aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMSwgSW5maW5pdHksIE5hTl0sIFsxXSkn
LCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVh
dGVJSVJGaWx0ZXIoWzEsICdhYmMnLCBbXV0sIFsxXSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXIoWzEsICdhYmMnLCBbXV0sIFsxXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIn
IGlzIHVuZGVmaW5lZCkiLiAKLUZBSUwgPCBbZXhjZXB0aW9ucy1jcmVhdGVJSVJGaWx0ZXJdIDgg
b3V0IG9mIDE0IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcigpIHRocmV3IFR5cGVFcnJvcjog
Ik5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9h
dDMyQXJyYXkoMSkpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQ
QVNTICAgY3JlYXRlSUlSRmlsdGVyKG51bGwsIG51bGwpIHRocmV3IFR5cGVFcnJvcjogIlZhbHVl
IGlzIG5vdCBhIHNlcXVlbmNlIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFtdLCBbXSkgdGhy
ZXcgTm90U3VwcG9ydGVkRXJyb3I6ICJmZWVkZm9yd2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5n
dGggYmV0d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFtdKSB0
aHJldyBOb3RTdXBwb3J0ZWRFcnJvcjogImZlZWRiYWNrIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0
aCBiZXR3ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFtdLCBbMV0pIHRo
cmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVu
Z3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0
MzJBcnJheSgyMCksIG5ldyBGbG9hdDMyQXJyYXkoMjApKSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMjEpLCBbMV0p
IHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEg
bGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBu
ZXcgRmxvYXQzMkFycmF5KDIxKSkgdGhyZXcgTm90U3VwcG9ydGVkRXJyb3I6ICJmZWVkYmFjayBh
cnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0
ZUlJUkZpbHRlcihbMV0sIG5ldyBGbG9hdDMyQXJyYXkoMikpIHRocmV3IEludmFsaWRTdGF0ZUVy
cm9yOiAiZmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iLiAKK1BB
U1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxMCksIFsxXSkgdGhyZXcgSW52
YWxpZFN0YXRlRXJyb3I6ICJmZWVkZm9yd2FyZCBhcnJheSBtdXN0IGNvbnRhaW4gYSBub24temVy
byB2YWx1ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCBOYU4sIEluZmluaXR5
XSkgdGhyZXcgVHlwZUVycm9yOiAiVGhlIHByb3ZpZGVkIHZhbHVlIGlzIG5vbi1maW5pdGUiLiAK
K1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzEsIE5hTiwgSW5maW5pdHldLCBbMV0pIHRocmV3IFR5
cGVFcnJvcjogIlRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNTICAgY3Jl
YXRlSUlSRmlsdGVyKFsxLCAnYWJjJywgW11dLCBbMV0pIHRocmV3IFR5cGVFcnJvcjogIlRoZSBw
cm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNTIDwgW2V4Y2VwdGlvbnMtY3JlYXRl
SUlSRmlsdGVyXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxNCBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbZXhjZXB0aW9ucy1nZXRGcmVxdWVuY3lEYXRhXSAgCi1GQUlMICMgQVVESVQgVEFT
SyBSVU5ORVIgRklOSVNIRUQ6IDIgb3V0IG9mIDUgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNl
KG51bGwsIG5ldyBGbG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXkoMSkpIHRocmV3IFR5
cGVFcnJvcjogIkFyZ3VtZW50IDEgKCdmcmVxdWVuY3lIeicpIHRvIElJUkZpbHRlck5vZGUuZ2V0
RnJlcXVlbmN5UmVzcG9uc2UgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBGbG9hdDMyQXJyYXkiLiAK
K1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShuZXcgRmxvYXQzMkFycmF5KDEpLCBudWxsLCBu
ZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJBcmd1bWVudCAyICgnbWFnUmVz
cG9uc2UnKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4g
aW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2Uo
bmV3IEZsb2F0MzJBcnJheSgxKSwgbmV3IEZsb2F0MzJBcnJheSgxKSwgbnVsbCkgdGhyZXcgVHlw
ZUVycm9yOiAiQXJndW1lbnQgMyAoJ3BoYXNlUmVzcG9uc2UnKSB0byBJSVJGaWx0ZXJOb2RlLmdl
dEZyZXF1ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4g
CitQQVNTICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2UobmV3IEZsb2F0MzJBcnJheSgxMCksIG5ldyBG
bG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXkoMjApKSB0aHJldyBJbnZhbGlkQWNjZXNz
RXJyb3I6ICJBcnJheXMgbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCIuIAorUEFTUyAgIGdldEZy
ZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBuZXcgRmxvYXQzMkFycmF5KDIw
KSwgbmV3IEZsb2F0MzJBcnJheSgxKSkgdGhyZXcgSW52YWxpZEFjY2Vzc0Vycm9yOiAiQXJyYXlz
IG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGgiLiAKK1BBU1MgPCBbZXhjZXB0aW9ucy1nZXRGcmVx
dWVuY3lEYXRhXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA1IGFzc2VydGlvbnMpIAor
UEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA1IHRhc2tzIHJhbiBzdWNjZXNzZnVs
bHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNl
L2lpcmZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50
ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQKaW5kZXggZGViZGI3ZTJlZTQ1OGI5YzIxNTlk
ZTY4N2ZlYTA5YWY3MzJjYzM3Zi4uYmVmYjNiYTVhMWJiMzliMjgxNjU4MzU2OTJjYWEyYjk3NThh
NWMxMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9p
aXJmaWx0ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1p
bnRlcmZhY2UvaWlyZmlsdGVyLWV4cGVjdGVkLnR4dApAQCAtMSw0MSArMSw3MCBAQAogCiBQQVNT
ICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCi1GQUlMIEV4ZWN1dGluZyAiY29lZmZpY2ll
bnQtbm9ybWFsaXphdGlvbiIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBUeXBlIGVycm9yIgotRkFJTCBFeGVjdXRpbmcgIm9u
ZS16ZXJvIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFswLjUsIDAuNV0sIFsxXSknLCAnY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAib25lLXBv
bGUiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgY10pJywgJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjA6IGxvd3Bhc3MiIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBj
b2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
cicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICIxOiBoaWdocGFzcyIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJd
LCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1
bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjI6IGJhbmRwYXNzIiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlS
RmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBj
b2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkiCi1GQUlMIEV4ZWN1dGluZyAiMzogbm90Y2giIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0g
ICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNv
ZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwg
RXhlY3V0aW5nICI0OiBhbGxwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24g
d2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAg
ICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSkn
LCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGlu
ZyAiNTogbG93c2hlbGYiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtj
b2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICI2OiBo
aWdoc2hlbGYiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIw
LCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICI3OiBwZWFraW5n
IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5i
MSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAibXVsdGktY2hhbm5lbCIgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcihmZiwgZmIpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBp
cyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjR0aC1vcmRlci1paXIiIHByb21pc2VfdGVz
dDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXIoY2FzY2FkZS5mZiwgY2FzY2FkZS5mYiknLCAnY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXInIGlzIHVuZGVmaW5lZCkiCitQQVNTIEV4ZWN1dGluZyAiY29lZmZpY2llbnQtbm9ybWFs
aXphdGlvbiIgCitQQVNTIEV4ZWN1dGluZyAib25lLXplcm8iIAorUEFTUyBFeGVjdXRpbmcgIm9u
ZS1wb2xlIiAKK1BBU1MgRXhlY3V0aW5nICIwOiBsb3dwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICIx
OiBoaWdocGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiMjogYmFuZHBhc3MiIAorUEFTUyBFeGVjdXRp
bmcgIjM6IG5vdGNoIiAKK1BBU1MgRXhlY3V0aW5nICI0OiBhbGxwYXNzIiAKK1BBU1MgRXhlY3V0
aW5nICI1OiBsb3dzaGVsZiIgCitQQVNTIEV4ZWN1dGluZyAiNjogaGlnaHNoZWxmIiAKK1BBU1Mg
RXhlY3V0aW5nICI3OiBwZWFraW5nIiAKK1BBU1MgRXhlY3V0aW5nICJtdWx0aS1jaGFubmVsIiAK
K1BBU1MgRXhlY3V0aW5nICI0dGgtb3JkZXItaWlyIiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFT
UyA+IFtjb2VmZmljaWVudC1ub3JtYWxpemF0aW9uXSAgCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVy
IHdpdGggbm9ybWFsaXplZCBjb2VmZmljaWVudHMgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9y
OiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXIoZmYsIGZiMSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwg
WCBjcmVhdGVJSVJGaWx0ZXIgd2l0aCB1bm5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGluY29ycmVj
dGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1
bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGZmLCBmYjIpJywgJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyIHdpdGggbm9ybWFsaXplZCBjb2Vm
ZmljaWVudHMgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGNyZWF0ZUlJUkZp
bHRlciB3aXRoIHVubm9ybWFsaXplZCBjb2VmZmljaWVudHMgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorUEFTUyAgIE91dHB1dCBvZiBJSVIgZmlsdGVyIHdpdGggdW5ub3JtYWxpemVkIGNv
ZWZmaWNpZW50cyBlcXVhbHMgWzEsLTAuODk5OTk5OTc2MTU4MTQyMSwwLjgxMDAwMDAwMjM4NDE4
NTgsLTAuNzI4OTk5OTcyMzQzNDQ0OCwwLjY1NjA5OTk3NTEwOTEwMDMsLTAuNTkwNDg5OTgzNTU4
NjU0OCwwLjUzMTQ0MDk3MzI4MTg2MDQsLTAuNDc4Mjk2OTA1NzU1OTk2NywwLjQzMDQ2NzIxODE2
MDYyOTMsLTAuMzg3NDIwNDc1NDgyOTQwNywwLjM0ODY3ODQzOTg1NTU3NTU2LC0wLjMxMzgxMDU4
NjkyOTMyMTMsMC4yODI0Mjk1NDYxMTc3ODI2LC0wLjI1NDE4NjU3MDY0NDM3ODY2LDAuMjI4NzY3
OTMxNDYxMzM0MjMsLTAuMjA1ODkxMTMyMzU0NzM2MzMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoyLjE5NThlLTM4LCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uIAorUEFTUyA8IFtjb2VmZmljaWVudC1ub3JtYWxpemF0aW9uXSBBbGwgYXNz
ZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFtvbmUtemVyb10g
IAorUEFTUyAgIElJUiAxLXplcm8gb3V0cHV0IGVxdWFscyBbMC41LDAuNSwwLDAsMCwwLDAsMCww
LDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFtvbmUt
emVyb10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKIFBBU1Mg
PiBbb25lLXBvbGVdICAKK1BBU1MgICBJSVIgMS1wb2xlIG91dHB1dCBlcXVhbHMgWzEsLTAuOSww
LjgxLC0wLjcyOTAwMDAwMDAwMDAwMDEsMC42NTYxMDAwMDAwMDAwMDAxLC0wLjU5MDQ5MDAwMDAw
MDAwMDIsMC41MzE0NDEwMDAwMDAwMDAyLC0wLjQ3ODI5NjkwMDAwMDAwMDE0LDAuNDMwNDY3MjEw
MDAwMDAwMTYsLTAuMzg3NDIwNDg5MDAwMDAwMTUsMC4zNDg2Nzg0NDAxMDAwMDAxNSwtMC4zMTM4
MTA1OTYwOTAwMDAxNywwLjI4MjQyOTUzNjQ4MTAwMDE3LC0wLjI1NDE4NjU4MjgzMjkwMDEzLDAu
MjI4NzY3OTI0NTQ5NjEwMTIsLTAuMjA1ODkxMTMyMDk0NjQ5MS4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjIuNzY1N2UtOCwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbb25lLXBvbGVdIEFsbCBhc3NlcnRpb25zIHBhc3Nl
ZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzA6IGxvd3Bhc3NdICAKK1BBU1MgICBJ
SVJGaWx0ZXIgZm9yIEJpcXVhZCBsb3dwYXNzIGVxdWFscyBbMC4wMDIwNjc2MjI0OTU4MTUxNTgs
MC4wMTAyNjIwMzg1NTg3MjE1NDIsMC4wMjY0MDgzNDQ1MDcyMTc0MDcsMC4wNTAxNDYxOTYwMzc1
MzA5LDAuMDgxMDYyNzM0MTI3MDQ0NjgsMC4xMTg2OTc1MTY2MjAxNTkxNSwwLjE2MjU0NzY0Nzk1
MzAzMzQ1LDAuMjEyMDczMjA2OTAxNTUwMywwLjI2NjcwMjY4MTc3OTg2MTQ1LDAuMzI1ODM4NzQ0
NjQwMzUwMzQsMC4zODg4NjM3MTI1NDkyMDk2LDAuNDU1MTQ1NDE4NjQzOTUxNCwwLjUyNDA0Mjg0
NDc3MjMzODksMC41OTQ5MTE0NTYxMDgwOTMzLDAuNjY3MTA5MDcyMjA4NDA0NSwwLjc0MDAwMDU0
NTk3ODU0NjEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwNDk4MzR9LiAKK1BBU1MgICBT
TlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGxvd3Bhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVx
dWFsIHRvIDkxLjIyMS4gCitQQVNTIDwgWzA6IGxvd3Bhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3Nl
ZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzE6IGhpZ2hwYXNzXSAgCitQQVNTICAg
SUlSRmlsdGVyIGZvciBCaXF1YWQgaGlnaHBhc3MgZXF1YWxzIFswLjk4MzY3MTAwOTU0MDU1Nzks
MC45NDc0Nzg2NTIwMDA0MjcyLDAuOTA0NDgyNDI0MjU5MTg1OCwwLjg1NTIzMjExOTU2MDI0MTcs
MC44MDAzMTMyOTM5MzM4Njg0LDAuNzQwMzQxOTYxMzgzODE5NiwwLjY3NTk1ODIxNjE5MDMzODEs
MC42MDc4MjAzMzIwNTAzMjM1LDAuNTM2NTk4OTIwODIyMTQzNiwwLjQ2Mjk3MTAzMTY2NTgwMiww
LjM4NzYxNDIyMDM4MDc4MzEsMC4zMTEyMDEwMDYxNzQwODc1LDAuMjM0MzkzNTM3MDQ0NTI1MTUs
MC4xNTc4MzgyNzAwNjgxNjg2NCwwLjA4MjE2MTE2NTc3Mzg2ODU2LDAuMDA3OTYzMDU2Njc2MDg5
NzY0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MC4wMDAwMDI5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwM30uIAorUEFTUyAgIFNO
UiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgaGlnaHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVx
dWFsIHRvIDEwNS40NTkuIAorUEFTUyA8IFsxOiBoaWdocGFzc10gQWxsIGFzc2VydGlvbnMgcGFz
c2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbMjogYmFuZHBhc3NdICAKK1BBU1Mg
ICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBiYW5kcGFzcyBlcXVhbHMgWzAuMDA0NTU0MjQ0Njg5NjQz
MzgzLDAuMDEzNTgzMjE1ODg0ODY0MzMsMC4wMjI0MTY1MDAzNzQ2NzQ3OTcsMC4wMzA5ODIxMDUw
NjE0MTE4NTgsMC4wMzkyMTA5MzA0NjY2NTE5MTcsMC4wNDcwMzczMTQ2MjM1OTQyODQsMC4wNTQz
OTk1NjExMzY5NjA5OCwwLjA2MTI0MDQwODU2OTU3NDM1NiwwLjA2NzUwNzQ2ODE2Mzk2NzEzLDAu
MDczMTUzNjI5ODk5MDI0OTYsMC4wNzgxMzczODI4NjQ5NTIwOSwwLjA4MjQyMzE1MDUzOTM5ODIs
MC4wODU5ODE0ODA3NzcyNjM2NCwwLjA4ODc4OTI5OTEzMDQzOTc2LDAuMDkwODI5OTY4NDUyNDUz
NjEsMC4wOTIwOTM0NTI4MTEyNDExNS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjJlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDg3
fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBiYW5kcGFzcyBpcyBncmVh
dGVyIHRoYW4gb3IgZXF1YWwgdG8gMTA0LjA2LiAKK1BBU1MgPCBbMjogYmFuZHBhc3NdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzM6IG5vdGNo
XSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbm90Y2ggZXF1YWxzIFswLjk5NTQ0NTcy
ODMwMjAwMiwwLjk4NjQxNjc1NzEwNjc4MSwwLjk3NzU4MzUyNzU2NTAwMjQsMC45NjkwMTc5MjI4
NzgyNjU0LDAuOTYwNzg5MDg0NDM0NTA5MywwLjk1Mjk2MjY5NjU1MjI3NjYsMC45NDU2MDA0NTAw
Mzg5MDk5LDAuOTM4NzU5NTY1MzUzMzkzNiwwLjkzMjQ5MjU1NDE4Nzc3NDcsMC45MjY4NDYzODUw
MDIxMzYyLDAuOTIxODYyNjAyMjMzODg2NywwLjkxNzU3Njg0OTQ2MDYwMTgsMC45MTQwMTg1MTE3
NzIxNTU4LDAuOTExMjEwNzE1NzcwNzIxNCwwLjkwOTE3MDAzMTU0NzU0NjQsMC45MDc5MDY1MzIy
ODc1OTc3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRo
cmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDQyMn0uIAorUEFTUyAgIFNOUiBm
b3IgSUlSRklsdGVyIGZvciBCaXF1YWQgbm90Y2ggaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRv
IDkxLjMxMi4gCitQQVNTIDwgWzM6IG5vdGNoXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFs0OiBhbGxwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVy
IGZvciBCaXF1YWQgYWxscGFzcyBlcXVhbHMgWzAuOTkwODkxNTE2MjA4NjQ4NywwLjk3MjgzMzU3
MzgxODIwNjgsMC45NTUxNjY5OTU1MjUzNjAxLDAuOTM4MDM1Nzg2MTUxODg2LDAuOTIxNTc4MTY4
ODY5MDE4NiwwLjkwNTkyNTM5MzEwNDU1MzIsMC44OTEyMDA5MDAwNzc4MTk4LDAuODc3NTE5MTkw
MzExNDMxOSwwLjg2NDk4NTA0ODc3MDkwNDUsMC44NTM2OTI3NzAwMDQyNzI1LDAuODQzNzI1MjA0
NDY3NzczNCwwLjgzNTE1MzY5ODkyMTIwMzYsMC44MjgwMzcwMjM1NDQzMTE1LDAuODIyNDIxNDMx
NTQxNDQyOSwwLjgxODM0MDA2MzA5NTA5MjgsMC44MTU4MTMxMjQxNzk4NDAxLi4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRp
dmVUaHJlc2hvbGQiOjAuMDAwMDQzMX0uIAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBC
aXF1YWQgYWxscGFzcyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gOTEuMzE5LiAKK1BBU1Mg
PCBbNDogYWxscGFzc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25z
KSAKIFBBU1MgPiBbNTogbG93c2hlbGZdICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBs
b3dzaGVsZiBlcXVhbHMgWzEuMDM4NDgwMjgxODI5ODM0LDEuMTE2NTcyMjYwODU2NjI4NCwxLjE5
NjY0NDA2Nzc2NDI4MjIsMS4yNzgxNTE1MTIxNDU5OTYsMS4zNjA1OTQ2MzAyNDEzOTQsMS40NDM1
MTU0MTk5NjAwMjIsMS41MjY0OTYxNzE5NTEyOTQsMS42MDkxNTc2ODE0NjUxNDksMS42OTExNTcx
MDI1ODQ4Mzg5LDEuNzcyMTg2NjM2OTI0NzQzNywxLjg1MTk3MDkxMTAyNjAwMSwxLjkzMDI2NjI2
MTEwMDc2OSwyLjAwNjg1Nzg3MjAwOTI3NzMsMi4wODE1NTg0NjU5NTc2NDE2LDIuMTU0MjA2OTkx
MTk1Njc4NywyLjIyNDY2NjExODYyMTgyNi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAy
OTh9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGxvd3NoZWxmIGlzIGdy
ZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MC42MDkuIAorUEFTUyA8IFs1OiBsb3dzaGVsZl0gQWxs
IGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNjogaGln
aHNoZWxmXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgaGlnaHNoZWxmIGVxdWFscyBb
My4wNDUxMDE0MDQxOTAwNjM1LDIuODE2MTE0NjY0MDc3NzU5LDIuNTk4NTQyNDUxODU4NTIwNSwy
LjM5MzU1Nzc4Njk0MTUyODMsMi4yMDE5NzUzNDU2MTE1NzIzLDIuMDI0Mjk2OTk4OTc3NjYxLDEu
ODYwNzUzNzc0NjQyOTQ0MywxLjcxMTM0NjYyNjI4MTczODMsMS41NzU4ODIzMTU2MzU2ODEyLDEu
NDU0MDA3MDI5NTMzMzg2MiwxLjM0NTIzNjg5NzQ2ODU2NywxLjI0ODk4NDgxMzY5MDE4NTUsMS4x
NjQ1ODUzNTE5NDM5Njk3LDEuMDkxMzE1NzQ2MzA3MzczLDEuMDI4NDE1Njc5OTMxNjQwNiwwLjk3
NTEwMjk2MTA2MzM4NS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJz
b2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAxMjR9LiAKK1BBU1Mg
ICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGhpZ2hzaGVsZiBpcyBncmVhdGVyIHRoYW4g
b3IgZXF1YWwgdG8gMTAzLjE1OS4gCitQQVNTIDwgWzY6IGhpZ2hzaGVsZl0gQWxsIGFzc2VydGlv
bnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNzogcGVha2luZ10gIAor
UEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIHBlYWtpbmcgZXF1YWxzIFsxLjAwNTU0ODcxNTU5
MTQzMDcsMS4wMTY1NzEyODMzNDA0NTQsMS4wMjczOTg1ODYyNzMxOTM0LDEuMDM3OTQxMDk4MjEz
MTk1OCwxLjA0ODExMTkxNTU4ODM3OSwxLjA1NzgyNzk0OTUyMzkyNTgsMS4wNjcwMTAxNjQyNjA4
NjQzLDEuMDc1NTg0NDExNjIxMDkzOCwxLjA4MzQ4MjE0NjI2MzEyMjYsMS4wOTA2NDA3ODMzMDk5
MzY1LDEuMDk3MDA0MDU1OTc2ODY3NywxLjEwMjUyMjk2OTI0NTkxMDYsMS4xMDcxNTU0NDIyMzc4
NTQsMS4xMTA4Njc1MDAzMDUxNzU4LDEuMTEzNjMyNjc4OTg1NTk1NywxLjExNTQzMjczOTI1Nzgx
MjUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwNTA1fS4gCitQQVNTICAgU05SIGZvciBJ
SVJGSWx0ZXIgZm9yIEJpcXVhZCBwZWFraW5nIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5
MS41MDQuIAorUEFTUyA8IFs3OiBwZWFraW5nXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFttdWx0aS1jaGFubmVsXSAgCitQQVNTICAgTWF4IGRp
ZmZlcmVuY2UgYmV0d2VlbiBJSVIgYW5kIEJpcXVhZCBvbiBjaGFubmVsIDAgaXMgbGVzcyB0aGFu
IG9yIGVxdWFsIHRvIDAuMDAwMDM3NjcxLiAKK1BBU1MgICBNYXggZGlmZmVyZW5jZSBiZXR3ZWVu
IElJUiBhbmQgQmlxdWFkIG9uIGNoYW5uZWwgMSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMC4w
MDAwMzAwNzEuIAorUEFTUyAgIE1heCBkaWZmZXJlbmNlIGJldHdlZW4gSUlSIGFuZCBCaXF1YWQg
b24gY2hhbm5lbCAyIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAwLjAwMDAyNjI0MS4gCitQQVNT
IDwgW211bHRpLWNoYW5uZWxdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDMgYXNzZXJ0
aW9ucykgCiBQQVNTID4gWzR0aC1vcmRlci1paXJdICAKLUZBSUwgIyBBVURJVCBUQVNLIFJVTk5F
UiBGSU5JU0hFRDogMSBvdXQgb2YgMTMgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIDQtdGggb3JkZXIgSUlSRmlsdGVyIChiaXF1
YWQgcmVmKSBlcXVhbHMgWzAuMDAwMDA0MTgxNzE5MzA1MDUxOTU2LDAuMDAwMDMyOTY1Nzk1OTgw
OTk5MjQ2LDAuMDAwMTI5Mzk3NjgyMDMwNjg1MjUsMC4wMDAzNDc3MzY1ODI2MjU2NTczLDAuMDAw
NzM4NzI3Mjc4MDc2MTEyMywwLjAwMTM0NDY4OTc1MDExMjU5MzIsMC4wMDIxOTkzNzYyMzQ3ODQ3
MjIzLDAuMDAzMzI3OTU1OTU3NTAyMTI2NywwLjAwNDc0NzExNjkzODIzMzM3NTUsMC4wMDY0NjUy
ODE4MjU1MTI2NDgsMC4wMDg0ODI5MjI3OTk4ODUyNzMsMC4wMTA3OTI5NzA2NTczNDg2MzMsMC4w
MTMzODEzMDMyODgwNDI1NDUsMC4wMTYyMjczMTIzODYwMzU5MiwwLjAxOTMwNDUxOTUxOTIwOTg2
MiwwLjAyMjU4MTI1MTMzODEyNDI3NS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNTllLTcsInJlbGF0aXZlVGhyZXNob2xkIjowLjAw
MDAyMTF9LiAKK1BBU1MgICBTTlIgb2YgNC10aCBvcmRlciBJSVJGaWx0ZXIgKGJpcXVhZCByZWYp
IGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMDguOTQ3LiAKK1BBU1MgPCBbNHRoLW9yZGVy
LWlpcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKK1BBU1Mg
IyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMTMgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4g
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWly
ZmlsdGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
aWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4
cGVjdGVkLnR4dAppbmRleCBjMWMxNmI0NTZiNzQzZWM2N2RiZDZhZDBkY2IyNDNkNzdlNGFlMmNh
Li44M2M0ZDg0YjU1OTM1ZWEyNmM4MzkxMTRiZWM5Y2YxMGE2M2U2NWUxIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVu
Y3lSZXNwb25zZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2Rl
LWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVzcG9uc2UtZXhwZWN0ZWQudHh0CkBA
IC0xLDEyICsxLDIyIEBACiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKLUZB
SUwgRXhlY3V0aW5nICIxLXBvbGUgSUlSIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVy
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEs
IC0wLjldKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwg
RXhlY3V0aW5nICJjb21wYXJlIElJUiBhbmQgYmlxdWFkIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRl
SUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
KAotICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwg
Y29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJ
TCBFeGVjdXRpbmcgImdldEZyZXF1ZW5jeVJlc3BvbnNlIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKK1BBU1MgRXhlY3V0aW5nICIxLXBvbGUgSUlSIiAK
K1BBU1MgRXhlY3V0aW5nICJjb21wYXJlIElJUiBhbmQgYmlxdWFkIiAKK1BBU1MgRXhlY3V0aW5n
ICJnZXRGcmVxdWVuY3lSZXNwb25zZSIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbMS1w
b2xlIElJUl0gIAorUEFTUyAgIDEtcG9sZSBJSVIgTWFnbml0dWRlIFJlc3BvbnNlIGVxdWFscyBb
MTAsOS45OTU1NjE1OTk3MzE0NDUsOS45ODIyODE2ODQ4NzU0ODgsOS45NjAyNjYxMTMyODEyNSw5
LjkyOTY4ODQ1MzY3NDMxNiw5Ljg5MDc4NTIxNzI4NTE1Niw5Ljg0Mzg1MjA0MzE1MTg1NSw5Ljc4
OTIzODkyOTc0ODUzNSw5LjcyNzM0MTY1MTkxNjUwNCw5LjY1ODU5MjIyNDEyMTA5NCw5LjU4MzQ1
NTA4NTc1NDM5NSw5LjUwMjQxODUxODA2NjQwNiw5LjQxNTk4MzIwMDA3MzI0Miw5LjMyNDY1OTM0
NzUzNDE4LDkuMjI4OTU4MTI5ODgyODEyLDkuMTI5Mzg0MDQwODMyNTIuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMjg2MTEs
InJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgMS1wb2xlIElJUiBQaGFzZSBSZXNwb25z
ZSBlcXVhbHMgWzAsLTAuMDI4MjY1NTAyMzAzODM4NzMsLTAuMDU2NDc4MTI0MTExODkwNzksLTAu
MDg0NTg1NTQ3NDQ3MjA0NTksLTAuMTEyNTM2NTU3MDE4NzU2ODcsLTAuMTQwMjgxNTcyOTM3OTY1
NCwtMC4xNjc3NzMwOTc3NTM1MjQ3OCwtMC4xOTQ5NjYxNjcyMTE1MzI2LC0wLjIyMTgxODY4NTUz
MTYxNjIsLTAuMjQ4MjkxNzc1NTg0MjIwOSwtMC4yNzQzNDk5NTc3MDQ1NDQwNywtMC4yOTk5NjEy
MzkwOTk1MDI1NiwtMC4zMjUwOTc0NDE2NzMyNzg4LC0wLjM0OTczMzg4OTEwMjkzNTgsLTAuMzcz
ODQ5NzE5NzYyODAyMSwtMC4zOTc0Mjc0Njk0OTE5NTg2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MS43ODgyZS03LCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uIAorUEFTUyA8IFsxLXBvbGUgSUlSXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFtjb21wYXJlIElJUiBhbmQgYmlxdWFkXSAg
CitQQVNTICAgSUlSIE1hZ25pdHVkZSBSZXNwb25zZSBlcXVhbHMgWzEsMS4wMDI4MzQ1NTg0ODY5
Mzg1LDEuMDExMzQ3ODg5OTAwMjA3NSwxLjAyNTU1NDg5NTQwMTAwMSwxLjA0NTQyODI3NjA2MjAx
MTcsMS4wNzA4MDUzMTEyMDMwMDMsMS4xMDEyMjU0OTUzMzg0NCwxLjEzNTY3MTk3MzIyODQ1NDYs
MS4xNzIxOTUwNzY5NDI0NDM4LDEuMjA3NDU0MzIzNzY4NjE1NywxLjIzNjM1NjM3NzYwMTYyMzUs
MS4yNTIyMDk3ODI2MDA0MDI4LDEuMjQ3OTYyMjM2NDA0NDE5LDEuMjE4NjQ0NjE4OTg4MDM3LDEu
MTYzOTA1ODU4OTkzNTMwMywxLjA4ODY2NDg4OTMzNTYzMjMuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzQxOSwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBJSVIgUGhhc2UgUmVzcG9uc2UgZXF1YWxzIFswLC0w
LjA2MTMxNTMyNDE1NzQ3NjQyNSwtMC4xMjM5MTEzNzMzMTcyNDE2NywtMC4xODkxMjIyNDQ3MTU2
OTA2LC0wLjI1ODM4NjkzOTc2NDAyMjgsLTAuMzMzMjkzNzk1NTg1NjMyMywtMC40MTU2MDcwNjQ5
NjIzODcxLC0wLjUwNzI1MDI0OTM4NTgzMzcsLTAuNjEwMjAyNTUwODg4MDYxNSwtMC43MjYyNDAw
Mzg4NzE3NjUxLC0wLjg1NjQ0OTE4NjgwMTkxMDQsLTEuMDAwNTA2MTYyNjQzNDMyNiwtMS4xNTU5
MjczMDA0NTMxODYsLTEuMzE3NzgwOTcxNTI3MDk5NiwtMS40NzkzODk1NDgzMDE2OTY4LC0xLjYz
Mzk1OTc3MDIwMjYzNjcuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzY1NywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BB
U1MgPCBbY29tcGFyZSBJSVIgYW5kIGJpcXVhZF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbZ2V0RnJlcXVlbmN5UmVzcG9uc2VdIFRlc3Qgb3V0
LW9mLWJvdW5kcyBmcmVxdWVuY3kgdmFsdWVzIAorUEFTUyAgIE1hZ25pdHVkZSByZXNwb25zZSBh
dCBmcmVxdWVuY3kgLTEgaXMgTmFOLiAKK1BBU1MgICBNYWduaXR1ZGUgcmVzcG9uc2UgYXQgZnJl
cXVlbmN5IDI0MDAxIGlzIE5hTi4gCitQQVNTICAgUGhhc2UgcmVzcG9uc2UgYXQgZnJlcXVlbmN5
IC0xIGlzIE5hTi4gCitQQVNTICAgUGhhc2UgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IDI0MDAxIGlz
IE5hTi4gCitQQVNTIDwgW2dldEZyZXF1ZW5jeVJlc3BvbnNlXSBBbGwgYXNzZXJ0aW9ucyBwYXNz
ZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklT
SEVEOiAzIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVy
bm9kZS1leHBlY3RlZC50eHQKaW5kZXggYmY2ZGZjZjg2YWZjZmE1MWZlYWFiMDVhZjBiZjAwZTE2
OWExODgwMi4uMTJlNzE3MDIxMDJkN2NjNTNhMWQ2MjRkMjFjZjVkYTY2YTg0MTZkYSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRl
cm5vZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRl
cmZhY2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dApAQCAtMSwyMiArMSwxMCBAQAog
CiBQQVNTIElJUkZpbHRlck5vZGUgY29lZmZpY2llbnRzIGFyZSBjaGVja2VkIHByb3Blcmx5IAot
RkFJTCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0eSBhc3NlcnRfdGhy
b3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmls
dGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3Jl
YXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihh
cmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMg
bm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMg
ZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIGZlZWRiYWNrIGNvZWZmaWNpZW50
cyBjYW4gbm90IGJlIGVtcHR5IGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24g
KCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRo
cmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gTm90U3VwcG9y
dGVkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVk
IDkKLUZBSUwgbW9yZSB0aGFuIDIwIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBjYW4gbm90IGJl
IHVzZWQgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7Ci0gICAgICAg
IGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQotICAgICAgfSIgdGhyZXcgb2JqZWN0ICJU
eXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdhYy5j
cmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRl
ZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb3RTdXBwb3J0ZWRFcnJvcjogcHJv
cGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgOQotRkFJTCBtb3Jl
IHRoYW4gMjAgZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgdXNlZCBhc3NlcnRfdGhy
b3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmls
dGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3Jl
YXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihh
cmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMg
bm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMg
ZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIGF0IGxlYXN0IG9uZSBmZWVkZm9y
d2FyZCBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIGFzc2VydF90aHJvd3NfZG9tOiBmdW5j
dGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJn
MikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywg
J2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNl
cHRpb24gSW52YWxpZFN0YXRlRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRl
ZmluZWQsIGV4cGVjdGVkIDExCi1GQUlMIHRoZSBmaXJzdCBmZWVkYmFjayBjb2VmZmljaWVudCBt
dXN0IGJlIG5vbi16ZXJvIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkg
ewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3
IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRl
cicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gSW52YWxpZFN0YXRl
RXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDEx
Ci1GQUlMIElJUkZpbHRlck5vZGUgZ2V0RnJlcXVlbmN5UmVzcG9uc2UgaGFuZGxlcyBpbnZhbGlk
IGZyZXF1ZW5jaWVzIHByb3Blcmx5IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoWzAuNSwgMC41XSwgWzEuMF0pJywgJ2FjLmNyZWF0
ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKQorUEFTUyBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMg
Y2FuIG5vdCBiZSBlbXB0eSAKK1BBU1MgZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUg
ZW1wdHkgCitQQVNTIG1vcmUgdGhhbiAyMCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5v
dCBiZSB1c2VkIAorUEFTUyBtb3JlIHRoYW4gMjAgZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBu
b3QgYmUgdXNlZCAKK1BBU1MgYXQgbGVhc3Qgb25lIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50IG11
c3QgYmUgbm9uLXplcm8gCitQQVNTIHRoZSBmaXJzdCBmZWVkYmFjayBjb2VmZmljaWVudCBtdXN0
IGJlIG5vbi16ZXJvIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGdldEZyZXF1ZW5jeVJlc3BvbnNlIGhh
bmRsZXMgaW52YWxpZCBmcmVxdWVuY2llcyBwcm9wZXJseSAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407307</attachid>
            <date>2020-08-26 09:52:43 -0700</date>
            <delta_ts>2020-08-26 10:52:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200826095243.patch</filename>
            <type>text/plain</type>
            <size>126377</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uYjk4MzkyNzc4YzZjMWZiZjJjY2MxZGRjNzVmZjYw
MjIzM2Q5MTg5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTA4LTI1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgorICAg
ICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQorCisg
ICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJpbmcp
OgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNzYXJ5
KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpC
YXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BLZXJu
ZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQS2Vy
bmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9u
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFibGUp
OgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlByb2Nl
c3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9h
dWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRlUG9s
eW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZp
bHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1ZW5j
eVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgorICAg
ICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5pdGlh
bGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRpYWxp
emF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJkNGY4YmU3NmQ1MzFkMDMyNjNjMTYwMjY0
MjYzOGU4YWYxMzNhNTkuLjI5ZjExN2ZjOWVjOWU5YWUwOTk2Y2JlMmMyNzA2YzQ4M2NjZWRkMzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00ODgsNiArNDg4LDggQEAgc2V0KFdlYkNvcmVfTk9O
X1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck9w
dGlvbnMuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICAgICBNb2R1bGVz
L3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbAorICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVy
Tm9kZS5pZGwKKyAgICBNb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMjU0MmVm
MWM1Y2FhOGQ3MGY4MTAzNzRiMmIwYzJhOWI3YTAwOTU4Mi4uMjVkYzcwYzEwMGZmZmFjNGQyZjgy
NjI5NWQyNWM1NjhiNTA4YzU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0zMzksNiArMzM5LDggQEAgJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbAogJChQUk9KRUNU
X0RJUikvTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVs
ZXMvd2ViYXVkaW8vR2Fpbk9wdGlvbnMuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVk
aW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAyNzkx
ZTRkMTk5YzM1MmMxOGY0NTI0NzEwMDAxOWE4MGFjNTE3MmE4Li5hNTYwMDM0MzNkOTU1NjE2MTMw
ODJhNDliMjMxYmYwY2YzZTkyNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtOTgyLDYgKzk4MiwxMCBAQCAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lEQlRyYW5zYWN0aW9uTW9kZS5jcHAK
ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJhbnNh
Y3Rpb25Nb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaAorJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2RlLmNwcAorJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2Rl
LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSUlSRmls
dGVyT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSUlSRmlsdGVyT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0lkbGVEZWFkbGluZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZURlYWRsaW5lLmgKICQoQlVJTFRfUFJPRFVDVFNf
RElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJhMTA3OTI1MzRiYjNmMmQ1N2U2MjIxMWQ2
MDMxNjYzN2Y2ZTY5MmQuLmUyZmI4YTkyNTU4NGYzMTAyZmRhY2I0NDdkMmU3NDNmM2ZkNTQzOWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDIwLDYgKzQyMCw4IEBAIEpTX0JJ
TkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3ND
b21wcmVzc29yT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9H
YWluTm9kZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9HYWluT3B0aW9u
cy5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmlk
bCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRs
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3Vy
Y2VOb2RlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVu
dEF1ZGlvU291cmNlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRp
by9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKaW5kZXggNDFkZDEzZGVhN2U3Y2E3NDc0
NmI2NjQ1OThkMDNkMDBkYjQxZjVhOS4uYmIyYWU5MGU0ZGIyYTcwYzU1ZDc0MDM0N2I5MGY0MGQ3
NjFhZjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Ob2Rl
LmNwcApAQCAtOTQsNyArOTQsOCBAQCBTdHJpbmcgY29udmVydEVudW1lcmF0aW9uVG9TdHJpbmco
QXVkaW9Ob2RlOjpOb2RlVHlwZSBlbnVtZXJhdGlvblZhbHVlKQogICAgIHN0YXRpY19hc3NlcnQo
c3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlQmFzaWNJbnNwZWN0b3IpID09
IDE4LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUJhc2ljSW5zcGVjdG9yIGlzIG5vdCAxOCBhcyBleHBl
Y3RlZCIpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6
Ok5vZGVUeXBlQ29uc3RhbnQpID09IDE5LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCBpcyBub3Qg
MTkgYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4o
QXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbykgPT0gMjAsICJBdWRpb05vZGU6Ok5vZGVUeXBlU3Rl
cmVvIGlzIG5vdCAyMCBhcyBleHBlY3RlZCIpOwotICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nh
c3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlRW5kKSA9PSAyMSwgIkF1ZGlvTm9kZTo6Tm9k
ZVR5cGVDb25zdGFudCBpcyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNzZXJ0
KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlcikgPT0gMjEs
ICJBdWRpb05vZGU6Ok5vZGVUeXBlSUlSRmlsdGVyIGlzIG5vdCAyMSBhcyBleHBlY3RlZCIpOwor
ICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBl
RW5kKSA9PSAyMiwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjIgYXMgZXhw
ZWN0ZWQiKTsKIAogICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9uVmFs
dWUpIDwgV1RGX0FSUkFZX0xFTkdUSCh2YWx1ZXMpKTsKICAgICAKQEAgLTU1Myw3ICs1NTQsNyBA
QCB2b2lkIEF1ZGlvTm9kZTo6ZGlzYWJsZU91dHB1dHNJZk5lY2Vzc2FyeSgpCiAgICAgICAgIC8v
IGxvbmdlciBhbnkgYWN0aXZlIGNvbm5lY3Rpb25zLgogICAgICAgICAvLyBBbHNvLCBXYXZlU2hh
cGVyTm9kZSBtYXkgcHJvZHVjZSBub24tc2lsZW5jZSBldmVuIHdoZW4gaXQgbm8gbG9uZ2VyIGhh
cyBhbnkgb3V0cHV0LiBGb3IgdGhpcyByZWFzb24sIHdlIGNhbm5vdAogICAgICAgICAvLyBkaXNh
YmxlIGl0IGVpdGhlci4KLSAgICAgICAgaWYgKG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVDb252b2x2
ZXIgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZURlbGF5ICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5
cGVXYXZlU2hhcGVyKSB7CisgICAgICAgIGlmIChub2RlVHlwZSgpICE9IE5vZGVUeXBlQ29udm9s
dmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxheSAmJiBub2RlVHlwZSgpICE9IE5vZGVU
eXBlV2F2ZVNoYXBlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlSUlSRmlsdGVyKSB7CiAgICAg
ICAgICAgICBtX2lzRGlzYWJsZWQgPSB0cnVlOwogICAgICAgICAgICAgZm9yIChhdXRvJiBvdXRw
dXQgOiBtX291dHB1dHMpCiAgICAgICAgICAgICAgICAgb3V0cHV0LT5kaXNhYmxlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAppbmRleCA3MWJjYmRjNWM2
NGNiYTE1MWE4YzdlYzU1YWFjM2Q4ZDExYWVjN2M3Li5mOTY1ZWEwNTJkZDk5OTYxN2EwMzYwYjM3
ZGI5ZmE0OWZjYjBmYzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0F1ZGlvTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVk
aW9Ob2RlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBOb2RlVHlwZUJhc2lj
SW5zcGVjdG9yLAogICAgICAgICBOb2RlVHlwZUNvbnN0YW50LAogICAgICAgICBOb2RlVHlwZVN0
ZXJlbywKKyAgICAgICAgTm9kZVR5cGVJSVJGaWx0ZXIsCiAgICAgICAgIE5vZGVUeXBlRW5kCiAg
ICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNl
QXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1
ZGlvQ29udGV4dC5jcHAKaW5kZXggODI1NDRjNmE2NGMyOWUzZDk0NTE2YTMzZjdmNzQzMWI4MWRl
ZWVlYi4uMjNlNzZkOGYxNTE0YWJlMDg1M2Y3Y2Y1MzE4N2JhY2I0ZTcxMzg2MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3Bw
CkBAIC02MCw2ICs2MCw4IEBACiAjaW5jbHVkZSAiR2VuZXJpY0V2ZW50UXVldWUuaCIKICNpbmNs
dWRlICJIUlRGRGF0YWJhc2VMb2FkZXIuaCIKICNpbmNsdWRlICJIUlRGUGFubmVyLmgiCisjaW5j
bHVkZSAiSUlSRmlsdGVyTm9kZS5oIgorI2luY2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIKICNp
bmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQu
aCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC02MzAsNiArNjMyLDE3IEBAIEV4Y2VwdGlvbk9y
PFJlZjxTdGVyZW9QYW5uZXJOb2RlPj4gQmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlU3RlcmVvUGFu
bmVyKCkKICAgICByZXR1cm4gU3RlcmVvUGFubmVyTm9kZTo6Y3JlYXRlKCp0aGlzKTsKIH0KIAor
RXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5vZGU+PiBCYXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJ
SVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
VmVjdG9yPGRvdWJsZT4mJiBmZWVkZm9yd2FyZCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkYmFjaykK
K3sKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOworCisgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKKyAgICBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnM7CisgICAgb3B0aW9ucy5mZWVk
Zm9yd2FyZCA9IFdURk1vdmUoZmVlZGZvcndhcmQpOworICAgIG9wdGlvbnMuZmVlZGJhY2sgPSBX
VEZNb3ZlKGZlZWRiYWNrKTsKKyAgICByZXR1cm4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsICp0aGlzLCBXVEZNb3ZlKG9wdGlvbnMpKTsKK30KKwogdm9pZCBC
YXNlQXVkaW9Db250ZXh0Ojpub3RpZnlOb2RlRmluaXNoZWRQcm9jZXNzaW5nKEF1ZGlvTm9kZSog
bm9kZSkKIHsKICAgICBBU1NFUlQoaXNBdWRpb1RocmVhZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggNDRjMmNlNzZl
MGRjNjU3MGI1ZmYxYTU5NDhiOTBlYmIxZGFiYjkzZi4uNjdmMzQ5MjQ5NzAxZWMwM2I2ODgwOTQx
ZjgxZjliODc1YmZjODllMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTcwLDYgKzcwLDcgQEAgY2xhc3MgRG9jdW1lbnQ7
CiBjbGFzcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlOwogY2xhc3MgR2Fpbk5vZGU7CiBjbGFzcyBI
VE1MTWVkaWFFbGVtZW50OworY2xhc3MgSUlSRmlsdGVyTm9kZTsKIGNsYXNzIE1haW5UaHJlYWRH
ZW5lcmljRXZlbnRRdWV1ZTsKIGNsYXNzIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZTsKIGNs
YXNzIE1lZGlhU3RyZWFtOwpAQCAtNzgsNiArNzksNyBAQCBjbGFzcyBNZWRpYVN0cmVhbUF1ZGlv
U291cmNlTm9kZTsKIGNsYXNzIE9zY2lsbGF0b3JOb2RlOwogY2xhc3MgUGFubmVyTm9kZTsKIGNs
YXNzIFBlcmlvZGljV2F2ZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFzcyBT
Y3JpcHRQcm9jZXNzb3JOb2RlOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTdGVyZW9Q
YW5uZXJOb2RlOwpAQCAtMTY0LDYgKzE2Niw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25PcjxS
ZWY8UGVyaW9kaWNXYXZlPj4gY3JlYXRlUGVyaW9kaWNXYXZlKFZlY3RvcjxmbG9hdD4mJiByZWFs
LCBWZWN0b3I8ZmxvYXQ+JiYgaW1hZ2luYXJ5LCBjb25zdCBQZXJpb2RpY1dhdmVDb25zdHJhaW50
cyYgPSB7IH0pOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxDb25zdGFudFNvdXJjZU5vZGU+PiBjcmVh
dGVDb25zdGFudFNvdXJjZSgpOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxTdGVyZW9QYW5uZXJOb2Rl
Pj4gY3JlYXRlU3RlcmVvUGFubmVyKCk7CisgICAgRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5v
ZGU+PiBjcmVhdGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFZlY3Rvcjxkb3Vi
bGU+JiYgZmVlZGZvcndhcmQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spOwogCiAgICAgLy8g
V2hlbiBhIHNvdXJjZSBub2RlIGhhcyBubyBtb3JlIHByb2Nlc3NpbmcgdG8gZG8gKGhhcyBmaW5p
c2hlZCBwbGF5aW5nKSwgdGhlbiBpdCB0ZWxscyB0aGUgY29udGV4dCB0byBkZXJlZmVyZW5jZSBp
dC4KICAgICB2b2lkIG5vdGlmeU5vZGVGaW5pc2hlZFByb2Nlc3NpbmcoQXVkaW9Ob2RlKik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRl
eHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmlkbAppbmRleCBjNjVjYjE5NmI3MzYxZjk3ZjBmOTljMDVmN2E5ZTEwNmIwYjQxY2FhLi4zMWYw
MWJiZWU0NzFmZDQ2ZWQwYWM1ODQ1ODU2NGVjMzVlMDI2YTljIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTY2LDYg
KzY2LDcgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIFBlcmlvZGljV2F2ZSBjcmVhdGVQZXJp
b2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+IHJlYWwsIHNlcXVlbmNlPGZsb2F0PiBpbWFnLCBvcHRp
b25hbCBQZXJpb2RpY1dhdmVPcHRpb25zIG9wdGlvbnMpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlv
bl0gQ29uc3RhbnRTb3VyY2VOb2RlIGNyZWF0ZUNvbnN0YW50U291cmNlKCk7CiAgICAgW01heVRo
cm93RXhjZXB0aW9uXSBTdGVyZW9QYW5uZXJOb2RlIGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOworICAg
IFtNYXlUaHJvd0V4Y2VwdGlvbiwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSUlS
RmlsdGVyTm9kZSBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiBmZWVkZm9yd2FyZCwg
c2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFjayk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGluZyBh
bmQgbWVyZ2luZwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gQ2hhbm5lbFNwbGl0dGVyTm9kZSBj
cmVhdGVDaGFubmVsU3BsaXR0ZXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBudW1iZXJPZk91dHB1
dHMgPSA2KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
RFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2Vy
bmVsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42MmVlZTJjYTk4NTIwMGZhOWIzNDliNTQ1MThjYjRhNjBmNjU2
NThhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9J
SVJEU1BLZXJuZWwuY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBU
aGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJEU1BL
ZXJuZWwuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitJSVJEU1BLZXJuZWw6OklJUkRTUEtl
cm5lbChJSVJQcm9jZXNzb3ImIHByb2Nlc3NvcikKKyAgICA6IEF1ZGlvRFNQS2VybmVsKCZwcm9j
ZXNzb3IpCisgICAgLCBtX2lpckZpbHRlcihwcm9jZXNzb3IuZmVlZGZvcndhcmQoKSwgcHJvY2Vz
c29yLmZlZWRiYWNrKCkpCisgICAgLCBtX3RhaWxUaW1lKG1faWlyRmlsdGVyLnRhaWxUaW1lKHBy
b2Nlc3Nvci5zYW1wbGVSYXRlKCksIHByb2Nlc3Nvci5pc0ZpbHRlclN0YWJsZSgpKSkKK3sKK30K
Kwordm9pZCBJSVJEU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxlbmd0
aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0KiBw
aGFzZVJlc3BvbnNlKQoreworICAgIEFTU0VSVChmcmVxdWVuY3lIeik7CisgICAgQVNTRVJUKG1h
Z1Jlc3BvbnNlKTsKKyAgICBBU1NFUlQocGhhc2VSZXNwb25zZSk7CisKKyAgICBWZWN0b3I8Zmxv
YXQ+IGZyZXF1ZW5jeShsZW5ndGgpOworICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlxdWlz
dCgpOworCisgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBub3JtYWxpemVk
IGZyZXF1ZW5jeSAoMCAtPiAxKSwgd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1aXN0IGZyZXF1ZW5j
eS4KKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spCisgICAgICAgIGZy
ZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKKworICAgIG1faWlyRmlsdGVy
LmdldEZyZXF1ZW5jeVJlc3BvbnNlKGxlbmd0aCwgZnJlcXVlbmN5LmRhdGEoKSwgbWFnUmVzcG9u
c2UsIHBoYXNlUmVzcG9uc2UpOworfQorCit2b2lkIElJUkRTUEtlcm5lbDo6cHJvY2Vzcyhjb25z
dCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nl
c3MpCit7CisgICAgQVNTRVJUKHNvdXJjZSk7CisgICAgQVNTRVJUKGRlc3RpbmF0aW9uKTsKKwor
ICAgIG1faWlyRmlsdGVyLnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Qcm9j
ZXNzKTsKK30KKwordm9pZCBJSVJEU1BLZXJuZWw6OnJlc2V0KCkKK3sKKyAgICBtX2lpckZpbHRl
ci5yZXNldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJEU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQ
S2VybmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY4YTQ0MmE2NzdkMDQwMzRjMDEyM2MzZjMyNjBkNWMzYzY1
OTM0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSRFNQS2VybmVsLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
LmgiCisjaW5jbHVkZSAiSUlSUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgSUlSRFNQS2VybmVsIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsIHsKK3B1Ymxp
YzoKKyAgICBleHBsaWNpdCBJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJik7CisKKyAgICAvLyBH
ZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUg
Z2l2ZW4gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBp
biByYWRpYW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3Ro
LCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBo
YXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29y
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9CisK
KyAgICAvLyBBdWRpb0RTUEtlcm5lbAorICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291
cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOwor
ICAgIGRvdWJsZSB0YWlsVGltZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdGFpbFRpbWU7IH0K
KyAgICBkb3VibGUgbGF0ZW5jeVRpbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAwOyB9CisgICAg
dm9pZCByZXNldCgpIGZpbmFsOworCisgICAgSUlSRmlsdGVyIG1faWlyRmlsdGVyOworICAgIGRv
dWJsZSBtX3RhaWxUaW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uY2JiNjk5MTVjMDYwYWQ0Mjg0Mjk4NTkyNTdjOGE3MTNjOGI5MmU4ZAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAK
QEAgLTAsMCArMSwxNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJGaWx0ZXJOb2RlLmgiCisKKyNp
bmNsdWRlICJCYXNlQXVkaW9Db250ZXh0LmgiCisjaW5jbHVkZSAiSUlSRmlsdGVyLmgiCisjaW5j
bHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJ
bmxpbmVzLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV1RGX01BS0VfSVNPX0FMTE9DQVRF
RF9JTVBMKElJUkZpbHRlck5vZGUpOworCisvLyBEZXRlcm1pbmUgaWYgZmlsdGVyIGlzIHN0YWJs
ZSBiYXNlZCBvbiB0aGUgZmVlZGJhY2sgY29lZmZpY2llbnRzLgorLy8gV2UgY29tcHV0ZSB0aGUg
cmVmbGVjdGlvbiBjb2VmZmljaWVudHMgZm9yIHRoZSBmaWx0ZXIuIElmLCBhdCBhbnkKKy8vIHBv
aW50LCB0aGUgbWFnbml0dWRlIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50IGlzIGdyZWF0
ZXIgdGhhbgorLy8gb3IgZXF1YWwgdG8gMSwgdGhlIGZpbHRlciBpcyBkZWNsYXJlZCB1bnN0YWJs
ZS4KKy8vCisvLyBMZXQgQSh6KSBiZSB0aGUgZmVlZGJhY2sgcG9seW5vbWlhbCBnaXZlbiBieQor
Ly8gICBBW25dKHopID0gMSArIGFbMV0veiArIGFbMl0vel4yICsgLi4uICsgYVtuXS96Xm4KKy8v
CisvLyBUaGUgZmlyc3QgcmVmbGVjdGlvbiBjb2VmZmljaWVudCBrW25dID0gYVtuXS4gVGhlbiwg
cmVjdXJzaXZlbHkgY29tcHV0ZQorLy8KKy8vICAgQVtuLTFdKHopID0gKEFbbl0oeikgLSBrW25d
KkFbbl0oMS96KS96Xm4pLygxLWtbbl1eMik7CisvLworLy8gc3RvcHBpbmcgYXQgQVsxXSh6KS4g
SWYgYXQgYW55IHBvaW50IHxrW25dfCA+PSAxLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlLgorc3Rh
dGljIGJvb2wgaXNGaWx0ZXJTdGFibGUoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKQor
eworICAgIC8vIE1ha2UgYSBjb3B5IG9mIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMKKyAgICBW
ZWN0b3I8ZG91YmxlPiBjb2VmZmljaWVudHMoZmVlZGJhY2spOworICAgIGludCBvcmRlciA9IGNv
ZWZmaWNpZW50cy5zaXplKCkgLSAxOworCisgICAgLy8gSWYgbmVjZXNzYXJ5LCBub3JtYWxpemUg
ZmlsdGVyIGNvZWZmaWNpZW50cyBzbyB0aGF0IGNvbnN0YW50IHRlcm0gaXMgMS4KKyAgICBpZiAo
Y29lZmZpY2llbnRzWzBdICE9IDEpIHsKKyAgICAgICAgZm9yIChpbnQgbSA9IDE7IG0gPD0gb3Jk
ZXI7ICsrbSkKKyAgICAgICAgICAgIGNvZWZmaWNpZW50c1ttXSAvPSBjb2VmZmljaWVudHNbMF07
CisgICAgICAgIGNvZWZmaWNpZW50c1swXSA9IDE7CisgICAgfQorCisgICAgLy8gQmVnaW4gcmVj
dXJzaW9uLCB1c2luZyBhIHdvcmsgYXJyYXkgdG8gaG9sZCBpbnRlcm1lZGlhdGUgcmVzdWx0cy4K
KyAgICBWZWN0b3I8ZG91YmxlPiB3b3JrKG9yZGVyICsgMSk7CisgICAgZm9yIChpbnQgbiA9IG9y
ZGVyOyBuID49IDE7IC0tbikgeworICAgICAgICBkb3VibGUgayA9IGNvZWZmaWNpZW50c1tuXTsK
KworICAgICAgICBpZiAoc3RkOjpmYWJzKGspID49IDEpCisgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICAgICAgLy8gTm90ZSB0aGF0IEFbbl0oMS96KS96Xm4gaXMgYmFzaWNhbGx5IHRo
ZSBjb2VmZmljaWVudHMgb2YgQVtuXQorICAgICAgICAvLyBpbiByZXZlcnNlIG9yZGVyLgorICAg
ICAgICBkb3VibGUgZmFjdG9yID0gMSAtIGsgKiBrOworICAgICAgICBmb3IgKGludCBtID0gMDsg
bSA8PSBuOyArK20pCisgICAgICAgICAgICB3b3JrW21dID0gKGNvZWZmaWNpZW50c1ttXSAtIGsg
KiBjb2VmZmljaWVudHNbbiAtIG1dKSAvIGZhY3RvcjsKKyAgICAgICAgY29lZmZpY2llbnRzLnN3
YXAod29yayk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK0V4Y2VwdGlvbk9yPFJl
ZjxJSVJGaWx0ZXJOb2RlPj4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQs
IElJUkZpbHRlck9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIGlmIChjb250ZXh0LmlzU3RvcHBl
ZCgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKKwor
ICAgIGNvbnRleHQubGF6eUluaXRpYWxpemUoKTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkZm9y
d2FyZC5zaXplKCkgfHwgb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXplKCkgPiBJSVJGaWx0ZXI6Om1h
eE9yZGVyKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJm
ZWVkZm9yd2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCJfcyB9
OworCisgICAgYXV0byBub25aZXJvVmFsdWVJbmRleCA9IG9wdGlvbnMuZmVlZGZvcndhcmQuZmlu
ZE1hdGNoaW5nKFtdKGF1dG8mIHZhbHVlKSB7IHJldHVybiAhIXZhbHVlOyB9KTsKKyAgICBpZiAo
bm9uWmVyb1ZhbHVlSW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgImZlZWRmb3J3YXJkIGFycmF5IG11c3QgY29udGFpbiBhIG5v
bi16ZXJvIHZhbHVlIl9zIH07CisKKyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpIHx8
IG9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAg
cmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiZmVlZGJhY2sgYXJyYXkgbXVz
dCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGlmICghb3B0aW9u
cy5mZWVkYmFja1swXSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiZmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iX3MgfTsK
KworICAgIGJvb2wgaXNGaWx0ZXJTdGFibGUgPSBXZWJDb3JlOjppc0ZpbHRlclN0YWJsZShvcHRp
b25zLmZlZWRiYWNrKTsKKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICBzY3JpcHRF
eGVjdXRpb25Db250ZXh0LmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNz
YWdlTGV2ZWw6Oldhcm5pbmcsICJJSVJGaWx0ZXIgaXMgdW5zdGFibGUgd2l0aCBwcm92aWRlZCBm
ZWVkYmFjayBjb2VmZmljaWVudHMiX3MpOworCisgICAgYXV0byBub2RlID0gYWRvcHRSZWYoKm5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIG9wdGlvbnMuZmVlZGZvcndhcmQsIG9wdGlvbnMuZmVl
ZGJhY2ssIGlzRmlsdGVyU3RhYmxlKSk7CisKKyAgICBhdXRvIHJlc3VsdCA9IG5vZGUtPmhhbmRs
ZUF1ZGlvTm9kZU9wdGlvbnMob3B0aW9ucywgeyAyLCBDaGFubmVsQ291bnRNb2RlOjpNYXgsIENo
YW5uZWxJbnRlcnByZXRhdGlvbjo6U3BlYWtlcnMgfSk7CisgICAgaWYgKHJlc3VsdC5oYXNFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKKyAg
ICByZXR1cm4gbm9kZTsKK30KKworSUlSRmlsdGVyTm9kZTo6SUlSRmlsdGVyTm9kZShCYXNlQXVk
aW9Db250ZXh0JiBjb250ZXh0LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNv
bnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaywgYm9vbCBpc0ZpbHRlclN0YWJsZSkKKyAgICA6
IEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKGNvbnRleHQpCit7CisgICAgc2V0Tm9kZVR5cGUoTm9k
ZVR5cGVJSVJGaWx0ZXIpOworICAgIG1fcHJvY2Vzc29yID0gbWFrZVVuaXF1ZTxJSVJQcm9jZXNz
b3I+KGNvbnRleHQuc2FtcGxlUmF0ZSgpLCAxLCBmZWVkZm9yd2FyZCwgZmVlZGJhY2ssIGlzRmls
dGVyU3RhYmxlKTsKKworICAgIGluaXRpYWxpemUoKTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4g
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5JiBmcmVxdWVu
Y3lIeiwgRmxvYXQzMkFycmF5JiBtYWdSZXNwb25zZSwgRmxvYXQzMkFycmF5JiBwaGFzZVJlc3Bv
bnNlKQoreworICAgIGF1dG8gZXhwZWN0ZWRMZW5ndGggPSBmcmVxdWVuY3lIei5sZW5ndGgoKTsK
KyAgICBpZiAobWFnUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGggfHwgcGhhc2VS
ZXNwb25zZS5sZW5ndGgoKSAhPSBleHBlY3RlZExlbmd0aCkKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciwgIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVu
Z3RoIl9zIH07CisKKyAgICAvLyBOb3RoaW5nIHRvIGRvIGlmIHRoZSBsZW5ndGggaXMgMC4KKyAg
ICBpZiAoZXhwZWN0ZWRMZW5ndGggPiAwKQorICAgICAgICBpaXJQcm9jZXNzb3IoKS0+Z2V0RnJl
cXVlbmN5UmVzcG9uc2UoZXhwZWN0ZWRMZW5ndGgsIGZyZXF1ZW5jeUh6LmRhdGEoKSwgbWFnUmVz
cG9uc2UuZGF0YSgpLCBwaGFzZVJlc3BvbnNlLmRhdGEoKSk7CisKKyAgICByZXR1cm4geyB9Owor
fQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElP
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mODJhMjc5OWE2YmU5NmE0NjU4ODFmN2Y4MjBjZTQ2ZGE0ZDg5OTNmCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmgKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1
bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgIkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
T3B0aW9ucy5oIgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgorI2luY2x1ZGUgPEphdmFTY3Jp
cHRDb3JlL0Zsb2F0MzJBcnJheS5oPgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2MuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBJSVJGaWx0ZXJOb2RlIGZpbmFsIDogcHVibGljIEF1
ZGlvQmFzaWNQcm9jZXNzb3JOb2RlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKElJUkZp
bHRlck5vZGUpOworcHVibGljOgorICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8SUlSRmlsdGVy
Tm9kZT4+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgQmFzZUF1ZGlvQ29udGV4dCYs
IElJUkZpbHRlck9wdGlvbnMmJik7CisKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBnZXRGcmVxdWVu
Y3lSZXNwb25zZShGbG9hdDMyQXJyYXkmIGZyZXF1ZW5jeUh6LCBGbG9hdDMyQXJyYXkmIG1hZ1Jl
c3BvbnNlLCBGbG9hdDMyQXJyYXkmIHBoYXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJ
UkZpbHRlck5vZGUoQmFzZUF1ZGlvQ29udGV4dCYsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
Zm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3Rh
YmxlKTsKKworICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29yKCkgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0
ZXJOb2RlLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZGRjNWFjM2NmMjc4OWMxMzczY2ZmMjA0Njc3ODQxODRj
ZTY0YzIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJGaWx0ZXJOb2RlLmlkbApAQCAtMCwwICsxLDMyIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAg
Q29uZGl0aW9uYWw9V0VCX0FVRElPLAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorICAgIEVu
YWJsZWRCeVNldHRpbmc9TW9kZXJuVW5wcmVmaXhlZFdlYkF1ZGlvLAorXSBpbnRlcmZhY2UgSUlS
RmlsdGVyTm9kZSA6IEF1ZGlvTm9kZSB7CisgICAgW01heVRocm93RXhjZXB0aW9uLCBDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihCYXNlQXVkaW9Db250ZXh0IGF1
ZGlvQ29udGV4dCwgSUlSRmlsdGVyT3B0aW9ucyBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dFeGNl
cHRpb25dIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5IGZyZXF1ZW5jeUh6
LCBGbG9hdDMyQXJyYXkgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSBwaGFzZVJlc3BvbnNlKTsK
K307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRl
ck9wdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0
aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjFiMDJmNTk3NjM5NTRkNDIzZjU0YjQ3MmVkZjFlZjliMGM2ZjFl
MzEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaApAQCAtMCwwICsxLDQxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2lmIEVOQUJMRShXRUJfQVVESU8pCisKKyNpbmNsdWRlICJBdWRpb05vZGVPcHRpb25z
LmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0
cnVjdCBJSVJGaWx0ZXJPcHRpb25zIDogQXVkaW9Ob2RlT3B0aW9ucyB7CisgICAgVmVjdG9yPGRv
dWJsZT4gZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gZmVlZGJhY2s7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25z
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjFmMzQ3ODc3MWVlMTI0OTFiYjZhNTAxZTVmOGIyZTI4MjI2MWUzMQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmls
dGVyT3B0aW9ucy5pZGwKQEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworWworICAgIENvbmRp
dGlvbmFsPVdFQl9BVURJTworXSBkaWN0aW9uYXJ5IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05v
ZGVPcHRpb25zIHsKKyAgICByZXF1aXJlZCBzZXF1ZW5jZTxkb3VibGU+IGZlZWRmb3J3YXJkOwor
ICAgIHJlcXVpcmVkIHNlcXVlbmNlPGRvdWJsZT4gZmVlZGJhY2s7Cit9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1
YjQyNzMwOWEzNzcxMjQyYWEwMDVkY2NiZTA1OWZlZGVkZGIwMzEKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5jcHAKQEAgLTAs
MCArMSwxMDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYg
RU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJQcm9jZXNzb3IuaCIKKworI2luY2x1ZGUg
IklJUkRTUEtlcm5lbC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0lJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKGZsb2F0IHNhbXBsZVJhdGUsIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMs
IGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4m
IGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3RhYmxlKQorICAgIDogQXVkaW9EU1BLZXJuZWxQcm9j
ZXNzb3Ioc2FtcGxlUmF0ZSwgbnVtYmVyT2ZDaGFubmVscykKKyAgICAsIG1fZmVlZGZvcndhcmQo
ZmVlZGZvcndhcmQpCisgICAgLCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQorICAgICwgbV9pc0ZpbHRl
clN0YWJsZShpc0ZpbHRlclN0YWJsZSkKK3sKKyAgICB1bnNpZ25lZCBmZWVkYmFja0xlbmd0aCA9
IGZlZWRiYWNrLnNpemUoKTsKKyAgICB1bnNpZ25lZCBmZWVkZm9yd2FyZExlbmd0aCA9IGZlZWRm
b3J3YXJkLnNpemUoKTsKKyAgICBBU1NFUlQoZmVlZGJhY2tMZW5ndGggPiAwKTsKKyAgICBBU1NF
UlQoZmVlZGZvcndhcmRMZW5ndGggPiAwKTsKKworICAgIC8vIE5lZWQgdG8gc2NhbGUgdGhlIGZl
ZWRiYWNrIGFuZCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgYXBwcm9wcmlhdGVseS4KKyAgICAv
LyAoSXQncyB1cCB0byB0aGUgY2FsbGVyIHRvIGVuc3VyZSBmZWVkYmFja0NvZWZbMF0gaXMgbm90
IDAuKQorICAgIEFTU0VSVCghIWZlZWRiYWNrWzBdKTsKKworICAgIGlmIChmZWVkYmFja1swXSAh
PSAxKSB7CisgICAgICAgIC8vIFRoZSBwcm92aWRlZCBmaWx0ZXIgaXM6CisgICAgICAgIC8vCisg
ICAgICAgIC8vICAgYVswXSp5KG4pICsgYVsxXSp5KG4tMSkgKyAuLi4gPSBiWzBdKngobikgKyBi
WzFdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBXZSB3YW50IHRoZSBsZWFk
aW5nIGNvZWZmaWNpZW50IG9mIHkobikgdG8gYmUgMToKKyAgICAgICAgLy8KKyAgICAgICAgLy8g
ICB5KG4pICsgYVsxXS9hWzBdKnkobi0xKSArIC4uLiA9IGJbMF0vYVswXSp4KG4pICsgYlsxXS9h
WzBdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBUaHVzLCB0aGUgZmVlZGJh
Y2sgYW5kIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBuZWVkIHRvIGJlIHNjYWxlZCBieSAxL2Fb
MF0uCisgICAgICAgIGZsb2F0IHNjYWxlID0gZmVlZGJhY2tbMF07CisgICAgICAgIGZvciAodW5z
aWduZWQgayA9IDE7IGsgPCBmZWVkYmFja0xlbmd0aDsgKytrKQorICAgICAgICAgICAgbV9mZWVk
YmFja1trXSAvPSBzY2FsZTsKKworICAgICAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgZmVl
ZGZvcndhcmRMZW5ndGg7ICsraykKKyAgICAgICAgICAgIG1fZmVlZGZvcndhcmRba10gLz0gc2Nh
bGU7CisKKyAgICAgICAgLy8gVGhlIElJUkZpbHRlciBjaGVja3MgdG8gbWFrZSBzdXJlIHRoaXMg
Y29lZmZpY2llbnQgaXMgMSwgc28gbWFrZSBpdCBzby4KKyAgICAgICAgbV9mZWVkYmFja1swXSA9
IDE7CisgICAgfQorCisgICAgbV9yZXNwb25zZUtlcm5lbCA9IG1ha2VVbmlxdWU8SUlSRFNQS2Vy
bmVsPigqdGhpcyk7Cit9CisKK0lJUlByb2Nlc3Nvcjo6fklJUlByb2Nlc3NvcigpCit7CisgICAg
aWYgKGlzSW5pdGlhbGl6ZWQoKSkKKyAgICAgICAgdW5pbml0aWFsaXplKCk7Cit9CisKK3N0ZDo6
dW5pcXVlX3B0cjxBdWRpb0RTUEtlcm5lbD4gSUlSUHJvY2Vzc29yOjpjcmVhdGVLZXJuZWwoKQor
eworICAgIHJldHVybiBtYWtlVW5pcXVlPElJUkRTUEtlcm5lbD4oKnRoaXMpOworfQorCit2b2lk
IElJUlByb2Nlc3Nvcjo6cHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyog
ZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgaWYgKCFpc0luaXRp
YWxpemVkKCkpIHsKKyAgICAgICAgZGVzdGluYXRpb24tPnplcm8oKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIC8vIEZvciBlYWNoIGNoYW5uZWwgb2Ygb3VyIGlucHV0LCBwcm9jZXNz
IHVzaW5nIHRoZSBjb3JyZXNwb25kaW5nIElJUkRTUEtlcm5lbAorICAgIC8vIGludG8gdGhlIG91
dHB1dCBjaGFubmVsLgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9rZXJuZWxzLnNpemUo
KTsgKytpKQorICAgICAgICBtX2tlcm5lbHNbaV0tPnByb2Nlc3Moc291cmNlLT5jaGFubmVsKGkp
LT5kYXRhKCksIGRlc3RpbmF0aW9uLT5jaGFubmVsKGkpLT5tdXRhYmxlRGF0YSgpLCBmcmFtZXNU
b1Byb2Nlc3MpOworfQorCit2b2lkIElJUlByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2Uo
dW5zaWduZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNw
b25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCit7CisgICAgbV9yZXNwb25zZUtlcm5lbC0+Z2V0
RnJlcXVlbmN5UmVzcG9uc2UobGVuZ3RoLCBmcmVxdWVuY3lIeiwgbWFnUmVzcG9uc2UsIHBoYXNl
UmVzcG9uc2UpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJQcm9jZXNzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSUHJv
Y2Vzc29yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDRjNWVkOWRmOGU1OWI3ZTczYzIwNGViMGMzYTE0MjY1Y2E2
NDJkZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSUHJvY2Vzc29yLmgKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLmgiCisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkRTUEtlcm5l
bDsKKworY2xhc3MgSUlSUHJvY2Vzc29yIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsUHJv
Y2Vzc29yIHsKK3B1YmxpYzoKKyAgICBJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5z
aWduZWQgbnVtYmVyT2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJk
LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOwor
ICAgIH5JSVJQcm9jZXNzb3IoKTsKKworICAgIC8vIEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLgor
ICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyogZGVzdGlu
YXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOworICAgIHN0ZDo6dW5pcXVlX3B0
cjxBdWRpb0RTUEtlcm5lbD4gY3JlYXRlS2VybmVsKCkgZmluYWw7CisKKyAgICAvLyBHZXQgdGhl
IG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4g
c2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBpbiByYWRp
YW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3RoLCBjb25z
dCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVz
cG9uc2UpOworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkKCkgY29uc3Qg
eyByZXR1cm4gbV9mZWVkZm9yd2FyZDsgfQorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
YmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGJhY2s7IH0KKyAgICBib29sIGlzRmlsdGVyU3Rh
YmxlKCkgY29uc3QgeyByZXR1cm4gbV9pc0ZpbHRlclN0YWJsZTsgfQorCitwcml2YXRlOgorICAg
IFZlY3Rvcjxkb3VibGU+IG1fZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVk
YmFjazsKKyAgICBib29sIG1faXNGaWx0ZXJTdGFibGU7CisKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
SUlSRFNQS2VybmVsPiBtX3Jlc3BvbnNlS2VybmVsOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2Vi
Q29yZS9Tb3VyY2VzLnR4dAppbmRleCBkZTQ5ZmQyNjZiNmE4NGI5Yzg1M2I2YzVkOTRmZTM4YjI2
MDMxMzM3Li4zNjI2NjVhYjE3MTMxZjJjZjM3ZjhhZGY4OTA1NDA1YmYyOTcyNmM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dApAQCAtMjIxLDYgKzIyMSw5IEBAIE1vZHVsZXMvd2ViYXVkaW8vRGVsYXlOb2RlLmNw
cAogTW9kdWxlcy93ZWJhdWRpby9EZWxheVByb2Nlc3Nvci5jcHAKIE1vZHVsZXMvd2ViYXVkaW8v
RHluYW1pY3NDb21wcmVzc29yTm9kZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vR2Fpbk5vZGUuY3Bw
CitNb2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlSUHJvY2Vzc29yLmNwcAogTW9kdWxl
cy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1
ZGlvL01lZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlv
L01lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuY3BwCkBAIC0xNzk5LDYgKzE4MDIsNyBAQCBwbGF0Zm9y
bS9hdWRpby9IUlRGRGF0YWJhc2VMb2FkZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0
aW9uLmNwcAogcGxhdGZvcm0vYXVkaW8vSFJURktlcm5lbC5jcHAKIHBsYXRmb3JtL2F1ZGlvL0hS
VEZQYW5uZXIuY3BwCitwbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCiBwbGF0Zm9ybS9hdWRp
by9NdWx0aUNoYW5uZWxSZXNhbXBsZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9QYW5uZXIuY3BwCiBw
bGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHAKQEAgLTMwMzQsNiArMzAzOCw4
IEBAIEpTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogSlNJZGxlRGVhZGxpbmUuY3BwCiBKU0lk
bGVSZXF1ZXN0Q2FsbGJhY2suY3BwCiBKU0lkbGVSZXF1ZXN0T3B0aW9ucy5jcHAKK0pTSUlSRmls
dGVyTm9kZS5jcHAKK0pTSUlSRmlsdGVyT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXAuY3BwCiBK
U0ltYWdlQml0bWFwT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDNhMzYxYWE5OGU5YzI3YjM5ZjcyYmMyNWFmOThmZjAwY2E2MDNiMzAuLmRjMjk4M2Ji
NTNjYjkxZWE3ZmJlODgwYTVkZWQyZWEyYTNkMzYxZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTI0MzMsNiArMjQzMyw3IEBA
CiAJCTgzMDc4NEIyMUM1MkVFMkMwMDEwNEQxRCAvKiBYTUxEb2N1bWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwNzg0QjExQzUyRUUxOTAwMTA0
RDFEIC8qIFhNTERvY3VtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJODMwQTFDN0QyNERCNzg4QjAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1
ZGlvU291cmNlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODMwQTFDN0MyNERCNzg3MDAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291
cmNlT3B0aW9ucy5oICovOyB9OwogCQk4MzBBMzZCRDFEQUM1RkFEMDA2RDdEMDkgLyogSlNNb3Vz
ZUV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODMwQTM2QkIxREFDNUZBNzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLzsgfTsK
KwkJODMwRDBCNjkyNEY1N0Q2NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRDBCNjYyNEY1N0Q1MDAwN0VE
MTIyIC8qIElJUlByb2Nlc3Nvci5oICovOyB9OwogCQk4MzBFRUFCQTI0REI2QTY0MDA5RUZCQ0Ug
LyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRUVBQjcyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktp
dER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaCAqLzsgfTsKIAkJODMxMDJCMjcxRjlFQUREOTAwRTQw
NEI5IC8qIEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMxMDJCMjMxRjlFQURDMjAwRTQwNEI5IC8qIEpTRXh0
ZW5kYWJsZU1lc3NhZ2VFdmVudC5oICovOyB9OwogCQk4MzExQzAwMzFGQUEyRTk1MDBFM0M4RTUg
LyogU1dTZXJ2ZXJKb2JRdWV1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODMxMUMwMDIxRkFBMkU4OTAwRTNDOEU1IC8qIFNXU2VydmVySm9iUXVldWUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMjQ1
OSwxMiArMjQ2MCwxNSBAQAogCQk4MzQ4QkZBQzFCODU3Mjk4MDA5MTJGMzYgLyogQ2xhc3NDb2xs
ZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzQ4QkZBQTFCODU3Mjk1MDA5MTJGMzYgLyogQ2xhc3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTgz
NENCRkMyMjREQzc4NjcwMEMyQTNEOCAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlT3B0aW9ucy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM0Q0JGQkYy
NERDNzg1NTAwQzJBM0Q4IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggKi87IH07
CiAJCTgzNERGQUQwMUY3REFFNUQwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzUwNTFBMjI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVyTm9kZS5oICovOyB9OworCQk4
MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MDUxQTAyNEY1NzNBRTAwOTkx
MUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaCAqLzsgfTsKIAkJODM1MjBDN0UxQTcxQkZDQzAwNkJE
MkFBIC8qIENTU0ZvbnRGYW1pbHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNTIwQzdEMUE3MUJGQ0MwMDZCRDJBQSAvKiBDU1NGb250RmFtaWx5Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM1NkY5
N0YyNEQ5RjgxODAwNkMzRTQxIC8qIFdlYktpdEF1ZGlvTGlzdGVuZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTZGOTdFMjREOUY4MDkwMDZDM0U0
MSAvKiBXZWJLaXRBdWRpb0xpc3RlbmVyLmggKi87IH07CiAJCTgzNThDQjcwMUM1MzI3NzUwMEUw
QzJEOCAvKiBKU1hNTERvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4M0Y1NzBBRDFDNTMyNjhFMDA3RkQ2Q0IgLyogSlNYTUxEb2N1bWVudC5o
ICovOyB9OwogCQk4MzVEMkQ3ODFGNUYxRkJEMDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVu
dHJpZXNBUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNUQyRDc1MUY1RjFGQjgwMDE0MURFRCAvKiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5o
ICovOyB9OwogCQk4MzVEMzYzNzE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9t
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEMzYz
NjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi87IH07CiAJCTgzNUQ1
NEM1MUY0REU1MzgwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNUQ1NEMyMUY0REU1MzQw
MEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCAqLzsgfTsKKwkJODM1REE5MDIy
NEY1ODI2NTAwMjJEREE0IC8qIElJUkRTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1REE5MDEyNEY1ODI1NzAwMjJEREE0IC8qIElJUkRT
UEtlcm5lbC5oICovOyB9OwogCQk4MzYyRThDMTIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJl
YXRBc0NvbnRpbnVpbmdMb2FkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJODM2NTg5REUxRjU0QTc2OTAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJl
YWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2
NTg5RDkxRjU0QTc2MjAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5oICov
OyB9OwogCQk4MzY1ODlFMDFGNTRBNzZFMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzY1ODlEODFGNTRBNzYyMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmgg
Ki87IH07CkBAIC0yNTA0LDYgKzI1MDgsNyBAQAogCQk4Mzk5NDcxMDFGNTBCNkZBMDBFOUQ4NkIg
LyogSlNET01GaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4Mzk5NDcwRTFGNTBCNkYzMDBFOUQ4NkIgLyogSlNET01GaWxlU3lzdGVtLmgg
Ki87IH07CiAJCTgzOUEyRjJFMUUyMDRBNzEwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QTJGMkMx
RTIwNEE2RDAwMzkwNTdFIC8qIFdlYkdMU3RhdGVUcmFja2VyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM5QUFGRUQxQTBDMEM4RDAwNjA1Rjk5
IC8qIEhUTUxXQlJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzlBQUZFQjFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCAq
LzsgfTsKKwkJODM5QkU2RDUyNEY1ODc2MjAwNERGNTBGIC8qIElJUkZpbHRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QkU2RDIyNEY1ODc1NTAw
NERGNTBGIC8qIElJUkZpbHRlci5oICovOyB9OwogCQk4M0EyQUJEQjI0RDg2REUwMDBFMkQ3M0Qg
LyogRGVsYXlPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25zLmggKi87IH07
CiAJCTgzQThBQzQwMUZBQkJGRTUwMDIwNjRBQyAvKiBTZXJ2aWNlV29ya2VySWRlbnRpZmllci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNBOEFDM0Ux
RkFCQkZEMTAwMjA2NEFDIC8qIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODNCMUE3MDIyNDk5ODVGMDAw
RkU1OTYxIC8qIFdlYktpdEF1ZGlvQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODNCMUE2RkYyNDk5ODVEMDAwRkU1OTYxIC8qIFdlYktpdEF1
ZGlvQ29udGV4dC5oICovOyB9OwpAQCAtMTA0NDUsNiArMTA0NTAsOCBAQAogCQk4MzBBMUM3QzI0
REI3ODcwMDAyRUNDQUQgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk4MzBBMzZCQTFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50
SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vdXNlRXZl
bnRJbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODMwQTM2QkIxREFDNUZB
NzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNNb3VzZUV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IElJUlByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzBEMEI2
ODI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IElJUlByb2Nlc3Nvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEVFQUI3
MjREQjZBNTIwMDlFRkJDRSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODMwRUVBQjkyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNz
Q29tcHJlc3Nvck5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzEwMkIyMzFGOUVBREMyMDBFNDA0Qjkg
LyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTA0OTgsNiArMTA1MDUsMTEgQEAKIAkJODM0REQ0RjMxQkUwODk4OTAwMkM5QzNF
IC8qIFBhZ2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQ
YWdlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaGFyZWRTdHJpbmdIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTgzNERGQUNFMUY3REFFNTcwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXJlZFN0cmluZ0hhc2guY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTE5RTI0RjU3M0FEMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJGaWx0ZXJOb2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTAyNEY1NzNBRTAwOTkxMUQ3IC8qIElJ
UkZpbHRlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSRmlsdGVyT3B0aW9ucy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMTI0RjU3M0FFMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVyTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IElJUkZpbHRlck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM1MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IElJUkZpbHRlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzUwQzNFNzFEQTU5QjYyMDAzNTU0MjQgLyogU2Nyb2xsTG9naWNhbFBvc2l0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbExvZ2ljYWxQb3NpdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUwQzNFNzFEQTU5QjYyMDAzNTU0MzUgLyogU2Ny
b2xsSW50b1ZpZXdPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
cm9sbEludG9WaWV3T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUw
QzNFNzFEQTU5QjYyMDAzNTY0MjQgLyogU2Nyb2xsQmVoYXZpb3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQmVoYXZpb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTEwNTIwLDYgKzEwNTMyLDggQEAKIAkJODM1RDM2MzYxOUZGNjE5MzAwNEM5M0FC
IC8qIFN0eWxlQnVpbGRlckN1c3RvbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTdHlsZUJ1aWxkZXJDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1
RDU0QzExRjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXJlY3RvcnlGaWxlTGlzdENyZWF0
b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzVENTRDMjFGNERFNTM0MDBF
NjA2NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElJUkRTUEtlcm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNURBOTAxMjRGNTgyNTcwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSUlSRFNQS2VybmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNUY4QjI2MUQyRDkwQkEwMEU0MDhFQyAvKiBTbG90YWJsZS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gU2xvdGFibGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNob3VsZFRyZWF0QXNDb250aW51aW5n
TG9hZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzY1ODlEODFGNTRBNzYyMDBE
QzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTA2MDQsNiArMTA2MTgsOCBAQAogCQk4MzlBMkYyQzFFMjA0
QTZEMDAzOTA1N0UgLyogV2ViR0xTdGF0ZVRyYWNrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViR0xTdGF0ZVRyYWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJODM5QUFGRUExQTBDMEM4RDAwNjA1Rjk5IC8qIEhUTUxXQlJFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxXQlJFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM5QUFGRUIxQTBDMEM4RDAwNjA1Rjk5IC8qIEhU
TUxXQlJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxXQlJF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQyMjRGNTg3NTUw
MDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SUlSRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQ0MjRGNTg3
NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSUlSRmlsdGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNB
MkFCRDgyNEQ4NkRDNjAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
ZWxheU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBMkFCREEyNEQ4
NkRDNzAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGVsYXlPcHRpb25zLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBNEE5RjgxQ0U3RkQ3RTAwNzA5QjAwIC8q
IEpTWE1MRG9jdW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNYTUxEb2N1bWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0yOTY3OSw2ICsyOTY5NSwxNSBAQAogCQkJCUZEMzE1RkM0MTJCMDI2NzUwMEMxQTM1OSAv
KiBHYWluTm9kZS5pZGwgKi8sCiAJCQkJODM3NDVDRkYyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5P
cHRpb25zLmggKi8sCiAJCQkJODM3NDVEMDEyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5PcHRpb25z
LmlkbCAqLywKKwkJCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLywKKwkJCQk4MzVEQTkwMTI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggKi8s
CisJCQkJODM1MDUxOUUyNEY1NzNBRDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuY3BwICovLAor
CQkJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmggKi8sCisJCQkJ
ODM1MDUxQTEyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaWRsICovLAorCQkJCTgz
NTA1MUEwMjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggKi8sCisJCQkJODM1
MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICovLAorCQkJCTgz
MEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuY3BwICovLAorCQkJCTgzMEQw
QjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCAqLywKIAkJCQlGRDZGMjUyOTEz
RjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmNwcCAqLywKIAkJ
CQlGRDZGMjUyQTEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2Rl
LmggKi8sCiAJCQkJRkQ2RjI1MkIxM0Y1RUYwRTAwNjUxNjVGIC8qIE1lZGlhRWxlbWVudEF1ZGlv
U291cmNlTm9kZS5pZGwgKi8sCkBAIC0yOTgzMiw2ICsyOTg1Nyw4IEBACiAJCQkJRkQzMTYwNjkx
MkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZLZXJuZWwuaCAqLywKIAkJCQlGRDMxNjA2QTEyQjAyNkY3
MDBDMUEzNTkgLyogSFJURlBhbm5lci5jcHAgKi8sCiAJCQkJRkQzMTYwNkIxMkIwMjZGNzAwQzFB
MzU5IC8qIEhSVEZQYW5uZXIuaCAqLywKKwkJCQk4MzlCRTZENDI0RjU4NzU1MDA0REY1MEYgLyog
SUlSRmlsdGVyLmNwcCAqLywKKwkJCQk4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmls
dGVyLmggKi8sCiAJCQkJRkRCMTcwMDMxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hhbm5lbFJl
c2FtcGxlci5jcHAgKi8sCiAJCQkJRkRCMTcwMDQxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hh
bm5lbFJlc2FtcGxlci5oICovLAogCQkJCTQxNkZEMjVEMjQwRUUxQUUwMDY2NjFEOCAvKiBOb3dQ
bGF5aW5nSW5mby5oICovLApAQCAtMzE0NTAsNiArMzE0NzcsMTEgQEAKIAkJCQlDM0NGMTdBNzE1
QjAwNjNGMDAyNzZEMzkgLyogSWRUYXJnZXRPYnNlcnZlclJlZ2lzdHJ5LmggaW4gSGVhZGVycyAq
LywKIAkJCQk4QUI0QkM3NzEyNkZEQjcxMDBERUI3MjcgLyogSWdub3JlRGVzdHJ1Y3RpdmVXcml0
ZUNvdW50SW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ2NzMwMjAyMUM0RUZFNzgw
MEJDQjM1NyAvKiBJZ25vcmVPcGVuc0R1cmluZ1VubG9hZENvdW50SW5jcmVtZW50ZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzNURBOTAyMjRGNTgyNjUwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzOUJFNkQ1MjRGNTg3NjIwMDRERjUwRiAvKiBJSVJGaWx0
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcg
LyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMwRDBCNjkyNEY1N0Q2
NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjI3NTM1NzAw
QjA1MzgxNDAwMkNFNjRGIC8qIEltYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NUEzMzZGOTFE
ODIxRTNDMDAyMkM0QzcgLyogSW1hZ2VCYWNraW5nU3RvcmUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxODE1QTMxMUY5QTZDOEYwMEZDQkY4OSAvKiBJbWFnZUJpdG1hcC5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5h
bWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgK
aW5kZXggMjI0ZGJjMmU2MzM5ZTY0ZDUwNjNlYjJjZDViOTgxM2ZmZTczNjJkOC4uNmQwOWYyMWY2
ZGExZDNlY2EyMTkwMWI4NjEzOGUwM2NlNTAwYzI1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaApAQCAtMTQzLDYgKzE0Myw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhJREJSZXF1ZXN0KSBcCiAgICAgbWFjcm8oSURC
VHJhbnNhY3Rpb24pIFwKICAgICBtYWNybyhJREJWZXJzaW9uQ2hhbmdlRXZlbnQpIFwKKyAgICBt
YWNybyhJSVJGaWx0ZXJOb2RlKSBcCiAgICAgbWFjcm8oSW1hZ2VCaXRtYXApIFwKICAgICBtYWNy
byhJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQpIFwKICAgICBtYWNybyhJZGxlRGVhZGxpbmUp
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjExYjRiYWNmMjUzOGE4NGUyMjEwNmM2MTU2ZWM3MTk5YTE2NTQ1NjMKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCkBAIC0w
LDAgKzEsMjMxIEBACisvKgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJJSVJGaWx0ZXIuaCIKKworI2luY2x1ZGUgIlZlY3Rvck1hdGguaCIKKyNpbmNsdWRlIDxh
bGdvcml0aG0+CisjaW5jbHVkZSA8Y29tcGxleD4KKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5o
PgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NvbnN0ZXhwciB1bnNpZ25lZCBpaXJSZW5kZXJp
bmdRdWFudHVtID0gMTI4OworCisvLyBUaGUgbGVuZ3RoIG9mIHRoZSBtZW1vcnkgYnVmZmVycyBm
b3IgdGhlIElJUiBmaWx0ZXIuIFRoaXMgTVVTVCBiZSBhIHBvd2VyIG9mCisvLyB0d28gYW5kIG11
c3QgYmUgZ3JlYXRlciB0aGFuIHRoZSBwb3NzaWJsZSBsZW5ndGggb2YgdGhlIGZpbHRlciBjb2Vm
ZmljaWVudHMuCitjb25zdGV4cHIgaW50IGJ1ZmZlckxlbmd0aCA9IDMyOworc3RhdGljX2Fzc2Vy
dChidWZmZXJMZW5ndGggPj0gSUlSRmlsdGVyOjptYXhPcmRlciArIDEsICJJbnRlcm5hbCBJSVIg
YnVmZmVyIGxlbmd0aCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBtYXhpbXVtIElJUiBGaWx0ZXIgb3Jk
ZXIuIik7CisKK3N0YXRpYyBzdGQ6OmNvbXBsZXg8ZG91YmxlPiBldmFsdWF0ZVBvbHlub21pYWwo
Y29uc3QgZG91YmxlKiBjb2VmZmljaWVudHMsIHN0ZDo6Y29tcGxleDxkb3VibGU+IHosIGludCBv
cmRlcikKK3sKKyAgICAvLyBVc2UgSG9ybmVyJ3MgbWV0aG9kIHRvIGV2YWx1YXRlIHRoZSBwb2x5
bm9taWFsIFAoeikgPSBzdW0oY29lZltrXSp6XmssIGssIDAsIG9yZGVyKTsKKyAgICBzdGQ6OmNv
bXBsZXg8ZG91YmxlPiByZXN1bHQgPSAwOworICAgIGZvciAoaW50IGsgPSBvcmRlcjsgayA+PSAw
OyAtLWspCisgICAgICAgIHJlc3VsdCA9IHJlc3VsdCAqIHogKyBzdGQ6OmNvbXBsZXg8ZG91Ymxl
Pihjb2VmZmljaWVudHNba10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK0lJUkZpbHRlcjo6
SUlSRmlsdGVyKGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9y
PGRvdWJsZT4mIGZlZWRiYWNrKQorICAgIDogbV9mZWVkZm9yd2FyZChmZWVkZm9yd2FyZCkKKyAg
ICAsIG1fZmVlZGJhY2soZmVlZGJhY2spCit7CisgICAgbV94QnVmZmVyLmZpbGwoMCwgYnVmZmVy
TGVuZ3RoKTsKKyAgICBtX3lCdWZmZXIuZmlsbCgwLCBidWZmZXJMZW5ndGgpOworfQorCit2b2lk
IElJUkZpbHRlcjo6cmVzZXQoKQoreworICAgIG1feEJ1ZmZlci5maWxsKDApOworICAgIG1feUJ1
ZmZlci5maWxsKDApOworICAgIG1fYnVmZmVySW5kZXggPSAwOworfQorCit2b2lkIElJUkZpbHRl
cjo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVf
dCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgLy8gQ29tcHV0ZQorICAgIC8vCisgICAgLy8gICB5
W25dID0gc3VtKGJba10gKiB4W24gLSBrXSwgayA9IDAsIE0pIC0gc3VtKGFba10gKiB5W24gLSBr
XSwgayA9IDEsIE4pCisgICAgLy8KKyAgICAvLyB3aGVyZSBiW2tdIGFyZSB0aGUgZmVlZGZvcndh
cmQgY29lZmZpY2llbnRzIGFuZCBhW2tdIGFyZSB0aGUgZmVlZGJhY2sKKyAgICAvLyBjb2VmZmlj
aWVudHMgb2YgdGhlIGZpbHRlci4KKyAgICAvLyBUaGlzIGlzIGEgRGlyZWN0IEZvcm0gSSBpbXBs
ZW1lbnRhdGlvbiBvZiBhbiBJSVIgRmlsdGVyLiBTaG91bGQgd2UKKyAgICAvLyBjb25zaWRlciBk
b2luZyBhIGRpZmZlcmVudCBpbXBsZW1lbnRhdGlvbiBzdWNoIGFzIFRyYW5zcG9zZWQgRGlyZWN0
IEZvcm0KKyAgICAvLyBJST8KKyAgICBjb25zdCBkb3VibGUqIGZlZWRiYWNrID0gbV9mZWVkYmFj
ay5kYXRhKCk7CisgICAgY29uc3QgZG91YmxlKiBmZWVkZm9yd2FyZCA9IG1fZmVlZGZvcndhcmQu
ZGF0YSgpOworCisgICAgQVNTRVJUKGZlZWRiYWNrKTsKKyAgICBBU1NFUlQoZmVlZGZvcndhcmQp
OworCisgICAgLy8gU2FuaXR5IGNoZWNrIHRvIHNlZSBpZiB0aGUgZmVlZGJhY2sgY29lZmZpY2ll
bnRzIGhhdmUgYmVlbiBzY2FsZWQgYXBwcm9wcmlhdGVseS4gSXQgbXVzdCBiZSBFWEFDVExZIDEh
CisgICAgQVNTRVJUKGZlZWRiYWNrWzBdID09IDEpOworCisgICAgaW50IGZlZWRiYWNrTGVuZ3Ro
ID0gbV9mZWVkYmFjay5zaXplKCk7CisgICAgaW50IGZlZWRmb3J3YXJkTGVuZ3RoID0gbV9mZWVk
Zm9yd2FyZC5zaXplKCk7CisgICAgaW50IG1pbkxlbmd0aCA9IHN0ZDo6bWluKGZlZWRiYWNrTGVu
Z3RoLCBmZWVkZm9yd2FyZExlbmd0aCk7CisKKyAgICBkb3VibGUqIHhCdWZmZXIgPSBtX3hCdWZm
ZXIuZGF0YSgpOworICAgIGRvdWJsZSogeUJ1ZmZlciA9IG1feUJ1ZmZlci5kYXRhKCk7CisKKyAg
ICBmb3IgKHNpemVfdCBuID0gMDsgbiA8IGZyYW1lc1RvUHJvY2VzczsgKytuKSB7CisgICAgICAg
IC8vIFRvIGhlbHAgbWluaW1pemUgcm91bmRvZmYsIHdlIGNvbXB1dGUgdXNpbmcgZG91YmxlJ3Ms
IGV2ZW4gdGhvdWdoIHRoZQorICAgICAgICAvLyBmaWx0ZXIgY29lZmZpY2llbnRzIG9ubHkgaGF2
ZSBzaW5nbGUgcHJlY2lzaW9uIHZhbHVlcy4KKyAgICAgICAgZG91YmxlIHluID0gZmVlZGZvcndh
cmRbMF0gKiBzb3VyY2Vbbl07CisKKyAgICAgICAgLy8gUnVuIGJvdGggdGhlIGZlZWRmb3J3YXJk
IGFuZCBmZWVkYmFjayB0ZXJtcyB0b2dldGhlciwgd2hlbiBwb3NzaWJsZS4KKyAgICAgICAgZm9y
IChpbnQgayA9IDE7IGsgPCBtaW5MZW5ndGg7ICsraykgeworICAgICAgICAgICAgaW50IG0gPSAo
bV9idWZmZXJJbmRleCAtIGspICYgKGJ1ZmZlckxlbmd0aCAtIDEpOworICAgICAgICAgICAgeW4g
Kz0gZmVlZGZvcndhcmRba10gKiB4QnVmZmVyW21dOworICAgICAgICAgICAgeW4gLT0gZmVlZGJh
Y2tba10gKiB5QnVmZmVyW21dOworICAgICAgICB9CisKKyAgICAgICAgLy8gSGFuZGxlIGFueSBy
ZW1haW5pbmcgZmVlZGZvcndhcmQgb3IgZmVlZGJhY2sgdGVybXMuCisgICAgICAgIGZvciAoaW50
IGsgPSBtaW5MZW5ndGg7IGsgPCBmZWVkZm9yd2FyZExlbmd0aDsgKytrKQorICAgICAgICAgICAg
eW4gKz0gZmVlZGZvcndhcmRba10gKiB4QnVmZmVyWyhtX2J1ZmZlckluZGV4IC0gaykgJiAoYnVm
ZmVyTGVuZ3RoIC0gMSldOworICAgICAgICBmb3IgKGludCBrID0gbWluTGVuZ3RoOyBrIDwgZmVl
ZGJhY2tMZW5ndGg7ICsraykKKyAgICAgICAgICAgIHluIC09IGZlZWRiYWNrW2tdICogeUJ1ZmZl
clsobV9idWZmZXJJbmRleCAtIGspICYgKGJ1ZmZlckxlbmd0aCAtIDEpXTsKKworICAgICAgICAv
LyBTYXZlIHRoZSBjdXJyZW50IGlucHV0IGFuZCBvdXRwdXQgdmFsdWVzIGluIHRoZSBtZW1vcnkg
YnVmZmVycyBmb3IgdGhlCisgICAgICAgIC8vIG5leHQgb3V0cHV0LgorICAgICAgICBtX3hCdWZm
ZXJbbV9idWZmZXJJbmRleF0gPSBzb3VyY2Vbbl07CisgICAgICAgIG1feUJ1ZmZlclttX2J1ZmZl
ckluZGV4XSA9IHluOworCisgICAgICAgIG1fYnVmZmVySW5kZXggPSAobV9idWZmZXJJbmRleCAr
IDEpICYgKGJ1ZmZlckxlbmd0aCAtIDEpOworCisgICAgICAgIGRlc3RpbmF0aW9uW25dID0geW47
CisgICAgfQorfQorCit2b2lkIElJUkZpbHRlcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWdu
ZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZs
b2F0KiBwaGFzZVJlc3BvbnNlKQoreworICAgIC8vIEV2YWx1YXRlIHRoZSB6LXRyYW5zZm9ybSBv
ZiB0aGUgZmlsdGVyIGF0IHRoZSBnaXZlbiBub3JtYWxpemVkIGZyZXF1ZW5jaWVzCisgICAgLy8g
ZnJvbSAwIHRvIDEuIChPbmUgY29ycmVzcG9uZHMgdG8gdGhlIE55cXVpc3QgZnJlcXVlbmN5LikK
KyAgICAvLworICAgIC8vIFRoZSB6LXRyYW5mb3JtIG9mIHRoZSBmaWx0ZXIgaXMKKyAgICAvLwor
ICAgIC8vIEgoeikgPSBzdW0oYltrXSp6XigtayksIGssIDAsIE0pIC8gc3VtKGFba10qel4oLWsp
LCBrLCAwLCBOKTsKKyAgICAvLworICAgIC8vIFRoZSBkZXNpcmVkIGZyZXF1ZW5jeSByZXNwb25z
ZSBpcyBIKGV4cChqKm9tZWdhKSksIHdoZXJlIG9tZWdhIGlzIGluIFswLAorICAgIC8vIDEpLgor
ICAgIC8vCisgICAgLy8gTGV0IFAoeCkgPSBzdW0oY1trXSp4XmssIGssIDAsIFApIGJlIGEgcG9s
eW5vbWlhbCBvZiBvcmRlciBQLiBUaGVuIGVhY2ggb2YKKyAgICAvLyB0aGUgc3VtcyBpbiBIKHop
IGlzIGVxdWl2YWxlbnQgdG8gZXZhbHVhdGluZyBhIHBvbHlub21pYWwgYXQgdGhlIHBvaW50Cisg
ICAgLy8gMS96LgorCisgICAgZm9yICh1bnNpZ25lZCBrID0gMDsgayA8IGxlbmd0aDsgKytrKSB7
CisgICAgICAgIGlmIChmcmVxdWVuY3lba10gPCAwIHx8IGZyZXF1ZW5jeVtrXSA+IDEpIHsKKyAg
ICAgICAgICAgIC8vIE91dC1vZi1ib3VuZHMgZnJlcXVlbmNpZXMgc2hvdWxkIHJldHVybiBOYU4u
CisgICAgICAgICAgICBtYWdSZXNwb25zZVtrXSA9IHN0ZDo6bmFuZigiIik7CisgICAgICAgICAg
ICBwaGFzZVJlc3BvbnNlW2tdID0gc3RkOjpuYW5mKCIiKTsKKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIC8vIHpSZWNpcCA9IDEveiA9IGV4cCgtaipmcmVxdWVuY3kpCisgICAgICAgICAg
ICBkb3VibGUgb21lZ2EgPSAtcGlEb3VibGUgKiBmcmVxdWVuY3lba107CisgICAgICAgICAgICBh
dXRvIHpSZWNpcCA9IHN0ZDo6Y29tcGxleDxkb3VibGU+KGNvcyhvbWVnYSksIHNpbihvbWVnYSkp
OworCisgICAgICAgICAgICBhdXRvIG51bWVyYXRvciA9IGV2YWx1YXRlUG9seW5vbWlhbChtX2Zl
ZWRmb3J3YXJkLmRhdGEoKSwgelJlY2lwLCBtX2ZlZWRmb3J3YXJkLnNpemUoKSAtIDEpOworICAg
ICAgICAgICAgYXV0byBkZW5vbWluYXRvciA9IGV2YWx1YXRlUG9seW5vbWlhbChtX2ZlZWRiYWNr
LmRhdGEoKSwgelJlY2lwLCBtX2ZlZWRiYWNrLnNpemUoKSAtIDEpOworICAgICAgICAgICAgYXV0
byByZXNwb25zZSA9IG51bWVyYXRvciAvIGRlbm9taW5hdG9yOworICAgICAgICAgICAgbWFnUmVz
cG9uc2Vba10gPSBzdGF0aWNfY2FzdDxmbG9hdD4oYWJzKHJlc3BvbnNlKSk7CisgICAgICAgICAg
ICBwaGFzZVJlc3BvbnNlW2tdID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KGF0YW4yKGltYWcocmVzcG9u
c2UpLCByZWFsKHJlc3BvbnNlKSkpOworICAgICAgICB9CisgICAgfQorfQorCitkb3VibGUgSUlS
RmlsdGVyOjp0YWlsVGltZShkb3VibGUgc2FtcGxlUmF0ZSwgYm9vbCBpc0ZpbHRlclN0YWJsZSkK
K3sKKyAgICAvLyBUaGUgbWF4aW11bSB0YWlsIHRpbWUuIFRoaXMgaXMgc29tZXdoYXQgYXJiaXRy
YXJ5LCBidXQgd2UncmUgYXNzdW1pbmcgdGhhdAorICAgIC8vIG5vIG9uZSBpcyBnb2luZyB0byBl
eHBlY3QgdGhlIElJUkZpbHRlciB0byBwcm9kdWNlIGFuIG91dHB1dCBhZnRlciB0aGlzCisgICAg
Ly8gbXVjaCB0aW1lIGFmdGVyIHRoZSBpbnB1dHMgaGF2ZSBzdG9wcGVkLgorICAgIGNvbnN0ZXhw
ciBkb3VibGUgbWF4VGFpbFRpbWUgPSAxMDsKKworICAgIC8vIElmIHRoZSBtYXhpbXVtIGFtcGxp
dHVkZSBvZiB0aGUgaW1wdWxzZSByZXNwb25zZSBpcyBsZXNzIHRoYW4gdGhpcywgd2UKKyAgICAv
LyBhc3N1bWUgdGhhdCB3ZSd2ZSByZWFjaGVkIHRoZSB0YWlsIG9mIHRoZSByZXNwb25zZS4gQ3Vy
cmVudGx5LCB0aGlzIG1lYW5zCisgICAgLy8gdGhhdCB0aGUgaW1wdWxzZSBpcyBsZXNzIHRoYW4g
MSBiaXQgb2YgYSAxNi1iaXQgUENNIHZhbHVlLgorICAgIGNvbnN0ZXhwciBmbG9hdCBtYXhUYWls
QW1wbGl0dWRlID0gMSAvIDMyNzY4LjA7CisKKyAgICAvLyBJZiBmaWx0ZXIgaXMgbm90IHN0YWJs
ZSwganVzdCByZXR1cm4gbWF4IHRhaWwuIFNpbmNlIHRoZSBmaWx0ZXIgaXMgbm90CisgICAgLy8g
c3RhYmxlLCB0aGUgaW1wdWxzZSByZXNwb25zZSB3b24ndCBjb252ZXJnZSB0byB6ZXJvLCBzbyB3
ZSBkb24ndCBuZWVkIHRvCisgICAgLy8gZmluZCB0aGUgaW1wdWxzZSByZXNwb25zZSB0byBmaW5k
IHRoZSBhY3R1YWwgdGFpbCB0aW1lLgorICAgIGlmICghaXNGaWx0ZXJTdGFibGUpCisgICAgICAg
IHJldHVybiBtYXhUYWlsVGltZTsKKworICAgIC8vIEhvdyB0byBjb21wdXRlIHRoZSB0YWlsIHRp
bWU/IFdlJ3JlIGdvaW5nIHRvIGZpbHRlciBhbiBpbXB1bHNlCisgICAgLy8gZm9yIHxtYXhUYWls
VGltZXwgc2Vjb25kcywgaW4gYmxvY2tzIG9mIGtSZW5kZXJRdWFudHVtRnJhbWVzIGF0CisgICAg
Ly8gYSB0aW1lLiBUaGUgbWF4aW11bSBtYWduaXR1ZGUgb2YgdGhpcyBibG9jayBpcyBzYXZlZC4g
QWZ0ZXIgYWxsCisgICAgLy8gb2YgdGhlIHNhbXBsZXMgaGF2ZSBiZWVuIGNvbXB1dGVkLCBmaW5k
IHRoZSBsYXN0IGJsb2NrIHdpdGggYQorICAgIC8vIG1heGltdW0gbWFnbml0dWRlIGdyZWF0ZXIg
dGhhbiB8a01heFRhaWxlQW1wbGl0dWRlfC4gVGhhdCBibG9jaworICAgIC8vIGluZGV4ICsgMSB3
aWxsIGJlIHRoZSB0YWlsIHRpbWUuIFdlIGRvbid0IG5lZWQgdG8gYmUKKyAgICAvLyBzdXBlci1h
Y2N1cmF0ZSBpbiBjb21wdXRpbmcgdGhlIHRhaWwgdGltZSBzaW5jZSB3ZSBwcm9jZXNzIG9uCisg
ICAgLy8gYmxvY2tzLCBibG9jayBhY2N1cmFjeSBpcyBnb29kIGVub3VnaCwgYW5kIHRoZSB2YWx1
ZSBqdXN0IG5lZWRzCisgICAgLy8gdG8gYmUgbGFyZ2VyIHRoYW4gdGhlICJyZWFsIiB0YWlsIHRp
bWUsIHNvIHdlIGRvbid0IHByZW1hdHVyZWx5CisgICAgLy8gemVybyBvdXQgdGhlIG91dHB1dCBv
ZiB0aGUgbm9kZS4KKworICAgIC8vIE51bWJlciBvZiByZW5kZXIgcXVhbnRhIG5lZWRlZCB0byBy
ZWFjaCB0aGUgbWF4IHRhaWwgdGltZS4KKyAgICBpbnQgbnVtYmVyT2ZCbG9ja3MgPSBzdGQ6OmNl
aWwoc2FtcGxlUmF0ZSAqIG1heFRhaWxUaW1lIC8gaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisKKyAg
ICAvLyBJbnB1dCBhbmQgb3V0cHV0IGJ1ZmZlcnMgZm9yIGZpbHRlcmluZy4KKyAgICBBdWRpb0Zs
b2F0QXJyYXkgaW5wdXQoaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisgICAgQXVkaW9GbG9hdEFycmF5
IG91dHB1dChpaXJSZW5kZXJpbmdRdWFudHVtKTsKKworICAgIC8vIEFycmF5IHRvIGhvbGQgdGhl
IG1heCBtYWduaXR1ZGVzCisgICAgQXVkaW9GbG9hdEFycmF5IG1hZ25pdHVkZXMobnVtYmVyT2ZC
bG9ja3MpOworCisgICAgLy8gQ3JlYXRlIHRoZSBpbXB1bHNlIGlucHV0IHNpZ25hbC4KKyAgICBp
bnB1dFswXSA9IDE7CisKKyAgICAvLyBQcm9jZXNzIHRoZSBmaXJzdCBibG9jayBhbmQgZ2V0IHRo
ZSBtYXggbWFnbml0dWRlIG9mIHRoZSBvdXRwdXQuCisgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCks
IG91dHB1dC5kYXRhKCksIGlpclJlbmRlcmluZ1F1YW50dW0pOworICAgIFZlY3Rvck1hdGg6OnZt
YXhtZ3Yob3V0cHV0LmRhdGEoKSwgMSwgJm1hZ25pdHVkZXNbMF0sIGlpclJlbmRlcmluZ1F1YW50
dW0pOworCisgICAgLy8gUHJvY2VzcyB0aGUgcmVzdCBvZiB0aGUgc2lnbmFsLCBnZXR0aW5nIHRo
ZSBtYXggbWFnbml0dWRlIG9mIHRoZQorICAgIC8vIG91dHB1dCBmb3IgZWFjaCBibG9jay4KKyAg
ICBpbnB1dFswXSA9IDA7CisKKyAgICBmb3IgKGludCBrID0gMTsgayA8IG51bWJlck9mQmxvY2tz
OyArK2spIHsKKyAgICAgICAgcHJvY2VzcyhpbnB1dC5kYXRhKCksIG91dHB1dC5kYXRhKCksIGlp
clJlbmRlcmluZ1F1YW50dW0pOworICAgICAgICBWZWN0b3JNYXRoOjp2bWF4bWd2KG91dHB1dC5k
YXRhKCksIDEsICZtYWduaXR1ZGVzW2tdLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKyAgICB9CisK
KyAgICAvLyBEb25lIGNvbXB1dGluZyB0aGUgaW1wdWxzZSByZXNwb25zZTsgcmVzZXQgdGhlIHN0
YXRlIHNvIHRoZSBhY3R1YWwgbm9kZQorICAgIC8vIHN0YXJ0cyBpbiB0aGUgZXhwZWN0ZWQgaW5p
dGlhbCBzdGF0ZS4KKyAgICByZXNldCgpOworCisgICAgLy8gRmluZCB0aGUgbGFzdCBibG9jayB3
aXRoIGFtcGxpdHVkZSBncmVhdGVyIHRoYW4gdGhlIHRocmVzaG9sZC4KKyAgICBpbnQgaW5kZXgg
PSBudW1iZXJPZkJsb2NrcyAtIDE7CisgICAgZm9yIChpbnQgayA9IGluZGV4OyBrID49IDA7IC0t
aykgeworICAgICAgICBpZiAobWFnbml0dWRlc1trXSA+IG1heFRhaWxBbXBsaXR1ZGUpIHsKKyAg
ICAgICAgICAgIGluZGV4ID0gazsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAg
fQorCisgICAgLy8gVGhlIG1hZ25pdHVkZSBmaXJzdCBiZWNvbWUgbG93ZXIgdGhhbiB0aGUgdGhy
ZXNob2xkIGF0IHRoZSBuZXh0IGJsb2NrLgorICAgIC8vIENvbXB1dGUgdGhlIGNvcnJlc3BvbmRp
bmcgdGltZSB2YWx1ZSB2YWx1ZTsgdGhhdCdzIHRoZSB0YWlsIHRpbWUuCisgICAgcmV0dXJuIChp
bmRleCArIDEpICogaWlyUmVuZGVyaW5nUXVhbnR1bSAvIHNhbXBsZVJhdGU7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0lJUkZpbHRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vSUlSRmlsdGVy
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uODBkMGI4NzQzYjdiNzZjMGVkZTk0ZDI4YTcwOTQ0ZTRlY2FiN2FlOAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRl
ci5oCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0g
QXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNp
bmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSUlS
RmlsdGVyIHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBzdGF0
aWMgY29uc3RleHByIHNpemVfdCBtYXhPcmRlciB7IDIwIH07CisgICAgSUlSRmlsdGVyKGNvbnN0
IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRi
YWNrKTsKKworICAgIHZvaWQgcmVzZXQoKTsKKworICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9h
dCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOwor
ICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3RoLCBjb25zdCBmbG9h
dCogZnJlcXVlbmN5LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsK
KyAgICBkb3VibGUgdGFpbFRpbWUoZG91YmxlIHNhbXBsZVJhdGUsIGJvb2wgaXNGaWx0ZXJTdGFi
bGUpOworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkKCkgY29uc3QgeyBy
ZXR1cm4gbV9mZWVkZm9yd2FyZDsgfQorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFj
aygpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGJhY2s7IH0KKworcHJpdmF0ZToKKyAgICAvLyBGaWx0
ZXIgbWVtb3J5CisgICAgLy8KKyAgICAvLyBGb3Igc2ltcGxpY2l0eSwgd2UgYXNzdW1lIHxtX3hC
dWZmZXJ8IGFuZCB8bV95QnVmZmVyfCBoYXZlIHRoZSBzYW1lIGxlbmd0aCwKKyAgICAvLyBhbmQg
dGhlIGxlbmd0aCBpcyBhIHBvd2VyIG9mIHR3by4gU2luY2UgdGhlIG51bWJlciBvZiBjb2VmZmlj
aWVudHMgaGFzIGEKKyAgICAvLyBmaXhlZCB1cHBlciBsZW5ndGgsIHRoZSBzaXplIG9mIHhCdWZm
ZXIgYW5kIHlCdWZmZXIgaXMgZml4ZWQuIHxtX3hCdWZmZXJ8CisgICAgLy8gaG9sZHMgdGhlIG9s
ZCBpbnB1dCB2YWx1ZXMgYW5kIHxtX3lCdWZmZXJ8IGhvbGRzIHRoZSBvbGQgb3V0cHV0IHZhbHVl
cworICAgIC8vIG5lZWRlZCB0byBjb21wdXRlIHRoZSBuZXcgb3V0cHV0IHZhbHVlLgorICAgIC8v
CisgICAgLy8gbV95QnVmZmVyW21fYnVmZmVySW5kZXhdIGhvbGRzIHRoZSBtb3N0IHJlY2VudCBv
dXRwdXQgdmFsdWUsIHNheSwgeVtuXS4KKyAgICAvLyBUaGVuIG1feUJ1ZmZlclttX2J1ZmZlcklu
ZGV4IC0ga10gaXMgeVtuIC0ga10uIFNpbWlsYXJseSBmb3IgbV94QnVmZmVyLgorICAgIC8vCisg
ICAgLy8gVG8gbWluaW1pemUgcm91bmRvZmYsIHRoZXNlIGFycmF5cyBhcmUgZG91YmxlJ3MgaW5z
dGVhZCBvZiBmbG9hdHMuCisgICAgVmVjdG9yPGRvdWJsZT4gbV94QnVmZmVyOworICAgIFZlY3Rv
cjxkb3VibGU+IG1feUJ1ZmZlcjsKKworICAgIC8vIEluZGV4IGludG8gdGhlIHhCdWZmZXIgYW5k
IHlCdWZmZXIgYXJyYXlzIHdoZXJlIHRoZSBtb3N0IGN1cnJlbnQgeCBhbmQgeQorICAgIC8vIHZh
bHVlcyBzaG91bGQgYmUgc3RvcmVkLiB4QnVmZmVyW2J1ZmZlckluZGV4XSBjb3JyZXNwb25kcyB0
byB4W25dLCB0aGUKKyAgICAvLyBjdXJyZW50IHggaW5wdXQgdmFsdWUgYW5kIHlCdWZmZXJbYnVm
ZmVySW5kZXhdIGlzIHdoZXJlIHlbbl0sIHRoZSBjdXJyZW50CisgICAgLy8gb3V0cHV0IHZhbHVl
LgorICAgIHNpemVfdCBtX2J1ZmZlckluZGV4IHsgMCB9OworCisgICAgLy8gVGhvc2UgVmVjdG9y
cyBhcmUgb3duZWQgYnkgdGhlIElJUlByb2Nlc3MsIHdoaWNoIG93bnMgdGhlIElJUkZpbHRlcnMg
dmlhCisgICAgLy8gdGhlIElJUkRTUEtlcm5lbHMuIFRoaXMgaXMgYSBtZW1vcnkgb3B0aW1pemF0
aW9uIHRvIGF2b2lkIGhhdmluZyBjb3BpZXMKKyAgICAvLyBvZiB0aGVzZSB2ZWN0b3JzIGluIGVh
Y2ggSUlSRFNQS2VybmVsIC8gSUlSRmlsdGVyLgorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBt
X2ZlZWRmb3J3YXJkOworICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBtX2ZlZWRiYWNrOworfTsK
KworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGlsaXRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVzLmgKaW5kZXggOWIxOGNhYThkODZiZjhkMjc1M2MzY2Jl
Y2E1ZDc0NDRmYWY5ODFkNy4uMDNjZjExN2Q1NGQ0MTkxODVkNGE4ZjAyNDYwNDc1NDU4MGM1MWQ3
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGls
aXRpZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxp
dGllcy5oCkBAIC0yNSw2ICsyNSw5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8d3Rm
L0ZvcndhcmQuaD4KKyNpbmNsdWRlIDx3dGYvV29ya1F1ZXVlLmg+CisKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogV0VCQ09SRV9FWFBPUlQgV29ya1F1ZXVlJiBzaGFyZWRJbWFnZVRyYW5zY29kaW5n
UXVldWUoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDU3YTYxMjUxY2I0YjMz
NmQzOTIyZWM1MmFiZmE5YjY2YzI2NDcxODcuLjE5M2M3YmM0ZDk5ZTg3Nzk0NTI3ZGUyNjgwOTE5
ODg1Yzk2YTM5YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5
IEBACisyMDIwLTA4LTI1ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAg
ICAgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgUmViYXNlbGluZSBXUFQgdGVzdHMgdGhh
dCBhcmUgbm93IHBhc3NpbmcuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWlu
dGVyZmFjZS9jdG9yLWlpcmZpbHRlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJm
YWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNl
L2lpcmZpbHRlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRl
ci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJm
YWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50eHQ6CisKIDIwMjAtMDgtMjQgIEFsZXgg
Q2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBVcGRhdGUg
aU9TIGxheW91dCB0ZXN0IHJlc3VsdHMgYWZ0ZXIgcjI2NjA4NwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggN2U5NzI4NzkwOWFmMzZhZDcwYzhhZjdlYmJjMmI2ZTUzN2ExMmFlZC4uMDAyZTM3ZWZiOTg3
YjU4MTQ2ZGI0YjQwNDU4MGZjNzg3NTlkM2U3NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVz
dEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMzUs
OCArMzM1LDEyIEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2UvCiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJm
YWNlL2stcmF0ZS1kZWxheS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRl
cmZhY2Uvay1yYXRlLWdhaW4uaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLSMgVGhpcyB0ZXN0IHBh
c3NlcyBidXQgcHJpbnRzIGEgZGlmZmVyZW50IHZhbHVlIGFsbW9zdCBldmVyeSB0aW1lLgorIyBv
bmUtcG9sZSBzdWJ0ZXN0IGlzIGZsYWtpbHkgZmFpbGluZy4KK2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRl
cmZhY2UvaWlyZmlsdGVyLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQorCisjIFRoZXNlIHRlc3RzIHBh
c3MgYnV0IHByaW50IGRpZmZlcmVudCB2YWx1ZXMgYWxtb3N0IGV2ZXJ5IHRpbWUuCiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZv
bHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNwb25zZS00LWNoYW4uaHRtbCBbIFBhc3Mg
RmFpbHVyZSBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLmh0bWwg
WyBQYXNzIEZhaWx1cmUgXQogCiAKICMgU29tZSBvZiB0aGUgc3ViY2hlY2tzIGFyZSBmYWlsaW5n
IGFuZCBwcmludCBvdXQgYSBkaWZmZXJlbnQgdmFsdWUgZXZlcnkgdGltZS4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRs
aGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1l
eHBlY3RlZC50eHQKaW5kZXggNWU5MTIzMmY4N2NkN2UwYTBkYWZlMjkwMTg2NTQ3YjNmM2FmNjUx
OC4uODE3NDk0NTUxNjg0MjA0ZDI1YmM0OGQxMTFmNGRiMmFiMGNiNGFlNyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxo
YXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRv
dy1leHBlY3RlZC50eHQKQEAgLTMzLDcgKzMzLDcgQEAgUEFTUyBCYXNlQXVkaW9Db250ZXh0IGlu
dGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUNvbnZvbHZlcigpCiBQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlRGVsYXkob3B0aW9uYWwgZG91YmxlKSAKIFBB
U1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVEeW5hbWljc0Nv
bXByZXNzb3IoKSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBj
cmVhdGVHYWluKCkgCi1GQUlMIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24g
Y3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIGFzc2Vy
dF9vd25fcHJvcGVydHk6IGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IG1pc3Npbmcgbm9uLXN0
YXRpYyBvcGVyYXRpb24gZXhwZWN0ZWQgcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbWlzc2lu
ZworUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUlJUkZp
bHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSAKIFBBU1MgQmFzZUF1ZGlv
Q29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVPc2NpbGxhdG9yKCkgCiBQQVNTIEJh
c2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlUGFubmVyKCkgCiBQQVNT
IEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlUGVyaW9kaWNXYXZl
KHNlcXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVD
b25zdHJhaW50cykgCkBAIC05NCw4ICs5NCw4IEBAIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRl
cmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVEZWxheShvcHRpCiBQ
QVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0ZURlbGF5KG9wdGlv
bmFsIGRvdWJsZSkgb24gY29udGV4dCB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cg
VHlwZUVycm9yIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUR5bmFtaWNzQ29tcHJlc3NvcigpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVHYWluKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAot
RkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+
KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRl
SUlSRmlsdGVyIiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCi1GQUlMIEJhc2VBdWRpb0Nv
bnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+
LCBzZXF1ZW5jZTxkb3VibGU+KSBvbiBjb250ZXh0IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVz
dCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmls
dGVyIiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCitQQVNTIEJhc2VBdWRpb0NvbnRleHQg
aW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVy
KHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSAKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlSRmls
dGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIG9uIGNvbnRleHQgd2l0aCB0
b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29u
dGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVPc2Np
bGxhdG9yKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGlu
dGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZVBhbm5lcigpIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNv
bnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVQZXJpb2RpY1dhdmUoc2VxdWVuY2U8
ZmxvYXQ+LCBzZXF1ZW5jZTxmbG9hdD4sIG9wdGlvbmFsIFBlcmlvZGljV2F2ZUNvbnN0cmFpbnRz
KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCkBAIC0xNDcsOCArMTQ3LDggQEAgUEFTUyBCYXNlQXVk
aW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxl
X3JhdGUpIG11c3QKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3Jl
YXRlRGVsYXkob3B0aW9uYWwgZG91YmxlKSBvbiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAx
LCBzYW1wbGVfcmF0ZSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJv
ciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250
ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUR5bmFt
aWNzQ29tcHJlc3NvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29u
dGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRl
KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUdhaW4oKSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgCi1GQUlMIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29u
dGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVJSVJG
aWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikiIHdpdGggdGhlIHByb3Bl
ciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZv
dW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTog
Y2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91Ymxl
Pikgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9v
IGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9w
ZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCitQQVNT
IEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAx
LCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2Vx
dWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIAor
UEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIo
c2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgb24gbmV3IE9mZmxpbmVBdWRpb0Nv
bnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJv
dyBUeXBlRXJyb3IgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGlu
ZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJj
cmVhdGVPc2NpbGxhdG9yKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBCYXNlQXVkaW9D
b250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3Jh
dGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlUGFubmVyKCkiIHdpdGggdGhlIHByb3Bl
ciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRp
b0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRl
UGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQ
ZXJpb2RpY1dhdmVDb25zdHJhaW50cykiIHdpdGggdGhlIHByb3BlciB0eXBlIApAQCAtNzQ0LDQw
ICs3NDQsNDAgQEAgUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgR2Fpbk5vZGUoY29udGV4
dCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJudW1iZXJPZk8KIFBBU1MgQXVkaW9Ob2RlIGludGVy
ZmFjZTogbmV3IEdhaW5Ob2RlKGNvbnRleHQpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5l
bENvdW50IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTog
bmV3IEdhaW5Ob2RlKGNvbnRleHQpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50
TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5l
dyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxJbnRlcnBy
ZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJm
YWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIG9iamVjdCBhc3NlcnRf
b3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJO
b2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJG
aWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIGFzc2VydF9vd25fcHJvcGVydHk6IHNl
bGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHBy
b3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJm
YWNlIG9iamVjdCBuYW1lIGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBv
d24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJO
b2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5k
IHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QgYXNzZXJ0X293bl9wcm9w
ZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhw
ZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9k
ZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90
eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTog
c2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQg
cHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9i
amVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBk
b2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVy
dHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6
IG9wZXJhdGlvbiBnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJh
eSwgRmxvYXQzMkFycmF5KSBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUg
b3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVy
Tm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIG11c3QgYmUgcHJpbWFyeSBpbnRlcmZh
Y2Ugb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBTdHJpbmdpZmljYXRp
b24gb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBJSVJGaWx0ZXJOb2Rl
IGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImdldEZyZXF1ZW5jeVJlc3Bv
bnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXkpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBJSVJGaWx0ZXJOb2Rl
IGludGVyZmFjZTogY2FsbGluZyBnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZs
b2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7
ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMg
bXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24g
d2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVk
aW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVk
aW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24g
d2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVk
aW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBjb25uZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5z
aWduZWQgbG9uZywgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcg
YXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQg
ZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9i
amVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUi
Ci1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtm
ZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJj
b25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJm
YWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9QYXJhbSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykg
b24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNr
OiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2Vy
dF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhw
ZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFy
aWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KCkiIHdpdGggdGhlIHByb3BlciB0eXBlIGFz
c2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3Qg
ZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQg
dmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2
YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVy
cm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUg
aW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QodW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRo
IHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVu
ZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBi
dXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZp
bHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvTm9kZSkiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2Vy
dF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhw
ZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFy
aWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcg
ZGlzY29ubmVjdChBdWRpb05vZGUpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0
IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVu
IGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsx
XSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRp
b05vZGUsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxz
OiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51
bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJ
SVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5l
Y3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVu
dHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRp
b24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwg
QXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5l
Y3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0
aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjog
Q2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVy
ZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWdu
ZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVy
cm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBv
YmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0
IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6
IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazog
WzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0pIiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVu
IGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkgb24gbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRo
IHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVu
ZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBi
dXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZp
bHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50
ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9QYXJhbSwgdW5zaWduZWQgbG9uZykgb24g
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9l
cXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0
ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFi
bGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0
ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBp
bmhlcml0IHByb3BlcnR5ICJjb250ZXh0IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1
YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVy
Tm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZJbnB1dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2Vy
dF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhw
ZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFy
aWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJudW1iZXJPZk91dHB1dHMiIHdpdGggdGhlIHByb3BlciB0eXBl
IGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmpl
Y3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZp
bmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnQiIHdpdGggdGhlIHByb3BlciB0
eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBv
YmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0
IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6
IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazog
WzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnRNb2RlIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50
ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVl
ZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbEludGVycHJldGF0aW9u
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlv
biB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJl
ZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgorUEFTUyBJ
SVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVy
ZmFjZSBvYmplY3QgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGgg
CitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIG9iamVjdCBuYW1lIAorUEFTUyBJSVJGaWx0
ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBw
cm90b3R5cGUgb2JqZWN0IAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNl
IGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVj
dG9yIiBwcm9wZXJ0eSAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBh
bmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJs
ZXMgcHJvcGVydHkgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0
RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJh
eSkgCitQQVNTIElJUkZpbHRlck5vZGUgbXVzdCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuZXcg
SUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0p
IAorUEFTUyBTdHJpbmdpZmljYXRpb24gb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2Zl
ZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVk
YmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJnZXRGcmVxdWVuY3lSZXNwb25zZShG
bG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGdldEZyZXF1ZW5j
eVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXkpIG9uIG5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFd
fSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVk
aW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJk
OiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVk
aW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcg
Y29ubmVjdChBdWRpb05vZGUsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcsIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImNvbm5lY3QoQXVkaW9QYXJhbSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykiIHdpdGggdGhl
IHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3Qo
QXVkaW9QYXJhbSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcg
YXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNl
OiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6
IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCgpIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImRpc2Nvbm5lY3QodW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAor
UEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QodW5zaWduZWQgbG9u
Zykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAor
UEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVl
ZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlz
Y29ubmVjdChBdWRpb05vZGUpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2Rl
IGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSkgb24gbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRv
byBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50
ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVl
ZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUs
IHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGlu
dGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZykgb24g
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBB
dWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndh
cmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVj
dChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1
ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBm
ZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtKSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcg
ZGlzY29ubmVjdChBdWRpb1BhcmFtKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVl
ZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVz
dCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0
ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBp
bmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxvbmcpIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBk
aXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2Rl
KGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3
IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFj
ZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNr
OiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbnRleHQiIHdpdGggdGhlIHByb3BlciB0
eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAibnVtYmVyT2ZJbnB1dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUg
aW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwg
ZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPdXRwdXRzIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZp
bHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxDb3VudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQ
QVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFu
bmVsQ291bnRNb2RlIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVy
ZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZSBp
bnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IAog
UEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUgaW50ZXJmYWNlIG9iamVjdCBsZW5ndGgg
CiBQQVNTIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZSBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUg
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3It
aWlyZmlsdGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRl
cmZhY2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQudHh0CmluZGV4IGU5MDFhMmM0NDMxNjAzMDYy
OTZkZDA3MzQxMzExMTc1N2VmNzM5MDIuLjdhZTc3YzFjMjI5MWQ4MTA4MjI1NDVmMjQzNzcyYWE5
YWQ4ZjYyMDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZh
Y2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmls
dGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQudHh0CkBAIC0yLDI3ICsy
LDU2IEBACiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGlu
ZyAiaW5pdGlhbGl6ZSIgCiBQQVNTIEV4ZWN1dGluZyAiaW52YWxpZCBjb25zdHJ1Y3RvciIgCi1G
QUlMIEV4ZWN1dGluZyAiZGVmYXVsdCBjb25zdHJ1Y3RvciIgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBSaWdodCBoYW5kIHNp
ZGUgb2YgaW5zdGFuY2VvZiBpcyBub3QgYW4gb2JqZWN0IgotRkFJTCBFeGVjdXRpbmcgInRlc3Qg
QXVkaW9Ob2RlT3B0aW9ucyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZh
bHVhdGluZyAnbm9kZS5jaGFubmVsQ291bnQnKSIKK1BBU1MgRXhlY3V0aW5nICJkZWZhdWx0IGNv
bnN0cnVjdG9yIiAKK1BBU1MgRXhlY3V0aW5nICJ0ZXN0IEF1ZGlvTm9kZU9wdGlvbnMiIAogUEFT
UyBFeGVjdXRpbmcgImNvbnN0cnVjdG9yIG9wdGlvbnMiIAotRkFJTCBFeGVjdXRpbmcgImZ1bmN0
aW9uYWxpdHkiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2Rl
IgorUEFTUyBFeGVjdXRpbmcgImZ1bmN0aW9uYWxpdHkiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQ
QVNTID4gW2luaXRpYWxpemVdICAKIFBBU1MgICBjb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0Nv
bnRleHQoLi4uKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTIDwgW2luaXRpYWxp
emVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4g
W2ludmFsaWQgY29uc3RydWN0b3JdICAKLVBBU1MgICBuZXcgSUlSRmlsdGVyTm9kZSgpIHRocmV3
IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGluZyAn
bmV3IHdpbmRvd1tuYW1lXSgpJykiLiAKLVBBU1MgICBuZXcgSUlSRmlsdGVyTm9kZSgxKSB0aHJl
dyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcg
J25ldyB3aW5kb3dbbmFtZV0oMSknKSIuIAotUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRl
eHQsIDQyKSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3Ig
KGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oY29udGV4dCwgNDIpJykiLiAKK1BBU1MgICBu
ZXcgSUlSRmlsdGVyTm9kZSgpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRz
Ii4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoMSkgdGhyZXcgVHlwZUVycm9yOiAiTm90IGVu
b3VnaCBhcmd1bWVudHMiLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCA0Mikg
dGhyZXcgVHlwZUVycm9yOiAiVHlwZSBlcnJvciIuIAogUEFTUyA8IFtpbnZhbGlkIGNvbnN0cnVj
dG9yXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+
IFtkZWZhdWx0IGNvbnN0cnVjdG9yXSAgCi1GQUlMIFggbm9kZTAgPSBuZXcgSUlSRmlsdGVyTm9k
ZShjb250ZXh0LCB7ImZlZWRmb3J3YXJkIjpbMV0sImZlZWRiYWNrIjpbMSwtMC45XX0pIGluY29y
cmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAo
ZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tuYW1lXShjb250ZXh0LCBvcHRpb25zLmNvbnN0cnVjdG9y
T3B0aW9ucyknKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAg
IG5vZGUwID0gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJm
ZWVkYmFjayI6WzEsLTAuOV19KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAg
bm9kZTAgaW5zdGFuY2VvZiBJSVJGaWx0ZXJOb2RlIGlzIGVxdWFsIHRvIHRydWUuIAorUEFTUyAg
IG5vZGUwLm51bWJlck9mSW5wdXRzIGlzIGVxdWFsIHRvIDEuIAorUEFTUyAgIG5vZGUwLm51bWJl
ck9mT3V0cHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBub2RlMC5jaGFubmVsQ291bnQgaXMg
ZXF1YWwgdG8gMi4gCitQQVNTICAgbm9kZTAuY2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBt
YXguIAorUEFTUyAgIG5vZGUwLmNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVh
a2Vycy4gCitQQVNTIDwgW2RlZmF1bHQgY29uc3RydWN0b3JdIEFsbCBhc3NlcnRpb25zIHBhc3Nl
ZC4gKHRvdGFsIDcgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10g
IAotRkFJTCBYIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnQ6IDE3fSkgaW5jb3Jy
ZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9yIChl
dmFsdWF0aW5nICduZXcgd2luZG93W25vZGVOYW1lXScpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3Vu
dDogMTd9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVs
Q291bnQgaXMgZXF1YWwgdG8gMTcuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFu
bmVsQ291bnQ6IDB9KSB0aHJldyBJbnZhbGlkU3RhdGVFcnJvcjogIlRoZSBvYmplY3QgaXMgaW4g
YW4gaW52YWxpZCBzdGF0ZS4iLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5l
bENvdW50OiA5OX0pIHRocmV3IEludmFsaWRTdGF0ZUVycm9yOiAiVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLiIuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVs
Q291bnRNb2RlOiAibWF4In0gZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5v
ZGUuY2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5ldyBJSVJGaWx0
ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAibWF4In0pIGRpZCBub3QgdGhyb3cgYW4gZXhj
ZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxDb3VudE1vZGUgYWZ0ZXIgdmFsaWQgc2V0dGVy
IGlzIGVxdWFsIHRvIG1heC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxD
b3VudE1vZGU6ICJjbGFtcGVkLW1heCJ9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQ
QVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVyIHZhbGlkIHNldHRlciBpcyBlcXVhbCB0
byBjbGFtcGVkLW1heC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3Vu
dE1vZGU6ICJleHBsaWNpdCJ9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAg
bm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVyIHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBleHBs
aWNpdC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJm
b29iYXIifSB0aHJldyBUeXBlRXJyb3I6ICJUeXBlIGVycm9yIi4gCitQQVNTICAgbm9kZS5jaGFu
bmVsQ291bnRNb2RlIGFmdGVyIGludmFsaWQgc2V0dGVyIGlzIGVxdWFsIHRvIGV4cGxpY2l0LiAK
K1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJldGF0aW9uOiAic3Bl
YWtlcnMifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5l
bEludGVycHJldGF0aW9uIGlzIGVxdWFsIHRvIHNwZWFrZXJzLiAKK1BBU1MgICBuZXcgSUlSRmls
dGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJldGF0aW9uOiAiZGlzY3JldGUifSkgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbEludGVycHJldGF0aW9uIGlz
IGVxdWFsIHRvIGRpc2NyZXRlLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5l
bEludGVycHJldGF0aW9uOiAiZm9vYmFyIn0pIHRocmV3IFR5cGVFcnJvcjogIlR5cGUgZXJyb3Ii
LiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRlcnByZXRhdGlvbiBhZnRlciBpbnZhbGlkIHNldHRl
ciBpcyBlcXVhbCB0byBkaXNjcmV0ZS4gCitQQVNTIDwgW3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMjAgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2Nv
bnN0cnVjdG9yIG9wdGlvbnNdICAKLUZBSUwgWCBub2RlID0gbmV3IElJUkZpbHRlck5vZGUoLCB7
ImZlZWRiYWNrIjpbMSwwLjVdfSkgdGhyZXcgIlJlZmVyZW5jZUVycm9yIiBpbnN0ZWFkIG9mIEVj
bWFTY3JpcHQgZXJyb3IgVHlwZUVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKLUZBSUwgWCBub2RlID0gbmV3IElJUkZpbHRlck5vZGUoYywgeyJmZWVkZm9yd2FyZCI6
WzEsMC41XX0pIHRocmV3ICJSZWZlcmVuY2VFcnJvciIgaW5zdGVhZCBvZiBFY21hU2NyaXB0IGVy
cm9yIFR5cGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlM
IDwgW2NvbnN0cnVjdG9yIG9wdGlvbnNdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxl
ZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgbm9kZSA9IG5l
dyBJSVJGaWx0ZXJOb2RlKCwgeyJmZWVkYmFjayI6WzEsMC41XX0pIHRocmV3IFR5cGVFcnJvcjog
Ik1lbWJlciBJSVJGaWx0ZXJPcHRpb25zLmZlZWRmb3J3YXJkIGlzIHJlcXVpcmVkIGFuZCBtdXN0
IGJlIGFuIGluc3RhbmNlIG9mIHNlcXVlbmNlIi4gCitQQVNTICAgbm9kZSA9IG5ldyBJSVJGaWx0
ZXJOb2RlKGMsIHsiZmVlZGZvcndhcmQiOlsxLDAuNV19KSB0aHJldyBUeXBlRXJyb3I6ICJNZW1i
ZXIgSUlSRmlsdGVyT3B0aW9ucy5mZWVkYmFjayBpcyByZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBp
bnN0YW5jZSBvZiBzZXF1ZW5jZSIuIAorUEFTUyA8IFtjb25zdHJ1Y3RvciBvcHRpb25zXSBBbGwg
YXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFtmdW5jdGlv
bmFsaXR5XSAgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDMgb3V0IG9mIDYg
dGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
UEFTUyAgIE91dHB1dCBvZiBmaWx0ZXIgdXNpbmcgbmV3IElJUkZpbHRlciguLi4pIGlzIGlkZW50
aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4wNTc1NjQwMzUwNTgwMjE1NDUsMC4xNDM3MTkxOTYzMTk1
ODAwOCwwLjIxNTAwNjYzNDU5MzAwOTk1LDAuMjkyNzc2NTg0NjI1MjQ0MTQsMC4zNjU5Nzc3OTM5
MzE5NjEwNiwwLjQzOTc2NDIzMTQ0MzQwNTE1LDAuNTExMTkyNzM5MDA5ODU3MiwwLjU4MTM3NTU5
ODkwNzQ3MDcsMC42NDk0MDU4MzcwNTkwMjEsMC43MTUzOTQ0OTY5MTc3MjQ2LDAuNzc4OTU0NTY1
NTI1MDU0OSwwLjgzOTk1OTUwMjIyMDE1MzgsMC44OTgxNjQ2ODk1NDA4NjMsMC45NTMzOTg0MDY1
MDU1ODQ3LDEuMDA1NDY2Njk5NjAwMjE5Ny4uLl0uIAorUEFTUyA8IFtmdW5jdGlvbmFsaXR5XSBB
bGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElU
IFRBU0sgUlVOTkVSIEZJTklTSEVEOiA2IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1i
YXNpYy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNl
L2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQKaW5kZXggNDUzNGM4M2ZkNDVmOGQwY2UyMjY0
NjZhZDcxY2YyNjJlOWNmNTQ1Mi4uNWI5Mzc0Yjk5ZDIwNGQ2NGNmODdhNjE5OTM5Y2MzZTg2YmIx
NjMxZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9p
aXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVy
bm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dApAQCAtMiwzMyArMiw0
NCBAQAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcg
ImluaXRpYWxpemUiIAogUEFTUyBFeGVjdXRpbmcgImV4aXN0ZW5jZSIgCi1GQUlMIEV4ZWN1dGlu
ZyAicGFyYW1ldGVycyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFs
dWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihjb2VmLCBjb2VmKScsICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKK1BBU1MgRXhlY3V0aW5nICJwYXJh
bWV0ZXJzIiAKIFBBU1MgRXhlY3V0aW5nICJleGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlciIgCi1G
QUlMIEV4ZWN1dGluZyAiZXhjZXB0aW9ucy1nZXRGcmVxdWVuY3lEYXRhIiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyKGNvZWYsIGNvZWYpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRl
ZmluZWQpIgorUEFTUyBFeGVjdXRpbmcgImV4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YSIgCiBQ
QVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbaW5pdGlhbGl6ZV0gIAogUEFTUyAgIEluaXRpYWxp
emUgY29udGV4dCBmb3IgdGVzdGluZyBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNT
IDwgW2luaXRpYWxpemVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9u
cykgCiBQQVNTID4gW2V4aXN0ZW5jZV0gIAotRkFJTCBYIGNvbnRleHQuY3JlYXRlSUlSRmlsdGVy
IGRvZXMgbm90IGV4aXN0LiBHb3QgdW5kZWZpbmVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgPCBbZXhpc3RlbmNlXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNv
bnRleHQuY3JlYXRlSUlSRmlsdGVyIGRvZXMgZXhpc3QuIAorUEFTUyA8IFtleGlzdGVuY2VdIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3BhcmFt
ZXRlcnNdICAKK1BBU1MgICBudW1iZXJPZklucHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBu
dW1iZXJPZk91dHB1dHMgaXMgZXF1YWwgdG8gMS4gCitQQVNTICAgY2hhbm5lbENvdW50TW9kZSBp
cyBlcXVhbCB0byBtYXguIAorUEFTUyAgIGNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0
byBzcGVha2Vycy4gCitQQVNTIDwgW3BhcmFtZXRlcnNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4g
KHRvdGFsIDQgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVy
XSAgCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKCkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIoKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFT
UyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6
ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDEpKScsICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihudWxsLCBu
dWxsKSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBm
dW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihudWxsLCBudWxsKScsICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotRkFJTCBYIGNyZWF0ZUlJUkZp
bHRlcihbXSwgW10pIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJy
b3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJ
UkZpbHRlcihbMV0sIFtdKSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRl
ZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVh
dGVJSVJGaWx0ZXIoW10sIFsxXSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RTdXBw
b3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFgg
Y3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMjApLCBuZXcgRmxvYXQzMkFycmF5KDIw
KSkgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoZmIsIGZiKScs
ICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQz
MkFycmF5KDIxKSwgWzFdKSB0aHJldyAiVHlwZUVycm9yIiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRl
ZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVh
dGVJSVJGaWx0ZXIoWzFdLCBuZXcgRmxvYXQzMkFycmF5KDIxKSkgdGhyZXcgIlR5cGVFcnJvciIg
aW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJheSgy
KSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBJbnZhbGlkU3RhdGVFcnJvci4gYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKG5l
dyBGbG9hdDMyQXJyYXkoMTApLCBbMV0pIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgSW52
YWxpZFN0YXRlRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotUEFT
UyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCBOYU4sIEluZmluaXR5XSkgdGhyZXcgVHlwZUVy
cm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgSW5maW5pdHksIE5hTl0pJywgJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVy
KFsxLCBOYU4sIEluZmluaXR5XSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
cihbMSwgSW5maW5pdHksIE5hTl0sIFsxXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzEsICdhYmMnLCBbXV0sIFsx
XSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVu
Y3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzEsICdhYmMnLCBbXV0sIFsxXSkn
LCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLUZBSUwgPCBbZXhj
ZXB0aW9ucy1jcmVhdGVJSVJGaWx0ZXJdIDggb3V0IG9mIDE0IGFzc2VydGlvbnMgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNyZWF0ZUlJ
UkZpbHRlcigpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNT
ICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMSkpIHRocmV3IFR5cGVFcnJvcjog
Ik5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG51bGwsIG51
bGwpIHRocmV3IFR5cGVFcnJvcjogIlZhbHVlIGlzIG5vdCBhIHNlcXVlbmNlIi4gCitQQVNTICAg
Y3JlYXRlSUlSRmlsdGVyKFtdLCBbXSkgdGhyZXcgTm90U3VwcG9ydGVkRXJyb3I6ICJmZWVkZm9y
d2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAg
IGNyZWF0ZUlJUkZpbHRlcihbMV0sIFtdKSB0aHJldyBOb3RTdXBwb3J0ZWRFcnJvcjogImZlZWRi
YWNrIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAg
Y3JlYXRlSUlSRmlsdGVyKFtdLCBbMV0pIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGZv
cndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1Mg
ICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgyMCksIG5ldyBGbG9hdDMyQXJyYXko
MjApKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVy
KG5ldyBGbG9hdDMyQXJyYXkoMjEpLCBbMV0pIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVl
ZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BB
U1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBuZXcgRmxvYXQzMkFycmF5KDIxKSkgdGhyZXcgTm90
U3VwcG9ydGVkRXJyb3I6ICJmZWVkYmFjayBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2Vl
biAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIG5ldyBGbG9hdDMyQXJy
YXkoMikpIHRocmV3IEludmFsaWRTdGF0ZUVycm9yOiAiZmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sg
YXJyYXkgY2Fubm90IGJlIHplcm8iLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0
MzJBcnJheSgxMCksIFsxXSkgdGhyZXcgSW52YWxpZFN0YXRlRXJyb3I6ICJmZWVkZm9yd2FyZCBh
cnJheSBtdXN0IGNvbnRhaW4gYSBub24temVybyB2YWx1ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZp
bHRlcihbMV0sIFsxLCBOYU4sIEluZmluaXR5XSkgdGhyZXcgVHlwZUVycm9yOiAiVGhlIHByb3Zp
ZGVkIHZhbHVlIGlzIG5vbi1maW5pdGUiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzEsIE5h
TiwgSW5maW5pdHldLCBbMV0pIHRocmV3IFR5cGVFcnJvcjogIlRoZSBwcm92aWRlZCB2YWx1ZSBp
cyBub24tZmluaXRlIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCAnYWJjJywgW11dLCBb
MV0pIHRocmV3IFR5cGVFcnJvcjogIlRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4g
CitQQVNTIDwgW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVyXSBBbGwgYXNzZXJ0aW9ucyBwYXNz
ZWQuICh0b3RhbCAxNCBhc3NlcnRpb25zKSAKIFBBU1MgPiBbZXhjZXB0aW9ucy1nZXRGcmVxdWVu
Y3lEYXRhXSAgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDIgb3V0IG9mIDUg
dGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
UEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG51bGwsIG5ldyBGbG9hdDMyQXJyYXkoMSksIG5l
dyBGbG9hdDMyQXJyYXkoMSkpIHRocmV3IFR5cGVFcnJvcjogIkFyZ3VtZW50IDEgKCdmcmVxdWVu
Y3lIeicpIHRvIElJUkZpbHRlck5vZGUuZ2V0RnJlcXVlbmN5UmVzcG9uc2UgbXVzdCBiZSBhbiBp
bnN0YW5jZSBvZiBGbG9hdDMyQXJyYXkiLiAKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShu
ZXcgRmxvYXQzMkFycmF5KDEpLCBudWxsLCBuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBl
RXJyb3I6ICJBcmd1bWVudCAyICgnbWFnUmVzcG9uc2UnKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZy
ZXF1ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQ
QVNTICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2UobmV3IEZsb2F0MzJBcnJheSgxKSwgbmV3IEZsb2F0
MzJBcnJheSgxKSwgbnVsbCkgdGhyZXcgVHlwZUVycm9yOiAiQXJndW1lbnQgMyAoJ3BoYXNlUmVz
cG9uc2UnKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4g
aW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2Uo
bmV3IEZsb2F0MzJBcnJheSgxMCksIG5ldyBGbG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJy
YXkoMjApKSB0aHJldyBJbnZhbGlkQWNjZXNzRXJyb3I6ICJBcnJheXMgbXVzdCBoYXZlIHRoZSBz
YW1lIGxlbmd0aCIuIAorUEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJy
YXkoMTApLCBuZXcgRmxvYXQzMkFycmF5KDIwKSwgbmV3IEZsb2F0MzJBcnJheSgxKSkgdGhyZXcg
SW52YWxpZEFjY2Vzc0Vycm9yOiAiQXJyYXlzIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGgiLiAK
K1BBU1MgPCBbZXhjZXB0aW9ucy1nZXRGcmVxdWVuY3lEYXRhXSBBbGwgYXNzZXJ0aW9ucyBwYXNz
ZWQuICh0b3RhbCA1IGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklT
SEVEOiA1IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQK
aW5kZXggZGViZGI3ZTJlZTQ1OGI5YzIxNTlkZTY4N2ZlYTA5YWY3MzJjYzM3Zi4uYmVmYjNiYTVh
MWJiMzliMjgxNjU4MzU2OTJjYWEyYjk3NThhNWMxMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWV4cGVjdGVkLnR4
dApAQCAtMSw0MSArMSw3MCBAQAogCiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4g
Ci1GQUlMIEV4ZWN1dGluZyAiY29lZmZpY2llbnQtbm9ybWFsaXphdGlvbiIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBUeXBl
IGVycm9yIgotRkFJTCBFeGVjdXRpbmcgIm9uZS16ZXJvIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRl
SUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
KFswLjUsIDAuNV0sIFsxXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkiCi1GQUlMIEV4ZWN1dGluZyAib25lLXBvbGUiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzFd
LCBbMSwgY10pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJ
TCBFeGVjdXRpbmcgIjA6IGxvd3Bhc3MiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAg
ICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJd
KScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0
aW5nICIxOiBoaWdocGFzcyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAg
W2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjI6
IGJhbmRwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5i
MCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiMzogbm90Y2gi
IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5
cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIx
LCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICI0OiBhbGxwYXNzIiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5i
Ml0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNTogbG93c2hlbGYiIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEs
IGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZp
bmVkKSIKLUZBSUwgRXhlY3V0aW5nICI2OiBoaWdoc2hlbGYiIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYu
YTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIK
LUZBSUwgRXhlY3V0aW5nICI3OiBwZWFraW5nIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmls
dGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAg
ICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2Vm
LmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4
ZWN1dGluZyAibXVsdGktY2hhbm5lbCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihmZiwgZmIpJywg
J2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcg
IjR0aC1vcmRlci1paXIiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZh
bHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEg
ZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoY2FzY2FkZS5mZiwgY2FzY2Fk
ZS5mYiknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCitQQVNTIEV4
ZWN1dGluZyAiY29lZmZpY2llbnQtbm9ybWFsaXphdGlvbiIgCitQQVNTIEV4ZWN1dGluZyAib25l
LXplcm8iIAorUEFTUyBFeGVjdXRpbmcgIm9uZS1wb2xlIiAKK1BBU1MgRXhlY3V0aW5nICIwOiBs
b3dwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICIxOiBoaWdocGFzcyIgCitQQVNTIEV4ZWN1dGluZyAi
MjogYmFuZHBhc3MiIAorUEFTUyBFeGVjdXRpbmcgIjM6IG5vdGNoIiAKK1BBU1MgRXhlY3V0aW5n
ICI0OiBhbGxwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICI1OiBsb3dzaGVsZiIgCitQQVNTIEV4ZWN1
dGluZyAiNjogaGlnaHNoZWxmIiAKK1BBU1MgRXhlY3V0aW5nICI3OiBwZWFraW5nIiAKK1BBU1Mg
RXhlY3V0aW5nICJtdWx0aS1jaGFubmVsIiAKK1BBU1MgRXhlY3V0aW5nICI0dGgtb3JkZXItaWly
IiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtjb2VmZmljaWVudC1ub3JtYWxpemF0aW9u
XSAgCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyIHdpdGggbm9ybWFsaXplZCBjb2VmZmljaWVudHMg
aW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoZmYsIGZiMSknLCAn
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIgd2l0aCB1bm5vcm1h
bGl6ZWQgY29lZmZpY2llbnRzIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlS
RmlsdGVyKGZmLCBmYjIpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQp
Ii4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgY3JlYXRlSUlS
RmlsdGVyIHdpdGggbm9ybWFsaXplZCBjb2VmZmljaWVudHMgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlciB3aXRoIHVubm9ybWFsaXplZCBjb2VmZmlj
aWVudHMgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIE91dHB1dCBvZiBJSVIg
ZmlsdGVyIHdpdGggdW5ub3JtYWxpemVkIGNvZWZmaWNpZW50cyBlcXVhbHMgWzEsLTAuODk5OTk5
OTc2MTU4MTQyMSwwLjgxMDAwMDAwMjM4NDE4NTgsLTAuNzI4OTk5OTcyMzQzNDQ0OCwwLjY1NjA5
OTk3NTEwOTEwMDMsLTAuNTkwNDg5OTgzNTU4NjU0OCwwLjUzMTQ0MDk3MzI4MTg2MDQsLTAuNDc4
Mjk2OTA1NzU1OTk2NywwLjQzMDQ2NzIxODE2MDYyOTMsLTAuMzg3NDIwNDc1NDgyOTQwNywwLjM0
ODY3ODQzOTg1NTU3NTU2LC0wLjMxMzgxMDU4NjkyOTMyMTMsMC4yODI0Mjk1NDYxMTc3ODI2LC0w
LjI1NDE4NjU3MDY0NDM3ODY2LDAuMjI4NzY3OTMxNDYxMzM0MjMsLTAuMjA1ODkxMTMyMzU0NzM2
MzMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjoyLjE5NThlLTM4LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFtjb2VmZmlj
aWVudC1ub3JtYWxpemF0aW9uXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2Vy
dGlvbnMpIAogUEFTUyA+IFtvbmUtemVyb10gIAorUEFTUyAgIElJUiAxLXplcm8gb3V0cHV0IGVx
dWFscyBbMC41LDAuNSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uIAorUEFTUyA8IFtvbmUtemVyb10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbb25lLXBvbGVdICAKK1BBU1MgICBJSVIgMS1w
b2xlIG91dHB1dCBlcXVhbHMgWzEsLTAuOSwwLjgxLC0wLjcyOTAwMDAwMDAwMDAwMDEsMC42NTYx
MDAwMDAwMDAwMDAxLC0wLjU5MDQ5MDAwMDAwMDAwMDIsMC41MzE0NDEwMDAwMDAwMDAyLC0wLjQ3
ODI5NjkwMDAwMDAwMDE0LDAuNDMwNDY3MjEwMDAwMDAwMTYsLTAuMzg3NDIwNDg5MDAwMDAwMTUs
MC4zNDg2Nzg0NDAxMDAwMDAxNSwtMC4zMTM4MTA1OTYwOTAwMDAxNywwLjI4MjQyOTUzNjQ4MTAw
MDE3LC0wLjI1NDE4NjU4MjgzMjkwMDEzLDAuMjI4NzY3OTI0NTQ5NjEwMTIsLTAuMjA1ODkxMTMy
MDk0NjQ5MS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVU
aHJlc2hvbGQiOjIuNzY1N2UtOCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbb25l
LXBvbGVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gWzA6IGxvd3Bhc3NdICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBsb3dwYXNzIGVx
dWFscyBbMC4wMDIwNjc2MjI0OTU4MTUxNTgsMC4wMTAyNjIwMzg1NTg3MjE1NDIsMC4wMjY0MDgz
NDQ1MDcyMTc0MDcsMC4wNTAxNDYxOTYwMzc1MzA5LDAuMDgxMDYyNzM0MTI3MDQ0NjgsMC4xMTg2
OTc1MTY2MjAxNTkxNSwwLjE2MjU0NzY0Nzk1MzAzMzQ1LDAuMjEyMDczMjA2OTAxNTUwMywwLjI2
NjcwMjY4MTc3OTg2MTQ1LDAuMzI1ODM4NzQ0NjQwMzUwMzQsMC4zODg4NjM3MTI1NDkyMDk2LDAu
NDU1MTQ1NDE4NjQzOTUxNCwwLjUyNDA0Mjg0NDc3MjMzODksMC41OTQ5MTE0NTYxMDgwOTMzLDAu
NjY3MTA5MDcyMjA4NDA0NSwwLjc0MDAwMDU0NTk3ODU0NjEuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MC4wMDAwNDk4MzR9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGxv
d3Bhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDkxLjIyMS4gCitQQVNTIDwgWzA6IGxv
d3Bhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gWzE6IGhpZ2hwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgaGlnaHBhc3Mg
ZXF1YWxzIFswLjk4MzY3MTAwOTU0MDU1NzksMC45NDc0Nzg2NTIwMDA0MjcyLDAuOTA0NDgyNDI0
MjU5MTg1OCwwLjg1NTIzMjExOTU2MDI0MTcsMC44MDAzMTMyOTM5MzM4Njg0LDAuNzQwMzQxOTYx
MzgzODE5NiwwLjY3NTk1ODIxNjE5MDMzODEsMC42MDc4MjAzMzIwNTAzMjM1LDAuNTM2NTk4OTIw
ODIyMTQzNiwwLjQ2Mjk3MTAzMTY2NTgwMiwwLjM4NzYxNDIyMDM4MDc4MzEsMC4zMTEyMDEwMDYx
NzQwODc1LDAuMjM0MzkzNTM3MDQ0NTI1MTUsMC4xNTc4MzgyNzAwNjgxNjg2NCwwLjA4MjE2MTE2
NTc3Mzg2ODU2LDAuMDA3OTYzMDU2Njc2MDg5NzY0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0
b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDI5LCJyZWxhdGl2ZVRocmVz
aG9sZCI6MC4wMDAwM30uIAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgaGln
aHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEwNS40NTkuIAorUEFTUyA8IFsxOiBo
aWdocGFzc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbMjogYmFuZHBhc3NdICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBiYW5kcGFz
cyBlcXVhbHMgWzAuMDA0NTU0MjQ0Njg5NjQzMzgzLDAuMDEzNTgzMjE1ODg0ODY0MzMsMC4wMjI0
MTY1MDAzNzQ2NzQ3OTcsMC4wMzA5ODIxMDUwNjE0MTE4NTgsMC4wMzkyMTA5MzA0NjY2NTE5MTcs
MC4wNDcwMzczMTQ2MjM1OTQyODQsMC4wNTQzOTk1NjExMzY5NjA5OCwwLjA2MTI0MDQwODU2OTU3
NDM1NiwwLjA2NzUwNzQ2ODE2Mzk2NzEzLDAuMDczMTUzNjI5ODk5MDI0OTYsMC4wNzgxMzczODI4
NjQ5NTIwOSwwLjA4MjQyMzE1MDUzOTM5ODIsMC4wODU5ODE0ODA3NzcyNjM2NCwwLjA4ODc4OTI5
OTEzMDQzOTc2LDAuMDkwODI5OTY4NDUyNDUzNjEsMC4wOTIwOTM0NTI4MTEyNDExNS4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjJlLTcs
InJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDg3fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIg
Zm9yIEJpcXVhZCBiYW5kcGFzcyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTA0LjA2LiAK
K1BBU1MgPCBbMjogYmFuZHBhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gWzM6IG5vdGNoXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1
YWQgbm90Y2ggZXF1YWxzIFswLjk5NTQ0NTcyODMwMjAwMiwwLjk4NjQxNjc1NzEwNjc4MSwwLjk3
NzU4MzUyNzU2NTAwMjQsMC45NjkwMTc5MjI4NzgyNjU0LDAuOTYwNzg5MDg0NDM0NTA5MywwLjk1
Mjk2MjY5NjU1MjI3NjYsMC45NDU2MDA0NTAwMzg5MDk5LDAuOTM4NzU5NTY1MzUzMzkzNiwwLjkz
MjQ5MjU1NDE4Nzc3NDcsMC45MjY4NDYzODUwMDIxMzYyLDAuOTIxODYyNjAyMjMzODg2NywwLjkx
NzU3Njg0OTQ2MDYwMTgsMC45MTQwMTg1MTE3NzIxNTU4LDAuOTExMjEwNzE1NzcwNzIxNCwwLjkw
OTE3MDAzMTU0NzU0NjQsMC45MDc5MDY1MzIyODc1OTc3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQi
OjAuMDAwMDQyMn0uIAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgbm90Y2gg
aXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDkxLjMxMi4gCitQQVNTIDwgWzM6IG5vdGNoXSBB
bGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFs0OiBh
bGxwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgYWxscGFzcyBlcXVhbHMgWzAu
OTkwODkxNTE2MjA4NjQ4NywwLjk3MjgzMzU3MzgxODIwNjgsMC45NTUxNjY5OTU1MjUzNjAxLDAu
OTM4MDM1Nzg2MTUxODg2LDAuOTIxNTc4MTY4ODY5MDE4NiwwLjkwNTkyNTM5MzEwNDU1MzIsMC44
OTEyMDA5MDAwNzc4MTk4LDAuODc3NTE5MTkwMzExNDMxOSwwLjg2NDk4NTA0ODc3MDkwNDUsMC44
NTM2OTI3NzAwMDQyNzI1LDAuODQzNzI1MjA0NDY3NzczNCwwLjgzNTE1MzY5ODkyMTIwMzYsMC44
MjgwMzcwMjM1NDQzMTE1LDAuODIyNDIxNDMxNTQxNDQyOSwwLjgxODM0MDA2MzA5NTA5MjgsMC44
MTU4MTMxMjQxNzk4NDAxLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDQzMX0uIAorUEFT
UyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgYWxscGFzcyBpcyBncmVhdGVyIHRoYW4g
b3IgZXF1YWwgdG8gOTEuMzE5LiAKK1BBU1MgPCBbNDogYWxscGFzc10gQWxsIGFzc2VydGlvbnMg
cGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNTogbG93c2hlbGZdICAKK1BB
U1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBsb3dzaGVsZiBlcXVhbHMgWzEuMDM4NDgwMjgxODI5
ODM0LDEuMTE2NTcyMjYwODU2NjI4NCwxLjE5NjY0NDA2Nzc2NDI4MjIsMS4yNzgxNTE1MTIxNDU5
OTYsMS4zNjA1OTQ2MzAyNDEzOTQsMS40NDM1MTU0MTk5NjAwMjIsMS41MjY0OTYxNzE5NTEyOTQs
MS42MDkxNTc2ODE0NjUxNDksMS42OTExNTcxMDI1ODQ4Mzg5LDEuNzcyMTg2NjM2OTI0NzQzNywx
Ljg1MTk3MDkxMTAyNjAwMSwxLjkzMDI2NjI2MTEwMDc2OSwyLjAwNjg1Nzg3MjAwOTI3NzMsMi4w
ODE1NTg0NjU5NTc2NDE2LDIuMTU0MjA2OTkxMTk1Njc4NywyLjIyNDY2NjExODYyMTgyNi4uLl0g
d2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAs
InJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAyOTh9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRl
ciBmb3IgQmlxdWFkIGxvd3NoZWxmIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MC42MDku
IAorUEFTUyA8IFs1OiBsb3dzaGVsZl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBh
c3NlcnRpb25zKSAKIFBBU1MgPiBbNjogaGlnaHNoZWxmXSAgCitQQVNTICAgSUlSRmlsdGVyIGZv
ciBCaXF1YWQgaGlnaHNoZWxmIGVxdWFscyBbMy4wNDUxMDE0MDQxOTAwNjM1LDIuODE2MTE0NjY0
MDc3NzU5LDIuNTk4NTQyNDUxODU4NTIwNSwyLjM5MzU1Nzc4Njk0MTUyODMsMi4yMDE5NzUzNDU2
MTE1NzIzLDIuMDI0Mjk2OTk4OTc3NjYxLDEuODYwNzUzNzc0NjQyOTQ0MywxLjcxMTM0NjYyNjI4
MTczODMsMS41NzU4ODIzMTU2MzU2ODEyLDEuNDU0MDA3MDI5NTMzMzg2MiwxLjM0NTIzNjg5NzQ2
ODU2NywxLjI0ODk4NDgxMzY5MDE4NTUsMS4xNjQ1ODUzNTE5NDM5Njk3LDEuMDkxMzE1NzQ2MzA3
MzczLDEuMDI4NDE1Njc5OTMxNjQwNiwwLjk3NTEwMjk2MTA2MzM4NS4uLl0gd2l0aCBhbiBlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhy
ZXNob2xkIjowLjAwMDAxMjR9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFk
IGhpZ2hzaGVsZiBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTAzLjE1OS4gCitQQVNTIDwg
WzY6IGhpZ2hzaGVsZl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25z
KSAKIFBBU1MgPiBbNzogcGVha2luZ10gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIHBl
YWtpbmcgZXF1YWxzIFsxLjAwNTU0ODcxNTU5MTQzMDcsMS4wMTY1NzEyODMzNDA0NTQsMS4wMjcz
OTg1ODYyNzMxOTM0LDEuMDM3OTQxMDk4MjEzMTk1OCwxLjA0ODExMTkxNTU4ODM3OSwxLjA1Nzgy
Nzk0OTUyMzkyNTgsMS4wNjcwMTAxNjQyNjA4NjQzLDEuMDc1NTg0NDExNjIxMDkzOCwxLjA4MzQ4
MjE0NjI2MzEyMjYsMS4wOTA2NDA3ODMzMDk5MzY1LDEuMDk3MDA0MDU1OTc2ODY3NywxLjEwMjUy
Mjk2OTI0NTkxMDYsMS4xMDcxNTU0NDIyMzc4NTQsMS4xMTA4Njc1MDAzMDUxNzU4LDEuMTEzNjMy
Njc4OTg1NTk1NywxLjExNTQzMjczOTI1NzgxMjUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4w
MDAwNTA1fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBwZWFraW5nIGlz
IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS41MDQuIAorUEFTUyA8IFs3OiBwZWFraW5nXSBB
bGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFttdWx0
aS1jaGFubmVsXSAgCitQQVNTICAgTWF4IGRpZmZlcmVuY2UgYmV0d2VlbiBJSVIgYW5kIEJpcXVh
ZCBvbiBjaGFubmVsIDAgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDAuMDAwMDM3NjcxLiAKK1BB
U1MgICBNYXggZGlmZmVyZW5jZSBiZXR3ZWVuIElJUiBhbmQgQmlxdWFkIG9uIGNoYW5uZWwgMSBp
cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMC4wMDAwMzAwNzEuIAorUEFTUyAgIE1heCBkaWZmZXJl
bmNlIGJldHdlZW4gSUlSIGFuZCBCaXF1YWQgb24gY2hhbm5lbCAyIGlzIGxlc3MgdGhhbiBvciBl
cXVhbCB0byAwLjAwMDAyNjI0MS4gCitQQVNTIDwgW211bHRpLWNoYW5uZWxdIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDMgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzR0aC1vcmRlci1paXJd
ICAKLUZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMTMgdGFza3Mg
d2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAg
IDQtdGggb3JkZXIgSUlSRmlsdGVyIChiaXF1YWQgcmVmKSBlcXVhbHMgWzAuMDAwMDA0MTgxNzE5
MzA1MDUxOTU2LDAuMDAwMDMyOTY1Nzk1OTgwOTk5MjQ2LDAuMDAwMTI5Mzk3NjgyMDMwNjg1MjUs
MC4wMDAzNDc3MzY1ODI2MjU2NTczLDAuMDAwNzM4NzI3Mjc4MDc2MTEyMywwLjAwMTM0NDY4OTc1
MDExMjU5MzIsMC4wMDIxOTkzNzYyMzQ3ODQ3MjIzLDAuMDAzMzI3OTU1OTU3NTAyMTI2NywwLjAw
NDc0NzExNjkzODIzMzM3NTUsMC4wMDY0NjUyODE4MjU1MTI2NDgsMC4wMDg0ODI5MjI3OTk4ODUy
NzMsMC4wMTA3OTI5NzA2NTczNDg2MzMsMC4wMTMzODEzMDMyODgwNDI1NDUsMC4wMTYyMjczMTIz
ODYwMzU5MiwwLjAxOTMwNDUxOTUxOTIwOTg2MiwwLjAyMjU4MTI1MTMzODEyNDI3NS4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNTll
LTcsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAyMTF9LiAKK1BBU1MgICBTTlIgb2YgNC10aCBv
cmRlciBJSVJGaWx0ZXIgKGJpcXVhZCByZWYpIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAx
MDguOTQ3LiAKK1BBU1MgPCBbNHRoLW9yZGVyLWlpcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgMiBhc3NlcnRpb25zKSAKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDog
MTMgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
aWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmls
dGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dAppbmRleCBjMWMxNmI0NTZiNzQz
ZWM2N2RiZDZhZDBkY2IyNDNkNzdlNGFlMmNhLi44M2M0ZDg0YjU1OTM1ZWEyNmM4MzkxMTRiZWM5
Y2YxMGE2M2U2NWUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50
ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVl
bmN5UmVzcG9uc2UtZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDIyIEBACiAKIFBBU1MgIyBBVURJ
VCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKLUZBSUwgRXhlY3V0aW5nICIxLXBvbGUgSUlSIiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEsIC0wLjldKScsICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICJjb21wYXJlIElJUiBhbmQgYmlx
dWFkIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYu
YjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlS
RmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgImdldEZyZXF1ZW5jeVJlc3Bv
bnNlIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKK1BB
U1MgRXhlY3V0aW5nICIxLXBvbGUgSUlSIiAKK1BBU1MgRXhlY3V0aW5nICJjb21wYXJlIElJUiBh
bmQgYmlxdWFkIiAKK1BBU1MgRXhlY3V0aW5nICJnZXRGcmVxdWVuY3lSZXNwb25zZSIgCiBQQVNT
IEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbMS1wb2xlIElJUl0gIAorUEFTUyAgIDEtcG9sZSBJSVIg
TWFnbml0dWRlIFJlc3BvbnNlIGVxdWFscyBbMTAsOS45OTU1NjE1OTk3MzE0NDUsOS45ODIyODE2
ODQ4NzU0ODgsOS45NjAyNjYxMTMyODEyNSw5LjkyOTY4ODQ1MzY3NDMxNiw5Ljg5MDc4NTIxNzI4
NTE1Niw5Ljg0Mzg1MjA0MzE1MTg1NSw5Ljc4OTIzODkyOTc0ODUzNSw5LjcyNzM0MTY1MTkxNjUw
NCw5LjY1ODU5MjIyNDEyMTA5NCw5LjU4MzQ1NTA4NTc1NDM5NSw5LjUwMjQxODUxODA2NjQwNiw5
LjQxNTk4MzIwMDA3MzI0Miw5LjMyNDY1OTM0NzUzNDE4LDkuMjI4OTU4MTI5ODgyODEyLDkuMTI5
Mzg0MDQwODMyNTIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29s
dXRlVGhyZXNob2xkIjowLjAwMDAwMjg2MTEsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNT
ICAgMS1wb2xlIElJUiBQaGFzZSBSZXNwb25zZSBlcXVhbHMgWzAsLTAuMDI4MjY1NTAyMzAzODM4
NzMsLTAuMDU2NDc4MTI0MTExODkwNzksLTAuMDg0NTg1NTQ3NDQ3MjA0NTksLTAuMTEyNTM2NTU3
MDE4NzU2ODcsLTAuMTQwMjgxNTcyOTM3OTY1NCwtMC4xNjc3NzMwOTc3NTM1MjQ3OCwtMC4xOTQ5
NjYxNjcyMTE1MzI2LC0wLjIyMTgxODY4NTUzMTYxNjIsLTAuMjQ4MjkxNzc1NTg0MjIwOSwtMC4y
NzQzNDk5NTc3MDQ1NDQwNywtMC4yOTk5NjEyMzkwOTk1MDI1NiwtMC4zMjUwOTc0NDE2NzMyNzg4
LC0wLjM0OTczMzg4OTEwMjkzNTgsLTAuMzczODQ5NzE5NzYyODAyMSwtMC4zOTc0Mjc0Njk0OTE5
NTg2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MS43ODgyZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFsxLXBvbGUg
SUlSXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+
IFtjb21wYXJlIElJUiBhbmQgYmlxdWFkXSAgCitQQVNTICAgSUlSIE1hZ25pdHVkZSBSZXNwb25z
ZSBlcXVhbHMgWzEsMS4wMDI4MzQ1NTg0ODY5Mzg1LDEuMDExMzQ3ODg5OTAwMjA3NSwxLjAyNTU1
NDg5NTQwMTAwMSwxLjA0NTQyODI3NjA2MjAxMTcsMS4wNzA4MDUzMTEyMDMwMDMsMS4xMDEyMjU0
OTUzMzg0NCwxLjEzNTY3MTk3MzIyODQ1NDYsMS4xNzIxOTUwNzY5NDI0NDM4LDEuMjA3NDU0MzIz
NzY4NjE1NywxLjIzNjM1NjM3NzYwMTYyMzUsMS4yNTIyMDk3ODI2MDA0MDI4LDEuMjQ3OTYyMjM2
NDA0NDE5LDEuMjE4NjQ0NjE4OTg4MDM3LDEuMTYzOTA1ODU4OTkzNTMwMywxLjA4ODY2NDg4OTMz
NTYzMjMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjowLjAwMDAyNzQxOSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBJSVIg
UGhhc2UgUmVzcG9uc2UgZXF1YWxzIFswLC0wLjA2MTMxNTMyNDE1NzQ3NjQyNSwtMC4xMjM5MTEz
NzMzMTcyNDE2NywtMC4xODkxMjIyNDQ3MTU2OTA2LC0wLjI1ODM4NjkzOTc2NDAyMjgsLTAuMzMz
MjkzNzk1NTg1NjMyMywtMC40MTU2MDcwNjQ5NjIzODcxLC0wLjUwNzI1MDI0OTM4NTgzMzcsLTAu
NjEwMjAyNTUwODg4MDYxNSwtMC43MjYyNDAwMzg4NzE3NjUxLC0wLjg1NjQ0OTE4NjgwMTkxMDQs
LTEuMDAwNTA2MTYyNjQzNDMyNiwtMS4xNTU5MjczMDA0NTMxODYsLTEuMzE3NzgwOTcxNTI3MDk5
NiwtMS40NzkzODk1NDgzMDE2OTY4LC0xLjYzMzk1OTc3MDIwMjYzNjcuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzY1Nywi
cmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbY29tcGFyZSBJSVIgYW5kIGJpcXVhZF0g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbZ2V0
RnJlcXVlbmN5UmVzcG9uc2VdIFRlc3Qgb3V0LW9mLWJvdW5kcyBmcmVxdWVuY3kgdmFsdWVzIAor
UEFTUyAgIE1hZ25pdHVkZSByZXNwb25zZSBhdCBmcmVxdWVuY3kgLTEgaXMgTmFOLiAKK1BBU1Mg
ICBNYWduaXR1ZGUgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IDI0MDAxIGlzIE5hTi4gCitQQVNTICAg
UGhhc2UgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IC0xIGlzIE5hTi4gCitQQVNTICAgUGhhc2UgcmVz
cG9uc2UgYXQgZnJlcXVlbmN5IDI0MDAxIGlzIE5hTi4gCitQQVNTIDwgW2dldEZyZXF1ZW5jeVJl
c3BvbnNlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFT
UyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAzIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHku
IAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rl
c3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5v
ZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50eHQKaW5kZXggYmY2ZGZj
Zjg2YWZjZmE1MWZlYWFiMDVhZjBiZjAwZTE2OWExODgwMi4uMTJlNzE3MDIxMDJkN2NjNTNhMWQ2
MjRkMjFjZjVkYTY2YTg0MTZkYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJu
b2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvdGVzdC1paXJmaWx0ZXJub2RlLWV4cGVj
dGVkLnR4dApAQCAtMSwyMiArMSwxMCBAQAogCiBQQVNTIElJUkZpbHRlck5vZGUgY29lZmZpY2ll
bnRzIGFyZSBjaGVja2VkIHByb3Blcmx5IAotRkFJTCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMg
Y2FuIG5vdCBiZSBlbXB0eSBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgp
IHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJl
dyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0
ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRl
ZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5
Ci1GQUlMIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIGVtcHR5IGFzc2VydF90aHJv
d3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0
ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVh
dGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFy
ZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBu
b3QgYSBET01FeGNlcHRpb24gTm90U3VwcG9ydGVkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBl
cXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDkKLUZBSUwgbW9yZSB0aGFuIDIwIGZlZWRmb3J3
YXJkIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIHVzZWQgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0
aW9uICJmdW5jdGlvbiAoKSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcy
KQotICAgICAgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBp
cyBub3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAn
YWMuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2Vw
dGlvbiBOb3RTdXBwb3J0ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVm
aW5lZCwgZXhwZWN0ZWQgOQotRkFJTCBtb3JlIHRoYW4gMjAgZmVlZGJhY2sgY29lZmZpY2llbnRz
IGNhbiBub3QgYmUgdXNlZCBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgp
IHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJl
dyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0
ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRl
ZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5
Ci1GQUlMIGF0IGxlYXN0IG9uZSBmZWVkZm9yd2FyZCBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16
ZXJvIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBh
Yy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlw
ZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3Jl
YXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZp
bmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3I6IHByb3Bl
cnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDExCi1GQUlMIHRoZSBm
aXJzdCBmZWVkYmFjayBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIGFzc2VydF90aHJvd3Nf
ZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIo
YXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJ
SVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEs
IGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3Qg
YSBET01FeGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVh
bCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDExCi1GQUlMIElJUkZpbHRlck5vZGUgZ2V0RnJlcXVl
bmN5UmVzcG9uc2UgaGFuZGxlcyBpbnZhbGlkIGZyZXF1ZW5jaWVzIHByb3Blcmx5IGFjLmNyZWF0
ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoWzAu
NSwgMC41XSwgWzEuMF0pJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKQorUEFT
UyBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0eSAKK1BBU1MgZmVlZGJh
Y2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgZW1wdHkgCitQQVNTIG1vcmUgdGhhbiAyMCBmZWVk
Zm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSB1c2VkIAorUEFTUyBtb3JlIHRoYW4gMjAg
ZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgdXNlZCAKK1BBU1MgYXQgbGVhc3Qgb25l
IGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50IG11c3QgYmUgbm9uLXplcm8gCitQQVNTIHRoZSBmaXJz
dCBmZWVkYmFjayBjb2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIAorUEFTUyBJSVJGaWx0ZXJO
b2RlIGdldEZyZXF1ZW5jeVJlc3BvbnNlIGhhbmRsZXMgaW52YWxpZCBmcmVxdWVuY2llcyBwcm9w
ZXJseSAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407311</attachid>
            <date>2020-08-26 10:52:11 -0700</date>
            <delta_ts>2020-08-26 11:43:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200826105211.patch</filename>
            <type>text/plain</type>
            <size>126402</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uYjk4MzkyNzc4YzZjMWZiZjJjY2MxZGRjNzVmZjYw
MjIzM2Q5MTg5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTA4LTI1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgorICAg
ICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQorCisg
ICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJpbmcp
OgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNzYXJ5
KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpC
YXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BLZXJu
ZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQS2Vy
bmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9u
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFibGUp
OgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlByb2Nl
c3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9h
dWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRlUG9s
eW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZp
bHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1ZW5j
eVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgorICAg
ICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5pdGlh
bGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRpYWxp
emF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJkNGY4YmU3NmQ1MzFkMDMyNjNjMTYwMjY0
MjYzOGU4YWYxMzNhNTkuLjI5ZjExN2ZjOWVjOWU5YWUwOTk2Y2JlMmMyNzA2YzQ4M2NjZWRkMzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00ODgsNiArNDg4LDggQEAgc2V0KFdlYkNvcmVfTk9O
X1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck9w
dGlvbnMuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICAgICBNb2R1bGVz
L3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbAorICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVy
Tm9kZS5pZGwKKyAgICBNb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMjU0MmVm
MWM1Y2FhOGQ3MGY4MTAzNzRiMmIwYzJhOWI3YTAwOTU4Mi4uMjVkYzcwYzEwMGZmZmFjNGQyZjgy
NjI5NWQyNWM1NjhiNTA4YzU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0zMzksNiArMzM5LDggQEAgJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbAogJChQUk9KRUNU
X0RJUikvTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVs
ZXMvd2ViYXVkaW8vR2Fpbk9wdGlvbnMuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVk
aW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAyNzkx
ZTRkMTk5YzM1MmMxOGY0NTI0NzEwMDAxOWE4MGFjNTE3MmE4Li5hNTYwMDM0MzNkOTU1NjE2MTMw
ODJhNDliMjMxYmYwY2YzZTkyNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtOTgyLDYgKzk4MiwxMCBAQCAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lEQlRyYW5zYWN0aW9uTW9kZS5jcHAK
ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJhbnNh
Y3Rpb25Nb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaAorJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2RlLmNwcAorJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2Rl
LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSUlSRmls
dGVyT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSUlSRmlsdGVyT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0lkbGVEZWFkbGluZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZURlYWRsaW5lLmgKICQoQlVJTFRfUFJPRFVDVFNf
RElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJhMTA3OTI1MzRiYjNmMmQ1N2U2MjIxMWQ2
MDMxNjYzN2Y2ZTY5MmQuLmUyZmI4YTkyNTU4NGYzMTAyZmRhY2I0NDdkMmU3NDNmM2ZkNTQzOWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDIwLDYgKzQyMCw4IEBAIEpTX0JJ
TkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3ND
b21wcmVzc29yT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9H
YWluTm9kZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9HYWluT3B0aW9u
cy5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmlk
bCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRs
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3Vy
Y2VOb2RlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVu
dEF1ZGlvU291cmNlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRp
by9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKaW5kZXggNDFkZDEzZGVhN2U3Y2E3NDc0
NmI2NjQ1OThkMDNkMDBkYjQxZjVhOS4uYmIyYWU5MGU0ZGIyYTcwYzU1ZDc0MDM0N2I5MGY0MGQ3
NjFhZjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Ob2Rl
LmNwcApAQCAtOTQsNyArOTQsOCBAQCBTdHJpbmcgY29udmVydEVudW1lcmF0aW9uVG9TdHJpbmco
QXVkaW9Ob2RlOjpOb2RlVHlwZSBlbnVtZXJhdGlvblZhbHVlKQogICAgIHN0YXRpY19hc3NlcnQo
c3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlQmFzaWNJbnNwZWN0b3IpID09
IDE4LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUJhc2ljSW5zcGVjdG9yIGlzIG5vdCAxOCBhcyBleHBl
Y3RlZCIpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6
Ok5vZGVUeXBlQ29uc3RhbnQpID09IDE5LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCBpcyBub3Qg
MTkgYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4o
QXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbykgPT0gMjAsICJBdWRpb05vZGU6Ok5vZGVUeXBlU3Rl
cmVvIGlzIG5vdCAyMCBhcyBleHBlY3RlZCIpOwotICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nh
c3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlRW5kKSA9PSAyMSwgIkF1ZGlvTm9kZTo6Tm9k
ZVR5cGVDb25zdGFudCBpcyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNzZXJ0
KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlcikgPT0gMjEs
ICJBdWRpb05vZGU6Ok5vZGVUeXBlSUlSRmlsdGVyIGlzIG5vdCAyMSBhcyBleHBlY3RlZCIpOwor
ICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBl
RW5kKSA9PSAyMiwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjIgYXMgZXhw
ZWN0ZWQiKTsKIAogICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9uVmFs
dWUpIDwgV1RGX0FSUkFZX0xFTkdUSCh2YWx1ZXMpKTsKICAgICAKQEAgLTU1Myw3ICs1NTQsNyBA
QCB2b2lkIEF1ZGlvTm9kZTo6ZGlzYWJsZU91dHB1dHNJZk5lY2Vzc2FyeSgpCiAgICAgICAgIC8v
IGxvbmdlciBhbnkgYWN0aXZlIGNvbm5lY3Rpb25zLgogICAgICAgICAvLyBBbHNvLCBXYXZlU2hh
cGVyTm9kZSBtYXkgcHJvZHVjZSBub24tc2lsZW5jZSBldmVuIHdoZW4gaXQgbm8gbG9uZ2VyIGhh
cyBhbnkgb3V0cHV0LiBGb3IgdGhpcyByZWFzb24sIHdlIGNhbm5vdAogICAgICAgICAvLyBkaXNh
YmxlIGl0IGVpdGhlci4KLSAgICAgICAgaWYgKG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVDb252b2x2
ZXIgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZURlbGF5ICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5
cGVXYXZlU2hhcGVyKSB7CisgICAgICAgIGlmIChub2RlVHlwZSgpICE9IE5vZGVUeXBlQ29udm9s
dmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxheSAmJiBub2RlVHlwZSgpICE9IE5vZGVU
eXBlV2F2ZVNoYXBlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlSUlSRmlsdGVyKSB7CiAgICAg
ICAgICAgICBtX2lzRGlzYWJsZWQgPSB0cnVlOwogICAgICAgICAgICAgZm9yIChhdXRvJiBvdXRw
dXQgOiBtX291dHB1dHMpCiAgICAgICAgICAgICAgICAgb3V0cHV0LT5kaXNhYmxlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAppbmRleCA3MWJjYmRjNWM2
NGNiYTE1MWE4YzdlYzU1YWFjM2Q4ZDExYWVjN2M3Li5mOTY1ZWEwNTJkZDk5OTYxN2EwMzYwYjM3
ZGI5ZmE0OWZjYjBmYzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0F1ZGlvTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVk
aW9Ob2RlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBOb2RlVHlwZUJhc2lj
SW5zcGVjdG9yLAogICAgICAgICBOb2RlVHlwZUNvbnN0YW50LAogICAgICAgICBOb2RlVHlwZVN0
ZXJlbywKKyAgICAgICAgTm9kZVR5cGVJSVJGaWx0ZXIsCiAgICAgICAgIE5vZGVUeXBlRW5kCiAg
ICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNl
QXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1
ZGlvQ29udGV4dC5jcHAKaW5kZXggODI1NDRjNmE2NGMyOWUzZDk0NTE2YTMzZjdmNzQzMWI4MWRl
ZWVlYi4uMjNlNzZkOGYxNTE0YWJlMDg1M2Y3Y2Y1MzE4N2JhY2I0ZTcxMzg2MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3Bw
CkBAIC02MCw2ICs2MCw4IEBACiAjaW5jbHVkZSAiR2VuZXJpY0V2ZW50UXVldWUuaCIKICNpbmNs
dWRlICJIUlRGRGF0YWJhc2VMb2FkZXIuaCIKICNpbmNsdWRlICJIUlRGUGFubmVyLmgiCisjaW5j
bHVkZSAiSUlSRmlsdGVyTm9kZS5oIgorI2luY2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIKICNp
bmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQu
aCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC02MzAsNiArNjMyLDE3IEBAIEV4Y2VwdGlvbk9y
PFJlZjxTdGVyZW9QYW5uZXJOb2RlPj4gQmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlU3RlcmVvUGFu
bmVyKCkKICAgICByZXR1cm4gU3RlcmVvUGFubmVyTm9kZTo6Y3JlYXRlKCp0aGlzKTsKIH0KIAor
RXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5vZGU+PiBCYXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJ
SVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
VmVjdG9yPGRvdWJsZT4mJiBmZWVkZm9yd2FyZCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkYmFjaykK
K3sKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOworCisgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKKyAgICBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnM7CisgICAgb3B0aW9ucy5mZWVk
Zm9yd2FyZCA9IFdURk1vdmUoZmVlZGZvcndhcmQpOworICAgIG9wdGlvbnMuZmVlZGJhY2sgPSBX
VEZNb3ZlKGZlZWRiYWNrKTsKKyAgICByZXR1cm4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsICp0aGlzLCBXVEZNb3ZlKG9wdGlvbnMpKTsKK30KKwogdm9pZCBC
YXNlQXVkaW9Db250ZXh0Ojpub3RpZnlOb2RlRmluaXNoZWRQcm9jZXNzaW5nKEF1ZGlvTm9kZSog
bm9kZSkKIHsKICAgICBBU1NFUlQoaXNBdWRpb1RocmVhZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggNDRjMmNlNzZl
MGRjNjU3MGI1ZmYxYTU5NDhiOTBlYmIxZGFiYjkzZi4uNjdmMzQ5MjQ5NzAxZWMwM2I2ODgwOTQx
ZjgxZjliODc1YmZjODllMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTcwLDYgKzcwLDcgQEAgY2xhc3MgRG9jdW1lbnQ7
CiBjbGFzcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlOwogY2xhc3MgR2Fpbk5vZGU7CiBjbGFzcyBI
VE1MTWVkaWFFbGVtZW50OworY2xhc3MgSUlSRmlsdGVyTm9kZTsKIGNsYXNzIE1haW5UaHJlYWRH
ZW5lcmljRXZlbnRRdWV1ZTsKIGNsYXNzIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZTsKIGNs
YXNzIE1lZGlhU3RyZWFtOwpAQCAtNzgsNiArNzksNyBAQCBjbGFzcyBNZWRpYVN0cmVhbUF1ZGlv
U291cmNlTm9kZTsKIGNsYXNzIE9zY2lsbGF0b3JOb2RlOwogY2xhc3MgUGFubmVyTm9kZTsKIGNs
YXNzIFBlcmlvZGljV2F2ZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFzcyBT
Y3JpcHRQcm9jZXNzb3JOb2RlOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTdGVyZW9Q
YW5uZXJOb2RlOwpAQCAtMTY0LDYgKzE2Niw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25PcjxS
ZWY8UGVyaW9kaWNXYXZlPj4gY3JlYXRlUGVyaW9kaWNXYXZlKFZlY3RvcjxmbG9hdD4mJiByZWFs
LCBWZWN0b3I8ZmxvYXQ+JiYgaW1hZ2luYXJ5LCBjb25zdCBQZXJpb2RpY1dhdmVDb25zdHJhaW50
cyYgPSB7IH0pOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxDb25zdGFudFNvdXJjZU5vZGU+PiBjcmVh
dGVDb25zdGFudFNvdXJjZSgpOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxTdGVyZW9QYW5uZXJOb2Rl
Pj4gY3JlYXRlU3RlcmVvUGFubmVyKCk7CisgICAgRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5v
ZGU+PiBjcmVhdGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFZlY3Rvcjxkb3Vi
bGU+JiYgZmVlZGZvcndhcmQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spOwogCiAgICAgLy8g
V2hlbiBhIHNvdXJjZSBub2RlIGhhcyBubyBtb3JlIHByb2Nlc3NpbmcgdG8gZG8gKGhhcyBmaW5p
c2hlZCBwbGF5aW5nKSwgdGhlbiBpdCB0ZWxscyB0aGUgY29udGV4dCB0byBkZXJlZmVyZW5jZSBp
dC4KICAgICB2b2lkIG5vdGlmeU5vZGVGaW5pc2hlZFByb2Nlc3NpbmcoQXVkaW9Ob2RlKik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRl
eHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmlkbAppbmRleCBjNjVjYjE5NmI3MzYxZjk3ZjBmOTljMDVmN2E5ZTEwNmIwYjQxY2FhLi4zMWYw
MWJiZWU0NzFmZDQ2ZWQwYWM1ODQ1ODU2NGVjMzVlMDI2YTljIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTY2LDYg
KzY2LDcgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIFBlcmlvZGljV2F2ZSBjcmVhdGVQZXJp
b2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+IHJlYWwsIHNlcXVlbmNlPGZsb2F0PiBpbWFnLCBvcHRp
b25hbCBQZXJpb2RpY1dhdmVPcHRpb25zIG9wdGlvbnMpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlv
bl0gQ29uc3RhbnRTb3VyY2VOb2RlIGNyZWF0ZUNvbnN0YW50U291cmNlKCk7CiAgICAgW01heVRo
cm93RXhjZXB0aW9uXSBTdGVyZW9QYW5uZXJOb2RlIGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOworICAg
IFtNYXlUaHJvd0V4Y2VwdGlvbiwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSUlS
RmlsdGVyTm9kZSBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiBmZWVkZm9yd2FyZCwg
c2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFjayk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGluZyBh
bmQgbWVyZ2luZwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gQ2hhbm5lbFNwbGl0dGVyTm9kZSBj
cmVhdGVDaGFubmVsU3BsaXR0ZXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBudW1iZXJPZk91dHB1
dHMgPSA2KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
RFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2Vy
bmVsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42MmVlZTJjYTk4NTIwMGZhOWIzNDliNTQ1MThjYjRhNjBmNjU2
NThhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9J
SVJEU1BLZXJuZWwuY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBU
aGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJEU1BL
ZXJuZWwuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitJSVJEU1BLZXJuZWw6OklJUkRTUEtl
cm5lbChJSVJQcm9jZXNzb3ImIHByb2Nlc3NvcikKKyAgICA6IEF1ZGlvRFNQS2VybmVsKCZwcm9j
ZXNzb3IpCisgICAgLCBtX2lpckZpbHRlcihwcm9jZXNzb3IuZmVlZGZvcndhcmQoKSwgcHJvY2Vz
c29yLmZlZWRiYWNrKCkpCisgICAgLCBtX3RhaWxUaW1lKG1faWlyRmlsdGVyLnRhaWxUaW1lKHBy
b2Nlc3Nvci5zYW1wbGVSYXRlKCksIHByb2Nlc3Nvci5pc0ZpbHRlclN0YWJsZSgpKSkKK3sKK30K
Kwordm9pZCBJSVJEU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxlbmd0
aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0KiBw
aGFzZVJlc3BvbnNlKQoreworICAgIEFTU0VSVChmcmVxdWVuY3lIeik7CisgICAgQVNTRVJUKG1h
Z1Jlc3BvbnNlKTsKKyAgICBBU1NFUlQocGhhc2VSZXNwb25zZSk7CisKKyAgICBWZWN0b3I8Zmxv
YXQ+IGZyZXF1ZW5jeShsZW5ndGgpOworICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlxdWlz
dCgpOworCisgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBub3JtYWxpemVk
IGZyZXF1ZW5jeSAoMCAtPiAxKSwgd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1aXN0IGZyZXF1ZW5j
eS4KKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spCisgICAgICAgIGZy
ZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKKworICAgIG1faWlyRmlsdGVy
LmdldEZyZXF1ZW5jeVJlc3BvbnNlKGxlbmd0aCwgZnJlcXVlbmN5LmRhdGEoKSwgbWFnUmVzcG9u
c2UsIHBoYXNlUmVzcG9uc2UpOworfQorCit2b2lkIElJUkRTUEtlcm5lbDo6cHJvY2Vzcyhjb25z
dCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nl
c3MpCit7CisgICAgQVNTRVJUKHNvdXJjZSk7CisgICAgQVNTRVJUKGRlc3RpbmF0aW9uKTsKKwor
ICAgIG1faWlyRmlsdGVyLnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Qcm9j
ZXNzKTsKK30KKwordm9pZCBJSVJEU1BLZXJuZWw6OnJlc2V0KCkKK3sKKyAgICBtX2lpckZpbHRl
ci5yZXNldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJEU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQ
S2VybmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY4YTQ0MmE2NzdkMDQwMzRjMDEyM2MzZjMyNjBkNWMzYzY1
OTM0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSRFNQS2VybmVsLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
LmgiCisjaW5jbHVkZSAiSUlSUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgSUlSRFNQS2VybmVsIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsIHsKK3B1Ymxp
YzoKKyAgICBleHBsaWNpdCBJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJik7CisKKyAgICAvLyBH
ZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUg
Z2l2ZW4gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBp
biByYWRpYW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3Ro
LCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBo
YXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29y
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9CisK
KyAgICAvLyBBdWRpb0RTUEtlcm5lbAorICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291
cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOwor
ICAgIGRvdWJsZSB0YWlsVGltZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdGFpbFRpbWU7IH0K
KyAgICBkb3VibGUgbGF0ZW5jeVRpbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAwOyB9CisgICAg
dm9pZCByZXNldCgpIGZpbmFsOworCisgICAgSUlSRmlsdGVyIG1faWlyRmlsdGVyOworICAgIGRv
dWJsZSBtX3RhaWxUaW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uY2JiNjk5MTVjMDYwYWQ0Mjg0Mjk4NTkyNTdjOGE3MTNjOGI5MmU4ZAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAK
QEAgLTAsMCArMSwxNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJGaWx0ZXJOb2RlLmgiCisKKyNp
bmNsdWRlICJCYXNlQXVkaW9Db250ZXh0LmgiCisjaW5jbHVkZSAiSUlSRmlsdGVyLmgiCisjaW5j
bHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJ
bmxpbmVzLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV1RGX01BS0VfSVNPX0FMTE9DQVRF
RF9JTVBMKElJUkZpbHRlck5vZGUpOworCisvLyBEZXRlcm1pbmUgaWYgZmlsdGVyIGlzIHN0YWJs
ZSBiYXNlZCBvbiB0aGUgZmVlZGJhY2sgY29lZmZpY2llbnRzLgorLy8gV2UgY29tcHV0ZSB0aGUg
cmVmbGVjdGlvbiBjb2VmZmljaWVudHMgZm9yIHRoZSBmaWx0ZXIuIElmLCBhdCBhbnkKKy8vIHBv
aW50LCB0aGUgbWFnbml0dWRlIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50IGlzIGdyZWF0
ZXIgdGhhbgorLy8gb3IgZXF1YWwgdG8gMSwgdGhlIGZpbHRlciBpcyBkZWNsYXJlZCB1bnN0YWJs
ZS4KKy8vCisvLyBMZXQgQSh6KSBiZSB0aGUgZmVlZGJhY2sgcG9seW5vbWlhbCBnaXZlbiBieQor
Ly8gICBBW25dKHopID0gMSArIGFbMV0veiArIGFbMl0vel4yICsgLi4uICsgYVtuXS96Xm4KKy8v
CisvLyBUaGUgZmlyc3QgcmVmbGVjdGlvbiBjb2VmZmljaWVudCBrW25dID0gYVtuXS4gVGhlbiwg
cmVjdXJzaXZlbHkgY29tcHV0ZQorLy8KKy8vICAgQVtuLTFdKHopID0gKEFbbl0oeikgLSBrW25d
KkFbbl0oMS96KS96Xm4pLygxLWtbbl1eMik7CisvLworLy8gc3RvcHBpbmcgYXQgQVsxXSh6KS4g
SWYgYXQgYW55IHBvaW50IHxrW25dfCA+PSAxLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlLgorc3Rh
dGljIGJvb2wgaXNGaWx0ZXJTdGFibGUoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKQor
eworICAgIC8vIE1ha2UgYSBjb3B5IG9mIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMKKyAgICBW
ZWN0b3I8ZG91YmxlPiBjb2VmZmljaWVudHMoZmVlZGJhY2spOworICAgIGludCBvcmRlciA9IGNv
ZWZmaWNpZW50cy5zaXplKCkgLSAxOworCisgICAgLy8gSWYgbmVjZXNzYXJ5LCBub3JtYWxpemUg
ZmlsdGVyIGNvZWZmaWNpZW50cyBzbyB0aGF0IGNvbnN0YW50IHRlcm0gaXMgMS4KKyAgICBpZiAo
Y29lZmZpY2llbnRzWzBdICE9IDEpIHsKKyAgICAgICAgZm9yIChpbnQgbSA9IDE7IG0gPD0gb3Jk
ZXI7ICsrbSkKKyAgICAgICAgICAgIGNvZWZmaWNpZW50c1ttXSAvPSBjb2VmZmljaWVudHNbMF07
CisgICAgICAgIGNvZWZmaWNpZW50c1swXSA9IDE7CisgICAgfQorCisgICAgLy8gQmVnaW4gcmVj
dXJzaW9uLCB1c2luZyBhIHdvcmsgYXJyYXkgdG8gaG9sZCBpbnRlcm1lZGlhdGUgcmVzdWx0cy4K
KyAgICBWZWN0b3I8ZG91YmxlPiB3b3JrKG9yZGVyICsgMSk7CisgICAgZm9yIChpbnQgbiA9IG9y
ZGVyOyBuID49IDE7IC0tbikgeworICAgICAgICBkb3VibGUgayA9IGNvZWZmaWNpZW50c1tuXTsK
KworICAgICAgICBpZiAoc3RkOjpmYWJzKGspID49IDEpCisgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICAgICAgLy8gTm90ZSB0aGF0IEFbbl0oMS96KS96Xm4gaXMgYmFzaWNhbGx5IHRo
ZSBjb2VmZmljaWVudHMgb2YgQVtuXQorICAgICAgICAvLyBpbiByZXZlcnNlIG9yZGVyLgorICAg
ICAgICBkb3VibGUgZmFjdG9yID0gMSAtIGsgKiBrOworICAgICAgICBmb3IgKGludCBtID0gMDsg
bSA8PSBuOyArK20pCisgICAgICAgICAgICB3b3JrW21dID0gKGNvZWZmaWNpZW50c1ttXSAtIGsg
KiBjb2VmZmljaWVudHNbbiAtIG1dKSAvIGZhY3RvcjsKKyAgICAgICAgY29lZmZpY2llbnRzLnN3
YXAod29yayk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK0V4Y2VwdGlvbk9yPFJl
ZjxJSVJGaWx0ZXJOb2RlPj4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQs
IElJUkZpbHRlck9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIGlmIChjb250ZXh0LmlzU3RvcHBl
ZCgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKKwor
ICAgIGNvbnRleHQubGF6eUluaXRpYWxpemUoKTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkZm9y
d2FyZC5zaXplKCkgfHwgb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXplKCkgPiBJSVJGaWx0ZXI6Om1h
eE9yZGVyKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJm
ZWVkZm9yd2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCJfcyB9
OworCisgICAgYXV0byBub25aZXJvVmFsdWVJbmRleCA9IG9wdGlvbnMuZmVlZGZvcndhcmQuZmlu
ZE1hdGNoaW5nKFtdKGF1dG8mIHZhbHVlKSB7IHJldHVybiAhIXZhbHVlOyB9KTsKKyAgICBpZiAo
bm9uWmVyb1ZhbHVlSW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgImZlZWRmb3J3YXJkIGFycmF5IG11c3QgY29udGFpbiBhIG5v
bi16ZXJvIHZhbHVlIl9zIH07CisKKyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpIHx8
IG9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAg
cmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiZmVlZGJhY2sgYXJyYXkgbXVz
dCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGlmICghb3B0aW9u
cy5mZWVkYmFja1swXSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiZmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iX3MgfTsK
KworICAgIGJvb2wgaXNGaWx0ZXJTdGFibGUgPSBXZWJDb3JlOjppc0ZpbHRlclN0YWJsZShvcHRp
b25zLmZlZWRiYWNrKTsKKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICBzY3JpcHRF
eGVjdXRpb25Db250ZXh0LmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNz
YWdlTGV2ZWw6Oldhcm5pbmcsICJJSVJGaWx0ZXIgaXMgdW5zdGFibGUgd2l0aCBwcm92aWRlZCBm
ZWVkYmFjayBjb2VmZmljaWVudHMiX3MpOworCisgICAgYXV0byBub2RlID0gYWRvcHRSZWYoKm5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIG9wdGlvbnMuZmVlZGZvcndhcmQsIG9wdGlvbnMuZmVl
ZGJhY2ssIGlzRmlsdGVyU3RhYmxlKSk7CisKKyAgICBhdXRvIHJlc3VsdCA9IG5vZGUtPmhhbmRs
ZUF1ZGlvTm9kZU9wdGlvbnMob3B0aW9ucywgeyAyLCBDaGFubmVsQ291bnRNb2RlOjpNYXgsIENo
YW5uZWxJbnRlcnByZXRhdGlvbjo6U3BlYWtlcnMgfSk7CisgICAgaWYgKHJlc3VsdC5oYXNFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKKyAg
ICByZXR1cm4gbm9kZTsKK30KKworSUlSRmlsdGVyTm9kZTo6SUlSRmlsdGVyTm9kZShCYXNlQXVk
aW9Db250ZXh0JiBjb250ZXh0LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNv
bnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaywgYm9vbCBpc0ZpbHRlclN0YWJsZSkKKyAgICA6
IEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKGNvbnRleHQpCit7CisgICAgc2V0Tm9kZVR5cGUoTm9k
ZVR5cGVJSVJGaWx0ZXIpOworICAgIG1fcHJvY2Vzc29yID0gbWFrZVVuaXF1ZTxJSVJQcm9jZXNz
b3I+KGNvbnRleHQuc2FtcGxlUmF0ZSgpLCAxLCBmZWVkZm9yd2FyZCwgZmVlZGJhY2ssIGlzRmls
dGVyU3RhYmxlKTsKKworICAgIGluaXRpYWxpemUoKTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4g
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5JiBmcmVxdWVu
Y3lIeiwgRmxvYXQzMkFycmF5JiBtYWdSZXNwb25zZSwgRmxvYXQzMkFycmF5JiBwaGFzZVJlc3Bv
bnNlKQoreworICAgIGF1dG8gZXhwZWN0ZWRMZW5ndGggPSBmcmVxdWVuY3lIei5sZW5ndGgoKTsK
KyAgICBpZiAobWFnUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGggfHwgcGhhc2VS
ZXNwb25zZS5sZW5ndGgoKSAhPSBleHBlY3RlZExlbmd0aCkKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciwgIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVu
Z3RoIl9zIH07CisKKyAgICAvLyBOb3RoaW5nIHRvIGRvIGlmIHRoZSBsZW5ndGggaXMgMC4KKyAg
ICBpZiAoZXhwZWN0ZWRMZW5ndGggPiAwKQorICAgICAgICBpaXJQcm9jZXNzb3IoKS0+Z2V0RnJl
cXVlbmN5UmVzcG9uc2UoZXhwZWN0ZWRMZW5ndGgsIGZyZXF1ZW5jeUh6LmRhdGEoKSwgbWFnUmVz
cG9uc2UuZGF0YSgpLCBwaGFzZVJlc3BvbnNlLmRhdGEoKSk7CisKKyAgICByZXR1cm4geyB9Owor
fQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElP
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mODJhMjc5OWE2YmU5NmE0NjU4ODFmN2Y4MjBjZTQ2ZGE0ZDg5OTNmCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmgKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1
bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgIkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
T3B0aW9ucy5oIgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgorI2luY2x1ZGUgPEphdmFTY3Jp
cHRDb3JlL0Zsb2F0MzJBcnJheS5oPgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2MuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBJSVJGaWx0ZXJOb2RlIGZpbmFsIDogcHVibGljIEF1
ZGlvQmFzaWNQcm9jZXNzb3JOb2RlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKElJUkZp
bHRlck5vZGUpOworcHVibGljOgorICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8SUlSRmlsdGVy
Tm9kZT4+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgQmFzZUF1ZGlvQ29udGV4dCYs
IElJUkZpbHRlck9wdGlvbnMmJik7CisKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBnZXRGcmVxdWVu
Y3lSZXNwb25zZShGbG9hdDMyQXJyYXkmIGZyZXF1ZW5jeUh6LCBGbG9hdDMyQXJyYXkmIG1hZ1Jl
c3BvbnNlLCBGbG9hdDMyQXJyYXkmIHBoYXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJ
UkZpbHRlck5vZGUoQmFzZUF1ZGlvQ29udGV4dCYsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
Zm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3Rh
YmxlKTsKKworICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29yKCkgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0
ZXJOb2RlLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZGRjNWFjM2NmMjc4OWMxMzczY2ZmMjA0Njc3ODQxODRj
ZTY0YzIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJGaWx0ZXJOb2RlLmlkbApAQCAtMCwwICsxLDMyIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAg
Q29uZGl0aW9uYWw9V0VCX0FVRElPLAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorICAgIEVu
YWJsZWRCeVNldHRpbmc9TW9kZXJuVW5wcmVmaXhlZFdlYkF1ZGlvLAorXSBpbnRlcmZhY2UgSUlS
RmlsdGVyTm9kZSA6IEF1ZGlvTm9kZSB7CisgICAgW01heVRocm93RXhjZXB0aW9uLCBDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihCYXNlQXVkaW9Db250ZXh0IGF1
ZGlvQ29udGV4dCwgSUlSRmlsdGVyT3B0aW9ucyBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dFeGNl
cHRpb25dIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5IGZyZXF1ZW5jeUh6
LCBGbG9hdDMyQXJyYXkgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSBwaGFzZVJlc3BvbnNlKTsK
K307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRl
ck9wdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0
aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjFiMDJmNTk3NjM5NTRkNDIzZjU0YjQ3MmVkZjFlZjliMGM2ZjFl
MzEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaApAQCAtMCwwICsxLDQxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2lmIEVOQUJMRShXRUJfQVVESU8pCisKKyNpbmNsdWRlICJBdWRpb05vZGVPcHRpb25z
LmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0
cnVjdCBJSVJGaWx0ZXJPcHRpb25zIDogQXVkaW9Ob2RlT3B0aW9ucyB7CisgICAgVmVjdG9yPGRv
dWJsZT4gZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gZmVlZGJhY2s7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25z
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjFmMzQ3ODc3MWVlMTI0OTFiYjZhNTAxZTVmOGIyZTI4MjI2MWUzMQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmls
dGVyT3B0aW9ucy5pZGwKQEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworWworICAgIENvbmRp
dGlvbmFsPVdFQl9BVURJTworXSBkaWN0aW9uYXJ5IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05v
ZGVPcHRpb25zIHsKKyAgICByZXF1aXJlZCBzZXF1ZW5jZTxkb3VibGU+IGZlZWRmb3J3YXJkOwor
ICAgIHJlcXVpcmVkIHNlcXVlbmNlPGRvdWJsZT4gZmVlZGJhY2s7Cit9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1
YjQyNzMwOWEzNzcxMjQyYWEwMDVkY2NiZTA1OWZlZGVkZGIwMzEKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5jcHAKQEAgLTAs
MCArMSwxMDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYg
RU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJQcm9jZXNzb3IuaCIKKworI2luY2x1ZGUg
IklJUkRTUEtlcm5lbC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0lJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKGZsb2F0IHNhbXBsZVJhdGUsIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMs
IGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4m
IGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3RhYmxlKQorICAgIDogQXVkaW9EU1BLZXJuZWxQcm9j
ZXNzb3Ioc2FtcGxlUmF0ZSwgbnVtYmVyT2ZDaGFubmVscykKKyAgICAsIG1fZmVlZGZvcndhcmQo
ZmVlZGZvcndhcmQpCisgICAgLCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQorICAgICwgbV9pc0ZpbHRl
clN0YWJsZShpc0ZpbHRlclN0YWJsZSkKK3sKKyAgICB1bnNpZ25lZCBmZWVkYmFja0xlbmd0aCA9
IGZlZWRiYWNrLnNpemUoKTsKKyAgICB1bnNpZ25lZCBmZWVkZm9yd2FyZExlbmd0aCA9IGZlZWRm
b3J3YXJkLnNpemUoKTsKKyAgICBBU1NFUlQoZmVlZGJhY2tMZW5ndGggPiAwKTsKKyAgICBBU1NF
UlQoZmVlZGZvcndhcmRMZW5ndGggPiAwKTsKKworICAgIC8vIE5lZWQgdG8gc2NhbGUgdGhlIGZl
ZWRiYWNrIGFuZCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgYXBwcm9wcmlhdGVseS4KKyAgICAv
LyAoSXQncyB1cCB0byB0aGUgY2FsbGVyIHRvIGVuc3VyZSBmZWVkYmFja0NvZWZbMF0gaXMgbm90
IDAuKQorICAgIEFTU0VSVCghIWZlZWRiYWNrWzBdKTsKKworICAgIGlmIChmZWVkYmFja1swXSAh
PSAxKSB7CisgICAgICAgIC8vIFRoZSBwcm92aWRlZCBmaWx0ZXIgaXM6CisgICAgICAgIC8vCisg
ICAgICAgIC8vICAgYVswXSp5KG4pICsgYVsxXSp5KG4tMSkgKyAuLi4gPSBiWzBdKngobikgKyBi
WzFdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBXZSB3YW50IHRoZSBsZWFk
aW5nIGNvZWZmaWNpZW50IG9mIHkobikgdG8gYmUgMToKKyAgICAgICAgLy8KKyAgICAgICAgLy8g
ICB5KG4pICsgYVsxXS9hWzBdKnkobi0xKSArIC4uLiA9IGJbMF0vYVswXSp4KG4pICsgYlsxXS9h
WzBdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBUaHVzLCB0aGUgZmVlZGJh
Y2sgYW5kIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBuZWVkIHRvIGJlIHNjYWxlZCBieSAxL2Fb
MF0uCisgICAgICAgIGZsb2F0IHNjYWxlID0gZmVlZGJhY2tbMF07CisgICAgICAgIGZvciAodW5z
aWduZWQgayA9IDE7IGsgPCBmZWVkYmFja0xlbmd0aDsgKytrKQorICAgICAgICAgICAgbV9mZWVk
YmFja1trXSAvPSBzY2FsZTsKKworICAgICAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgZmVl
ZGZvcndhcmRMZW5ndGg7ICsraykKKyAgICAgICAgICAgIG1fZmVlZGZvcndhcmRba10gLz0gc2Nh
bGU7CisKKyAgICAgICAgLy8gVGhlIElJUkZpbHRlciBjaGVja3MgdG8gbWFrZSBzdXJlIHRoaXMg
Y29lZmZpY2llbnQgaXMgMSwgc28gbWFrZSBpdCBzby4KKyAgICAgICAgbV9mZWVkYmFja1swXSA9
IDE7CisgICAgfQorCisgICAgbV9yZXNwb25zZUtlcm5lbCA9IG1ha2VVbmlxdWU8SUlSRFNQS2Vy
bmVsPigqdGhpcyk7Cit9CisKK0lJUlByb2Nlc3Nvcjo6fklJUlByb2Nlc3NvcigpCit7CisgICAg
aWYgKGlzSW5pdGlhbGl6ZWQoKSkKKyAgICAgICAgdW5pbml0aWFsaXplKCk7Cit9CisKK3N0ZDo6
dW5pcXVlX3B0cjxBdWRpb0RTUEtlcm5lbD4gSUlSUHJvY2Vzc29yOjpjcmVhdGVLZXJuZWwoKQor
eworICAgIHJldHVybiBtYWtlVW5pcXVlPElJUkRTUEtlcm5lbD4oKnRoaXMpOworfQorCit2b2lk
IElJUlByb2Nlc3Nvcjo6cHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyog
ZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgaWYgKCFpc0luaXRp
YWxpemVkKCkpIHsKKyAgICAgICAgZGVzdGluYXRpb24tPnplcm8oKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIC8vIEZvciBlYWNoIGNoYW5uZWwgb2Ygb3VyIGlucHV0LCBwcm9jZXNz
IHVzaW5nIHRoZSBjb3JyZXNwb25kaW5nIElJUkRTUEtlcm5lbAorICAgIC8vIGludG8gdGhlIG91
dHB1dCBjaGFubmVsLgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9rZXJuZWxzLnNpemUo
KTsgKytpKQorICAgICAgICBtX2tlcm5lbHNbaV0tPnByb2Nlc3Moc291cmNlLT5jaGFubmVsKGkp
LT5kYXRhKCksIGRlc3RpbmF0aW9uLT5jaGFubmVsKGkpLT5tdXRhYmxlRGF0YSgpLCBmcmFtZXNU
b1Byb2Nlc3MpOworfQorCit2b2lkIElJUlByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2Uo
dW5zaWduZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNw
b25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCit7CisgICAgbV9yZXNwb25zZUtlcm5lbC0+Z2V0
RnJlcXVlbmN5UmVzcG9uc2UobGVuZ3RoLCBmcmVxdWVuY3lIeiwgbWFnUmVzcG9uc2UsIHBoYXNl
UmVzcG9uc2UpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJQcm9jZXNzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSUHJv
Y2Vzc29yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDRjNWVkOWRmOGU1OWI3ZTczYzIwNGViMGMzYTE0MjY1Y2E2
NDJkZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSUHJvY2Vzc29yLmgKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLmgiCisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkRTUEtlcm5l
bDsKKworY2xhc3MgSUlSUHJvY2Vzc29yIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsUHJv
Y2Vzc29yIHsKK3B1YmxpYzoKKyAgICBJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5z
aWduZWQgbnVtYmVyT2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJk
LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOwor
ICAgIH5JSVJQcm9jZXNzb3IoKTsKKworICAgIC8vIEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLgor
ICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyogZGVzdGlu
YXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOworICAgIHN0ZDo6dW5pcXVlX3B0
cjxBdWRpb0RTUEtlcm5lbD4gY3JlYXRlS2VybmVsKCkgZmluYWw7CisKKyAgICAvLyBHZXQgdGhl
IG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4g
c2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBpbiByYWRp
YW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3RoLCBjb25z
dCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVz
cG9uc2UpOworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkKCkgY29uc3Qg
eyByZXR1cm4gbV9mZWVkZm9yd2FyZDsgfQorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
YmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGJhY2s7IH0KKyAgICBib29sIGlzRmlsdGVyU3Rh
YmxlKCkgY29uc3QgeyByZXR1cm4gbV9pc0ZpbHRlclN0YWJsZTsgfQorCitwcml2YXRlOgorICAg
IFZlY3Rvcjxkb3VibGU+IG1fZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVk
YmFjazsKKyAgICBib29sIG1faXNGaWx0ZXJTdGFibGU7CisKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
SUlSRFNQS2VybmVsPiBtX3Jlc3BvbnNlS2VybmVsOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2Vi
Q29yZS9Tb3VyY2VzLnR4dAppbmRleCBkZTQ5ZmQyNjZiNmE4NGI5Yzg1M2I2YzVkOTRmZTM4YjI2
MDMxMzM3Li4zNjI2NjVhYjE3MTMxZjJjZjM3ZjhhZGY4OTA1NDA1YmYyOTcyNmM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dApAQCAtMjIxLDYgKzIyMSw5IEBAIE1vZHVsZXMvd2ViYXVkaW8vRGVsYXlOb2RlLmNw
cAogTW9kdWxlcy93ZWJhdWRpby9EZWxheVByb2Nlc3Nvci5jcHAKIE1vZHVsZXMvd2ViYXVkaW8v
RHluYW1pY3NDb21wcmVzc29yTm9kZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vR2Fpbk5vZGUuY3Bw
CitNb2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlSUHJvY2Vzc29yLmNwcAogTW9kdWxl
cy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1
ZGlvL01lZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlv
L01lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuY3BwCkBAIC0xNzk5LDYgKzE4MDIsNyBAQCBwbGF0Zm9y
bS9hdWRpby9IUlRGRGF0YWJhc2VMb2FkZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0
aW9uLmNwcAogcGxhdGZvcm0vYXVkaW8vSFJURktlcm5lbC5jcHAKIHBsYXRmb3JtL2F1ZGlvL0hS
VEZQYW5uZXIuY3BwCitwbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCiBwbGF0Zm9ybS9hdWRp
by9NdWx0aUNoYW5uZWxSZXNhbXBsZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9QYW5uZXIuY3BwCiBw
bGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHAKQEAgLTMwMzQsNiArMzAzOCw4
IEBAIEpTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogSlNJZGxlRGVhZGxpbmUuY3BwCiBKU0lk
bGVSZXF1ZXN0Q2FsbGJhY2suY3BwCiBKU0lkbGVSZXF1ZXN0T3B0aW9ucy5jcHAKK0pTSUlSRmls
dGVyTm9kZS5jcHAKK0pTSUlSRmlsdGVyT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXAuY3BwCiBK
U0ltYWdlQml0bWFwT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDNhMzYxYWE5OGU5YzI3YjM5ZjcyYmMyNWFmOThmZjAwY2E2MDNiMzAuLmRjMjk4M2Ji
NTNjYjkxZWE3ZmJlODgwYTVkZWQyZWEyYTNkMzYxZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTI0MzMsNiArMjQzMyw3IEBA
CiAJCTgzMDc4NEIyMUM1MkVFMkMwMDEwNEQxRCAvKiBYTUxEb2N1bWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwNzg0QjExQzUyRUUxOTAwMTA0
RDFEIC8qIFhNTERvY3VtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJODMwQTFDN0QyNERCNzg4QjAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1
ZGlvU291cmNlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODMwQTFDN0MyNERCNzg3MDAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291
cmNlT3B0aW9ucy5oICovOyB9OwogCQk4MzBBMzZCRDFEQUM1RkFEMDA2RDdEMDkgLyogSlNNb3Vz
ZUV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODMwQTM2QkIxREFDNUZBNzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLzsgfTsK
KwkJODMwRDBCNjkyNEY1N0Q2NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRDBCNjYyNEY1N0Q1MDAwN0VE
MTIyIC8qIElJUlByb2Nlc3Nvci5oICovOyB9OwogCQk4MzBFRUFCQTI0REI2QTY0MDA5RUZCQ0Ug
LyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRUVBQjcyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktp
dER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaCAqLzsgfTsKIAkJODMxMDJCMjcxRjlFQUREOTAwRTQw
NEI5IC8qIEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMxMDJCMjMxRjlFQURDMjAwRTQwNEI5IC8qIEpTRXh0
ZW5kYWJsZU1lc3NhZ2VFdmVudC5oICovOyB9OwogCQk4MzExQzAwMzFGQUEyRTk1MDBFM0M4RTUg
LyogU1dTZXJ2ZXJKb2JRdWV1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODMxMUMwMDIxRkFBMkU4OTAwRTNDOEU1IC8qIFNXU2VydmVySm9iUXVldWUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMjQ1
OSwxMiArMjQ2MCwxNSBAQAogCQk4MzQ4QkZBQzFCODU3Mjk4MDA5MTJGMzYgLyogQ2xhc3NDb2xs
ZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzQ4QkZBQTFCODU3Mjk1MDA5MTJGMzYgLyogQ2xhc3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTgz
NENCRkMyMjREQzc4NjcwMEMyQTNEOCAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlT3B0aW9ucy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM0Q0JGQkYy
NERDNzg1NTAwQzJBM0Q4IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggKi87IH07
CiAJCTgzNERGQUQwMUY3REFFNUQwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzUwNTFBMjI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVyTm9kZS5oICovOyB9OworCQk4
MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MDUxQTAyNEY1NzNBRTAwOTkx
MUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaCAqLzsgfTsKIAkJODM1MjBDN0UxQTcxQkZDQzAwNkJE
MkFBIC8qIENTU0ZvbnRGYW1pbHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNTIwQzdEMUE3MUJGQ0MwMDZCRDJBQSAvKiBDU1NGb250RmFtaWx5Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM1NkY5
N0YyNEQ5RjgxODAwNkMzRTQxIC8qIFdlYktpdEF1ZGlvTGlzdGVuZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTZGOTdFMjREOUY4MDkwMDZDM0U0
MSAvKiBXZWJLaXRBdWRpb0xpc3RlbmVyLmggKi87IH07CiAJCTgzNThDQjcwMUM1MzI3NzUwMEUw
QzJEOCAvKiBKU1hNTERvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4M0Y1NzBBRDFDNTMyNjhFMDA3RkQ2Q0IgLyogSlNYTUxEb2N1bWVudC5o
ICovOyB9OwogCQk4MzVEMkQ3ODFGNUYxRkJEMDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVu
dHJpZXNBUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNUQyRDc1MUY1RjFGQjgwMDE0MURFRCAvKiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5o
ICovOyB9OwogCQk4MzVEMzYzNzE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9t
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEMzYz
NjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi87IH07CiAJCTgzNUQ1
NEM1MUY0REU1MzgwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNUQ1NEMyMUY0REU1MzQw
MEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCAqLzsgfTsKKwkJODM1REE5MDIy
NEY1ODI2NTAwMjJEREE0IC8qIElJUkRTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1REE5MDEyNEY1ODI1NzAwMjJEREE0IC8qIElJUkRT
UEtlcm5lbC5oICovOyB9OwogCQk4MzYyRThDMTIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJl
YXRBc0NvbnRpbnVpbmdMb2FkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJODM2NTg5REUxRjU0QTc2OTAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJl
YWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2
NTg5RDkxRjU0QTc2MjAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5oICov
OyB9OwogCQk4MzY1ODlFMDFGNTRBNzZFMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzY1ODlEODFGNTRBNzYyMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmgg
Ki87IH07CkBAIC0yNTA0LDYgKzI1MDgsNyBAQAogCQk4Mzk5NDcxMDFGNTBCNkZBMDBFOUQ4NkIg
LyogSlNET01GaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4Mzk5NDcwRTFGNTBCNkYzMDBFOUQ4NkIgLyogSlNET01GaWxlU3lzdGVtLmgg
Ki87IH07CiAJCTgzOUEyRjJFMUUyMDRBNzEwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QTJGMkMx
RTIwNEE2RDAwMzkwNTdFIC8qIFdlYkdMU3RhdGVUcmFja2VyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM5QUFGRUQxQTBDMEM4RDAwNjA1Rjk5
IC8qIEhUTUxXQlJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzlBQUZFQjFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCAq
LzsgfTsKKwkJODM5QkU2RDUyNEY1ODc2MjAwNERGNTBGIC8qIElJUkZpbHRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QkU2RDIyNEY1ODc1NTAw
NERGNTBGIC8qIElJUkZpbHRlci5oICovOyB9OwogCQk4M0EyQUJEQjI0RDg2REUwMDBFMkQ3M0Qg
LyogRGVsYXlPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25zLmggKi87IH07
CiAJCTgzQThBQzQwMUZBQkJGRTUwMDIwNjRBQyAvKiBTZXJ2aWNlV29ya2VySWRlbnRpZmllci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNBOEFDM0Ux
RkFCQkZEMTAwMjA2NEFDIC8qIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODNCMUE3MDIyNDk5ODVGMDAw
RkU1OTYxIC8qIFdlYktpdEF1ZGlvQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODNCMUE2RkYyNDk5ODVEMDAwRkU1OTYxIC8qIFdlYktpdEF1
ZGlvQ29udGV4dC5oICovOyB9OwpAQCAtMTA0NDUsNiArMTA0NTAsOCBAQAogCQk4MzBBMUM3QzI0
REI3ODcwMDAyRUNDQUQgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk4MzBBMzZCQTFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50
SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vdXNlRXZl
bnRJbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODMwQTM2QkIxREFDNUZB
NzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNNb3VzZUV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IElJUlByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzBEMEI2
ODI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IElJUlByb2Nlc3Nvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEVFQUI3
MjREQjZBNTIwMDlFRkJDRSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODMwRUVBQjkyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNz
Q29tcHJlc3Nvck5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzEwMkIyMzFGOUVBREMyMDBFNDA0Qjkg
LyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTA0OTgsNiArMTA1MDUsMTEgQEAKIAkJODM0REQ0RjMxQkUwODk4OTAwMkM5QzNF
IC8qIFBhZ2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQ
YWdlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaGFyZWRTdHJpbmdIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTgzNERGQUNFMUY3REFFNTcwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXJlZFN0cmluZ0hhc2guY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTE5RTI0RjU3M0FEMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJGaWx0ZXJOb2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTAyNEY1NzNBRTAwOTkxMUQ3IC8qIElJ
UkZpbHRlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSRmlsdGVyT3B0aW9ucy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMTI0RjU3M0FFMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVyTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IElJUkZpbHRlck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM1MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IElJUkZpbHRlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzUwQzNFNzFEQTU5QjYyMDAzNTU0MjQgLyogU2Nyb2xsTG9naWNhbFBvc2l0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbExvZ2ljYWxQb3NpdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUwQzNFNzFEQTU5QjYyMDAzNTU0MzUgLyogU2Ny
b2xsSW50b1ZpZXdPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
cm9sbEludG9WaWV3T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUw
QzNFNzFEQTU5QjYyMDAzNTY0MjQgLyogU2Nyb2xsQmVoYXZpb3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQmVoYXZpb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTEwNTIwLDYgKzEwNTMyLDggQEAKIAkJODM1RDM2MzYxOUZGNjE5MzAwNEM5M0FC
IC8qIFN0eWxlQnVpbGRlckN1c3RvbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTdHlsZUJ1aWxkZXJDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1
RDU0QzExRjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXJlY3RvcnlGaWxlTGlzdENyZWF0
b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzVENTRDMjFGNERFNTM0MDBF
NjA2NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElJUkRTUEtlcm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNURBOTAxMjRGNTgyNTcwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSUlSRFNQS2VybmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNUY4QjI2MUQyRDkwQkEwMEU0MDhFQyAvKiBTbG90YWJsZS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gU2xvdGFibGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNob3VsZFRyZWF0QXNDb250aW51aW5n
TG9hZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzY1ODlEODFGNTRBNzYyMDBE
QzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTA2MDQsNiArMTA2MTgsOCBAQAogCQk4MzlBMkYyQzFFMjA0
QTZEMDAzOTA1N0UgLyogV2ViR0xTdGF0ZVRyYWNrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViR0xTdGF0ZVRyYWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJODM5QUFGRUExQTBDMEM4RDAwNjA1Rjk5IC8qIEhUTUxXQlJFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxXQlJFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM5QUFGRUIxQTBDMEM4RDAwNjA1Rjk5IC8qIEhU
TUxXQlJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxXQlJF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQyMjRGNTg3NTUw
MDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SUlSRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQ0MjRGNTg3
NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSUlSRmlsdGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNB
MkFCRDgyNEQ4NkRDNjAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
ZWxheU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBMkFCREEyNEQ4
NkRDNzAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGVsYXlPcHRpb25zLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBNEE5RjgxQ0U3RkQ3RTAwNzA5QjAwIC8q
IEpTWE1MRG9jdW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNYTUxEb2N1bWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0yOTY3OSw2ICsyOTY5NSwxNSBAQAogCQkJCUZEMzE1RkM0MTJCMDI2NzUwMEMxQTM1OSAv
KiBHYWluTm9kZS5pZGwgKi8sCiAJCQkJODM3NDVDRkYyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5P
cHRpb25zLmggKi8sCiAJCQkJODM3NDVEMDEyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5PcHRpb25z
LmlkbCAqLywKKwkJCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLywKKwkJCQk4MzVEQTkwMTI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggKi8s
CisJCQkJODM1MDUxOUUyNEY1NzNBRDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuY3BwICovLAor
CQkJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmggKi8sCisJCQkJ
ODM1MDUxQTEyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaWRsICovLAorCQkJCTgz
NTA1MUEwMjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggKi8sCisJCQkJODM1
MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICovLAorCQkJCTgz
MEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuY3BwICovLAorCQkJCTgzMEQw
QjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCAqLywKIAkJCQlGRDZGMjUyOTEz
RjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmNwcCAqLywKIAkJ
CQlGRDZGMjUyQTEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2Rl
LmggKi8sCiAJCQkJRkQ2RjI1MkIxM0Y1RUYwRTAwNjUxNjVGIC8qIE1lZGlhRWxlbWVudEF1ZGlv
U291cmNlTm9kZS5pZGwgKi8sCkBAIC0yOTgzMiw2ICsyOTg1Nyw4IEBACiAJCQkJRkQzMTYwNjkx
MkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZLZXJuZWwuaCAqLywKIAkJCQlGRDMxNjA2QTEyQjAyNkY3
MDBDMUEzNTkgLyogSFJURlBhbm5lci5jcHAgKi8sCiAJCQkJRkQzMTYwNkIxMkIwMjZGNzAwQzFB
MzU5IC8qIEhSVEZQYW5uZXIuaCAqLywKKwkJCQk4MzlCRTZENDI0RjU4NzU1MDA0REY1MEYgLyog
SUlSRmlsdGVyLmNwcCAqLywKKwkJCQk4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmls
dGVyLmggKi8sCiAJCQkJRkRCMTcwMDMxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hhbm5lbFJl
c2FtcGxlci5jcHAgKi8sCiAJCQkJRkRCMTcwMDQxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hh
bm5lbFJlc2FtcGxlci5oICovLAogCQkJCTQxNkZEMjVEMjQwRUUxQUUwMDY2NjFEOCAvKiBOb3dQ
bGF5aW5nSW5mby5oICovLApAQCAtMzE0NTAsNiArMzE0NzcsMTEgQEAKIAkJCQlDM0NGMTdBNzE1
QjAwNjNGMDAyNzZEMzkgLyogSWRUYXJnZXRPYnNlcnZlclJlZ2lzdHJ5LmggaW4gSGVhZGVycyAq
LywKIAkJCQk4QUI0QkM3NzEyNkZEQjcxMDBERUI3MjcgLyogSWdub3JlRGVzdHJ1Y3RpdmVXcml0
ZUNvdW50SW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ2NzMwMjAyMUM0RUZFNzgw
MEJDQjM1NyAvKiBJZ25vcmVPcGVuc0R1cmluZ1VubG9hZENvdW50SW5jcmVtZW50ZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzNURBOTAyMjRGNTgyNjUwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzOUJFNkQ1MjRGNTg3NjIwMDRERjUwRiAvKiBJSVJGaWx0
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcg
LyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMwRDBCNjkyNEY1N0Q2
NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjI3NTM1NzAw
QjA1MzgxNDAwMkNFNjRGIC8qIEltYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NUEzMzZGOTFE
ODIxRTNDMDAyMkM0QzcgLyogSW1hZ2VCYWNraW5nU3RvcmUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxODE1QTMxMUY5QTZDOEYwMEZDQkY4OSAvKiBJbWFnZUJpdG1hcC5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5h
bWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgK
aW5kZXggMjI0ZGJjMmU2MzM5ZTY0ZDUwNjNlYjJjZDViOTgxM2ZmZTczNjJkOC4uNmQwOWYyMWY2
ZGExZDNlY2EyMTkwMWI4NjEzOGUwM2NlNTAwYzI1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaApAQCAtMTQzLDYgKzE0Myw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhJREJSZXF1ZXN0KSBcCiAgICAgbWFjcm8oSURC
VHJhbnNhY3Rpb24pIFwKICAgICBtYWNybyhJREJWZXJzaW9uQ2hhbmdlRXZlbnQpIFwKKyAgICBt
YWNybyhJSVJGaWx0ZXJOb2RlKSBcCiAgICAgbWFjcm8oSW1hZ2VCaXRtYXApIFwKICAgICBtYWNy
byhJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQpIFwKICAgICBtYWNybyhJZGxlRGVhZGxpbmUp
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjI5YTEzNGQzMTdhMDRhZTQ0OGI4MDRiZTY5NTM1YTU5YWUzZTY4ZWYKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCkBAIC0w
LDAgKzEsMjMyIEBACisvKgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJJSVJGaWx0ZXIuaCIKKworI2luY2x1ZGUgIkF1ZGlvQXJyYXkuaCIKKyNpbmNsdWRlICJW
ZWN0b3JNYXRoLmgiCisjaW5jbHVkZSA8YWxnb3JpdGhtPgorI2luY2x1ZGUgPGNvbXBsZXg+Cisj
aW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjb25z
dGV4cHIgdW5zaWduZWQgaWlyUmVuZGVyaW5nUXVhbnR1bSA9IDEyODsKKworLy8gVGhlIGxlbmd0
aCBvZiB0aGUgbWVtb3J5IGJ1ZmZlcnMgZm9yIHRoZSBJSVIgZmlsdGVyLiBUaGlzIE1VU1QgYmUg
YSBwb3dlciBvZgorLy8gdHdvIGFuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB0aGUgcG9zc2libGUg
bGVuZ3RoIG9mIHRoZSBmaWx0ZXIgY29lZmZpY2llbnRzLgorY29uc3RleHByIGludCBidWZmZXJM
ZW5ndGggPSAzMjsKK3N0YXRpY19hc3NlcnQoYnVmZmVyTGVuZ3RoID49IElJUkZpbHRlcjo6bWF4
T3JkZXIgKyAxLCAiSW50ZXJuYWwgSUlSIGJ1ZmZlciBsZW5ndGggbXVzdCBiZSBncmVhdGVyIHRo
YW4gbWF4aW11bSBJSVIgRmlsdGVyIG9yZGVyLiIpOworCitzdGF0aWMgc3RkOjpjb21wbGV4PGRv
dWJsZT4gZXZhbHVhdGVQb2x5bm9taWFsKGNvbnN0IGRvdWJsZSogY29lZmZpY2llbnRzLCBzdGQ6
OmNvbXBsZXg8ZG91YmxlPiB6LCBpbnQgb3JkZXIpCit7CisgICAgLy8gVXNlIEhvcm5lcidzIG1l
dGhvZCB0byBldmFsdWF0ZSB0aGUgcG9seW5vbWlhbCBQKHopID0gc3VtKGNvZWZba10qel5rLCBr
LCAwLCBvcmRlcik7CisgICAgc3RkOjpjb21wbGV4PGRvdWJsZT4gcmVzdWx0ID0gMDsKKyAgICBm
b3IgKGludCBrID0gb3JkZXI7IGsgPj0gMDsgLS1rKQorICAgICAgICByZXN1bHQgPSByZXN1bHQg
KiB6ICsgc3RkOjpjb21wbGV4PGRvdWJsZT4oY29lZmZpY2llbnRzW2tdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorCitJSVJGaWx0ZXI6OklJUkZpbHRlcihjb25zdCBWZWN0b3I8ZG91YmxlPiYg
ZmVlZGZvcndhcmQsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaykKKyAgICA6IG1fZmVl
ZGZvcndhcmQoZmVlZGZvcndhcmQpCisgICAgLCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQoreworICAg
IG1feEJ1ZmZlci5maWxsKDAsIGJ1ZmZlckxlbmd0aCk7CisgICAgbV95QnVmZmVyLmZpbGwoMCwg
YnVmZmVyTGVuZ3RoKTsKK30KKwordm9pZCBJSVJGaWx0ZXI6OnJlc2V0KCkKK3sKKyAgICBtX3hC
dWZmZXIuZmlsbCgwKTsKKyAgICBtX3lCdWZmZXIuZmlsbCgwKTsKKyAgICBtX2J1ZmZlckluZGV4
ID0gMDsKK30KKwordm9pZCBJSVJGaWx0ZXI6OnByb2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZSwg
ZmxvYXQqIGRlc3RpbmF0aW9uLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQoreworICAgIC8vIENv
bXB1dGUKKyAgICAvLworICAgIC8vICAgeVtuXSA9IHN1bShiW2tdICogeFtuIC0ga10sIGsgPSAw
LCBNKSAtIHN1bShhW2tdICogeVtuIC0ga10sIGsgPSAxLCBOKQorICAgIC8vCisgICAgLy8gd2hl
cmUgYltrXSBhcmUgdGhlIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBhbmQgYVtrXSBhcmUgdGhl
IGZlZWRiYWNrCisgICAgLy8gY29lZmZpY2llbnRzIG9mIHRoZSBmaWx0ZXIuCisgICAgLy8gVGhp
cyBpcyBhIERpcmVjdCBGb3JtIEkgaW1wbGVtZW50YXRpb24gb2YgYW4gSUlSIEZpbHRlci4gU2hv
dWxkIHdlCisgICAgLy8gY29uc2lkZXIgZG9pbmcgYSBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb24g
c3VjaCBhcyBUcmFuc3Bvc2VkIERpcmVjdCBGb3JtCisgICAgLy8gSUk/CisgICAgY29uc3QgZG91
YmxlKiBmZWVkYmFjayA9IG1fZmVlZGJhY2suZGF0YSgpOworICAgIGNvbnN0IGRvdWJsZSogZmVl
ZGZvcndhcmQgPSBtX2ZlZWRmb3J3YXJkLmRhdGEoKTsKKworICAgIEFTU0VSVChmZWVkYmFjayk7
CisgICAgQVNTRVJUKGZlZWRmb3J3YXJkKTsKKworICAgIC8vIFNhbml0eSBjaGVjayB0byBzZWUg
aWYgdGhlIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBoYXZlIGJlZW4gc2NhbGVkIGFwcHJvcHJpYXRl
bHkuIEl0IG11c3QgYmUgRVhBQ1RMWSAxIQorICAgIEFTU0VSVChmZWVkYmFja1swXSA9PSAxKTsK
KworICAgIGludCBmZWVkYmFja0xlbmd0aCA9IG1fZmVlZGJhY2suc2l6ZSgpOworICAgIGludCBm
ZWVkZm9yd2FyZExlbmd0aCA9IG1fZmVlZGZvcndhcmQuc2l6ZSgpOworICAgIGludCBtaW5MZW5n
dGggPSBzdGQ6Om1pbihmZWVkYmFja0xlbmd0aCwgZmVlZGZvcndhcmRMZW5ndGgpOworCisgICAg
ZG91YmxlKiB4QnVmZmVyID0gbV94QnVmZmVyLmRhdGEoKTsKKyAgICBkb3VibGUqIHlCdWZmZXIg
PSBtX3lCdWZmZXIuZGF0YSgpOworCisgICAgZm9yIChzaXplX3QgbiA9IDA7IG4gPCBmcmFtZXNU
b1Byb2Nlc3M7ICsrbikgeworICAgICAgICAvLyBUbyBoZWxwIG1pbmltaXplIHJvdW5kb2ZmLCB3
ZSBjb21wdXRlIHVzaW5nIGRvdWJsZSdzLCBldmVuIHRob3VnaCB0aGUKKyAgICAgICAgLy8gZmls
dGVyIGNvZWZmaWNpZW50cyBvbmx5IGhhdmUgc2luZ2xlIHByZWNpc2lvbiB2YWx1ZXMuCisgICAg
ICAgIGRvdWJsZSB5biA9IGZlZWRmb3J3YXJkWzBdICogc291cmNlW25dOworCisgICAgICAgIC8v
IFJ1biBib3RoIHRoZSBmZWVkZm9yd2FyZCBhbmQgZmVlZGJhY2sgdGVybXMgdG9nZXRoZXIsIHdo
ZW4gcG9zc2libGUuCisgICAgICAgIGZvciAoaW50IGsgPSAxOyBrIDwgbWluTGVuZ3RoOyArK2sp
IHsKKyAgICAgICAgICAgIGludCBtID0gKG1fYnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5n
dGggLSAxKTsKKyAgICAgICAgICAgIHluICs9IGZlZWRmb3J3YXJkW2tdICogeEJ1ZmZlclttXTsK
KyAgICAgICAgICAgIHluIC09IGZlZWRiYWNrW2tdICogeUJ1ZmZlclttXTsKKyAgICAgICAgfQor
CisgICAgICAgIC8vIEhhbmRsZSBhbnkgcmVtYWluaW5nIGZlZWRmb3J3YXJkIG9yIGZlZWRiYWNr
IHRlcm1zLgorICAgICAgICBmb3IgKGludCBrID0gbWluTGVuZ3RoOyBrIDwgZmVlZGZvcndhcmRM
ZW5ndGg7ICsraykKKyAgICAgICAgICAgIHluICs9IGZlZWRmb3J3YXJkW2tdICogeEJ1ZmZlclso
bV9idWZmZXJJbmRleCAtIGspICYgKGJ1ZmZlckxlbmd0aCAtIDEpXTsKKyAgICAgICAgZm9yIChp
bnQgayA9IG1pbkxlbmd0aDsgayA8IGZlZWRiYWNrTGVuZ3RoOyArK2spCisgICAgICAgICAgICB5
biAtPSBmZWVkYmFja1trXSAqIHlCdWZmZXJbKG1fYnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJM
ZW5ndGggLSAxKV07CisKKyAgICAgICAgLy8gU2F2ZSB0aGUgY3VycmVudCBpbnB1dCBhbmQgb3V0
cHV0IHZhbHVlcyBpbiB0aGUgbWVtb3J5IGJ1ZmZlcnMgZm9yIHRoZQorICAgICAgICAvLyBuZXh0
IG91dHB1dC4KKyAgICAgICAgbV94QnVmZmVyW21fYnVmZmVySW5kZXhdID0gc291cmNlW25dOwor
ICAgICAgICBtX3lCdWZmZXJbbV9idWZmZXJJbmRleF0gPSB5bjsKKworICAgICAgICBtX2J1ZmZl
ckluZGV4ID0gKG1fYnVmZmVySW5kZXggKyAxKSAmIChidWZmZXJMZW5ndGggLSAxKTsKKworICAg
ICAgICBkZXN0aW5hdGlvbltuXSA9IHluOworICAgIH0KK30KKwordm9pZCBJSVJGaWx0ZXI6Omdl
dEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxlbmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5j
eSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSkKK3sKKyAgICAvLyBF
dmFsdWF0ZSB0aGUgei10cmFuc2Zvcm0gb2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4gbm9ybWFs
aXplZCBmcmVxdWVuY2llcworICAgIC8vIGZyb20gMCB0byAxLiAoT25lIGNvcnJlc3BvbmRzIHRv
IHRoZSBOeXF1aXN0IGZyZXF1ZW5jeS4pCisgICAgLy8KKyAgICAvLyBUaGUgei10cmFuZm9ybSBv
ZiB0aGUgZmlsdGVyIGlzCisgICAgLy8KKyAgICAvLyBIKHopID0gc3VtKGJba10qel4oLWspLCBr
LCAwLCBNKSAvIHN1bShhW2tdKnpeKC1rKSwgaywgMCwgTik7CisgICAgLy8KKyAgICAvLyBUaGUg
ZGVzaXJlZCBmcmVxdWVuY3kgcmVzcG9uc2UgaXMgSChleHAoaipvbWVnYSkpLCB3aGVyZSBvbWVn
YSBpcyBpbiBbMCwKKyAgICAvLyAxKS4KKyAgICAvLworICAgIC8vIExldCBQKHgpID0gc3VtKGNb
a10qeF5rLCBrLCAwLCBQKSBiZSBhIHBvbHlub21pYWwgb2Ygb3JkZXIgUC4gVGhlbiBlYWNoIG9m
CisgICAgLy8gdGhlIHN1bXMgaW4gSCh6KSBpcyBlcXVpdmFsZW50IHRvIGV2YWx1YXRpbmcgYSBw
b2x5bm9taWFsIGF0IHRoZSBwb2ludAorICAgIC8vIDEvei4KKworICAgIGZvciAodW5zaWduZWQg
ayA9IDA7IGsgPCBsZW5ndGg7ICsraykgeworICAgICAgICBpZiAoZnJlcXVlbmN5W2tdIDwgMCB8
fCBmcmVxdWVuY3lba10gPiAxKSB7CisgICAgICAgICAgICAvLyBPdXQtb2YtYm91bmRzIGZyZXF1
ZW5jaWVzIHNob3VsZCByZXR1cm4gTmFOLgorICAgICAgICAgICAgbWFnUmVzcG9uc2Vba10gPSBz
dGQ6Om5hbmYoIiIpOworICAgICAgICAgICAgcGhhc2VSZXNwb25zZVtrXSA9IHN0ZDo6bmFuZigi
Iik7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvLyB6UmVjaXAgPSAxL3ogPSBleHAo
LWoqZnJlcXVlbmN5KQorICAgICAgICAgICAgZG91YmxlIG9tZWdhID0gLXBpRG91YmxlICogZnJl
cXVlbmN5W2tdOworICAgICAgICAgICAgYXV0byB6UmVjaXAgPSBzdGQ6OmNvbXBsZXg8ZG91Ymxl
Pihjb3Mob21lZ2EpLCBzaW4ob21lZ2EpKTsKKworICAgICAgICAgICAgYXV0byBudW1lcmF0b3Ig
PSBldmFsdWF0ZVBvbHlub21pYWwobV9mZWVkZm9yd2FyZC5kYXRhKCksIHpSZWNpcCwgbV9mZWVk
Zm9yd2FyZC5zaXplKCkgLSAxKTsKKyAgICAgICAgICAgIGF1dG8gZGVub21pbmF0b3IgPSBldmFs
dWF0ZVBvbHlub21pYWwobV9mZWVkYmFjay5kYXRhKCksIHpSZWNpcCwgbV9mZWVkYmFjay5zaXpl
KCkgLSAxKTsKKyAgICAgICAgICAgIGF1dG8gcmVzcG9uc2UgPSBudW1lcmF0b3IgLyBkZW5vbWlu
YXRvcjsKKyAgICAgICAgICAgIG1hZ1Jlc3BvbnNlW2tdID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KGFi
cyhyZXNwb25zZSkpOworICAgICAgICAgICAgcGhhc2VSZXNwb25zZVtrXSA9IHN0YXRpY19jYXN0
PGZsb2F0PihhdGFuMihpbWFnKHJlc3BvbnNlKSwgcmVhbChyZXNwb25zZSkpKTsKKyAgICAgICAg
fQorICAgIH0KK30KKworZG91YmxlIElJUkZpbHRlcjo6dGFpbFRpbWUoZG91YmxlIHNhbXBsZVJh
dGUsIGJvb2wgaXNGaWx0ZXJTdGFibGUpCit7CisgICAgLy8gVGhlIG1heGltdW0gdGFpbCB0aW1l
LiBUaGlzIGlzIHNvbWV3aGF0IGFyYml0cmFyeSwgYnV0IHdlJ3JlIGFzc3VtaW5nIHRoYXQKKyAg
ICAvLyBubyBvbmUgaXMgZ29pbmcgdG8gZXhwZWN0IHRoZSBJSVJGaWx0ZXIgdG8gcHJvZHVjZSBh
biBvdXRwdXQgYWZ0ZXIgdGhpcworICAgIC8vIG11Y2ggdGltZSBhZnRlciB0aGUgaW5wdXRzIGhh
dmUgc3RvcHBlZC4KKyAgICBjb25zdGV4cHIgZG91YmxlIG1heFRhaWxUaW1lID0gMTA7CisKKyAg
ICAvLyBJZiB0aGUgbWF4aW11bSBhbXBsaXR1ZGUgb2YgdGhlIGltcHVsc2UgcmVzcG9uc2UgaXMg
bGVzcyB0aGFuIHRoaXMsIHdlCisgICAgLy8gYXNzdW1lIHRoYXQgd2UndmUgcmVhY2hlZCB0aGUg
dGFpbCBvZiB0aGUgcmVzcG9uc2UuIEN1cnJlbnRseSwgdGhpcyBtZWFucworICAgIC8vIHRoYXQg
dGhlIGltcHVsc2UgaXMgbGVzcyB0aGFuIDEgYml0IG9mIGEgMTYtYml0IFBDTSB2YWx1ZS4KKyAg
ICBjb25zdGV4cHIgZmxvYXQgbWF4VGFpbEFtcGxpdHVkZSA9IDEgLyAzMjc2OC4wOworCisgICAg
Ly8gSWYgZmlsdGVyIGlzIG5vdCBzdGFibGUsIGp1c3QgcmV0dXJuIG1heCB0YWlsLiBTaW5jZSB0
aGUgZmlsdGVyIGlzIG5vdAorICAgIC8vIHN0YWJsZSwgdGhlIGltcHVsc2UgcmVzcG9uc2Ugd29u
J3QgY29udmVyZ2UgdG8gemVybywgc28gd2UgZG9uJ3QgbmVlZCB0bworICAgIC8vIGZpbmQgdGhl
IGltcHVsc2UgcmVzcG9uc2UgdG8gZmluZCB0aGUgYWN0dWFsIHRhaWwgdGltZS4KKyAgICBpZiAo
IWlzRmlsdGVyU3RhYmxlKQorICAgICAgICByZXR1cm4gbWF4VGFpbFRpbWU7CisKKyAgICAvLyBI
b3cgdG8gY29tcHV0ZSB0aGUgdGFpbCB0aW1lPyBXZSdyZSBnb2luZyB0byBmaWx0ZXIgYW4gaW1w
dWxzZQorICAgIC8vIGZvciB8bWF4VGFpbFRpbWV8IHNlY29uZHMsIGluIGJsb2NrcyBvZiBrUmVu
ZGVyUXVhbnR1bUZyYW1lcyBhdAorICAgIC8vIGEgdGltZS4gVGhlIG1heGltdW0gbWFnbml0dWRl
IG9mIHRoaXMgYmxvY2sgaXMgc2F2ZWQuIEFmdGVyIGFsbAorICAgIC8vIG9mIHRoZSBzYW1wbGVz
IGhhdmUgYmVlbiBjb21wdXRlZCwgZmluZCB0aGUgbGFzdCBibG9jayB3aXRoIGEKKyAgICAvLyBt
YXhpbXVtIG1hZ25pdHVkZSBncmVhdGVyIHRoYW4gfGtNYXhUYWlsZUFtcGxpdHVkZXwuIFRoYXQg
YmxvY2sKKyAgICAvLyBpbmRleCArIDEgd2lsbCBiZSB0aGUgdGFpbCB0aW1lLiBXZSBkb24ndCBu
ZWVkIHRvIGJlCisgICAgLy8gc3VwZXItYWNjdXJhdGUgaW4gY29tcHV0aW5nIHRoZSB0YWlsIHRp
bWUgc2luY2Ugd2UgcHJvY2VzcyBvbgorICAgIC8vIGJsb2NrcywgYmxvY2sgYWNjdXJhY3kgaXMg
Z29vZCBlbm91Z2gsIGFuZCB0aGUgdmFsdWUganVzdCBuZWVkcworICAgIC8vIHRvIGJlIGxhcmdl
ciB0aGFuIHRoZSAicmVhbCIgdGFpbCB0aW1lLCBzbyB3ZSBkb24ndCBwcmVtYXR1cmVseQorICAg
IC8vIHplcm8gb3V0IHRoZSBvdXRwdXQgb2YgdGhlIG5vZGUuCisKKyAgICAvLyBOdW1iZXIgb2Yg
cmVuZGVyIHF1YW50YSBuZWVkZWQgdG8gcmVhY2ggdGhlIG1heCB0YWlsIHRpbWUuCisgICAgaW50
IG51bWJlck9mQmxvY2tzID0gc3RkOjpjZWlsKHNhbXBsZVJhdGUgKiBtYXhUYWlsVGltZSAvIGlp
clJlbmRlcmluZ1F1YW50dW0pOworCisgICAgLy8gSW5wdXQgYW5kIG91dHB1dCBidWZmZXJzIGZv
ciBmaWx0ZXJpbmcuCisgICAgQXVkaW9GbG9hdEFycmF5IGlucHV0KGlpclJlbmRlcmluZ1F1YW50
dW0pOworICAgIEF1ZGlvRmxvYXRBcnJheSBvdXRwdXQoaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisK
KyAgICAvLyBBcnJheSB0byBob2xkIHRoZSBtYXggbWFnbml0dWRlcworICAgIEF1ZGlvRmxvYXRB
cnJheSBtYWduaXR1ZGVzKG51bWJlck9mQmxvY2tzKTsKKworICAgIC8vIENyZWF0ZSB0aGUgaW1w
dWxzZSBpbnB1dCBzaWduYWwuCisgICAgaW5wdXRbMF0gPSAxOworCisgICAgLy8gUHJvY2VzcyB0
aGUgZmlyc3QgYmxvY2sgYW5kIGdldCB0aGUgbWF4IG1hZ25pdHVkZSBvZiB0aGUgb3V0cHV0Lgor
ICAgIHByb2Nlc3MoaW5wdXQuZGF0YSgpLCBvdXRwdXQuZGF0YSgpLCBpaXJSZW5kZXJpbmdRdWFu
dHVtKTsKKyAgICBWZWN0b3JNYXRoOjp2bWF4bWd2KG91dHB1dC5kYXRhKCksIDEsICZtYWduaXR1
ZGVzWzBdLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKworICAgIC8vIFByb2Nlc3MgdGhlIHJlc3Qg
b2YgdGhlIHNpZ25hbCwgZ2V0dGluZyB0aGUgbWF4IG1hZ25pdHVkZSBvZiB0aGUKKyAgICAvLyBv
dXRwdXQgZm9yIGVhY2ggYmxvY2suCisgICAgaW5wdXRbMF0gPSAwOworCisgICAgZm9yIChpbnQg
ayA9IDE7IGsgPCBudW1iZXJPZkJsb2NrczsgKytrKSB7CisgICAgICAgIHByb2Nlc3MoaW5wdXQu
ZGF0YSgpLCBvdXRwdXQuZGF0YSgpLCBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKyAgICAgICAgVmVj
dG9yTWF0aDo6dm1heG1ndihvdXRwdXQuZGF0YSgpLCAxLCAmbWFnbml0dWRlc1trXSwgaWlyUmVu
ZGVyaW5nUXVhbnR1bSk7CisgICAgfQorCisgICAgLy8gRG9uZSBjb21wdXRpbmcgdGhlIGltcHVs
c2UgcmVzcG9uc2U7IHJlc2V0IHRoZSBzdGF0ZSBzbyB0aGUgYWN0dWFsIG5vZGUKKyAgICAvLyBz
dGFydHMgaW4gdGhlIGV4cGVjdGVkIGluaXRpYWwgc3RhdGUuCisgICAgcmVzZXQoKTsKKworICAg
IC8vIEZpbmQgdGhlIGxhc3QgYmxvY2sgd2l0aCBhbXBsaXR1ZGUgZ3JlYXRlciB0aGFuIHRoZSB0
aHJlc2hvbGQuCisgICAgaW50IGluZGV4ID0gbnVtYmVyT2ZCbG9ja3MgLSAxOworICAgIGZvciAo
aW50IGsgPSBpbmRleDsgayA+PSAwOyAtLWspIHsKKyAgICAgICAgaWYgKG1hZ25pdHVkZXNba10g
PiBtYXhUYWlsQW1wbGl0dWRlKSB7CisgICAgICAgICAgICBpbmRleCA9IGs7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8vIFRoZSBtYWduaXR1ZGUgZmlyc3Qg
YmVjb21lIGxvd2VyIHRoYW4gdGhlIHRocmVzaG9sZCBhdCB0aGUgbmV4dCBibG9jay4KKyAgICAv
LyBDb21wdXRlIHRoZSBjb3JyZXNwb25kaW5nIHRpbWUgdmFsdWUgdmFsdWU7IHRoYXQncyB0aGUg
dGFpbCB0aW1lLgorICAgIHJldHVybiAoaW5kZXggKyAxKSAqIGlpclJlbmRlcmluZ1F1YW50dW0g
LyBzYW1wbGVSYXRlOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwZDBiODc0M2I3Yjc2YzBl
ZGU5NGQyOGE3MDk0NGU0ZWNhYjdhZTgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuaApAQCAtMCwwICsxLDc2IEBACisvKgorICogQ29w
eXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkZpbHRlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7CitwdWJsaWM6CisgICAgc3RhdGljIGNvbnN0ZXhwciBzaXplX3QgbWF4T3JkZXIgeyAy
MCB9OworICAgIElJUkZpbHRlcihjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNv
bnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjayk7CisKKyAgICB2b2lkIHJlc2V0KCk7CisKKyAg
ICB2b2lkIHByb2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZSwgZmxvYXQqIGRlc3RpbmF0aW9uLCBz
aXplX3QgZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICB2b2lkIGdldEZyZXF1ZW5jeVJlc3BvbnNlKHVu
c2lnbmVkIGxlbmd0aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNl
LCBmbG9hdCogcGhhc2VSZXNwb25zZSk7CisgICAgZG91YmxlIHRhaWxUaW1lKGRvdWJsZSBzYW1w
bGVSYXRlLCBib29sIGlzRmlsdGVyU3RhYmxlKTsKKworICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+
JiBmZWVkZm9yd2FyZCgpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGZvcndhcmQ7IH0KKyAgICBjb25z
dCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2soKSBjb25zdCB7IHJldHVybiBtX2ZlZWRiYWNrOyB9
CisKK3ByaXZhdGU6CisgICAgLy8gRmlsdGVyIG1lbW9yeQorICAgIC8vCisgICAgLy8gRm9yIHNp
bXBsaWNpdHksIHdlIGFzc3VtZSB8bV94QnVmZmVyfCBhbmQgfG1feUJ1ZmZlcnwgaGF2ZSB0aGUg
c2FtZSBsZW5ndGgsCisgICAgLy8gYW5kIHRoZSBsZW5ndGggaXMgYSBwb3dlciBvZiB0d28uIFNp
bmNlIHRoZSBudW1iZXIgb2YgY29lZmZpY2llbnRzIGhhcyBhCisgICAgLy8gZml4ZWQgdXBwZXIg
bGVuZ3RoLCB0aGUgc2l6ZSBvZiB4QnVmZmVyIGFuZCB5QnVmZmVyIGlzIGZpeGVkLiB8bV94QnVm
ZmVyfAorICAgIC8vIGhvbGRzIHRoZSBvbGQgaW5wdXQgdmFsdWVzIGFuZCB8bV95QnVmZmVyfCBo
b2xkcyB0aGUgb2xkIG91dHB1dCB2YWx1ZXMKKyAgICAvLyBuZWVkZWQgdG8gY29tcHV0ZSB0aGUg
bmV3IG91dHB1dCB2YWx1ZS4KKyAgICAvLworICAgIC8vIG1feUJ1ZmZlclttX2J1ZmZlckluZGV4
XSBob2xkcyB0aGUgbW9zdCByZWNlbnQgb3V0cHV0IHZhbHVlLCBzYXksIHlbbl0uCisgICAgLy8g
VGhlbiBtX3lCdWZmZXJbbV9idWZmZXJJbmRleCAtIGtdIGlzIHlbbiAtIGtdLiBTaW1pbGFybHkg
Zm9yIG1feEJ1ZmZlci4KKyAgICAvLworICAgIC8vIFRvIG1pbmltaXplIHJvdW5kb2ZmLCB0aGVz
ZSBhcnJheXMgYXJlIGRvdWJsZSdzIGluc3RlYWQgb2YgZmxvYXRzLgorICAgIFZlY3Rvcjxkb3Vi
bGU+IG1feEJ1ZmZlcjsKKyAgICBWZWN0b3I8ZG91YmxlPiBtX3lCdWZmZXI7CisKKyAgICAvLyBJ
bmRleCBpbnRvIHRoZSB4QnVmZmVyIGFuZCB5QnVmZmVyIGFycmF5cyB3aGVyZSB0aGUgbW9zdCBj
dXJyZW50IHggYW5kIHkKKyAgICAvLyB2YWx1ZXMgc2hvdWxkIGJlIHN0b3JlZC4geEJ1ZmZlclti
dWZmZXJJbmRleF0gY29ycmVzcG9uZHMgdG8geFtuXSwgdGhlCisgICAgLy8gY3VycmVudCB4IGlu
cHV0IHZhbHVlIGFuZCB5QnVmZmVyW2J1ZmZlckluZGV4XSBpcyB3aGVyZSB5W25dLCB0aGUgY3Vy
cmVudAorICAgIC8vIG91dHB1dCB2YWx1ZS4KKyAgICBzaXplX3QgbV9idWZmZXJJbmRleCB7IDAg
fTsKKworICAgIC8vIFRob3NlIFZlY3RvcnMgYXJlIG93bmVkIGJ5IHRoZSBJSVJQcm9jZXNzLCB3
aGljaCBvd25zIHRoZSBJSVJGaWx0ZXJzIHZpYQorICAgIC8vIHRoZSBJSVJEU1BLZXJuZWxzLiBU
aGlzIGlzIGEgbWVtb3J5IG9wdGltaXphdGlvbiB0byBhdm9pZCBoYXZpbmcgY29waWVzCisgICAg
Ly8gb2YgdGhlc2UgdmVjdG9ycyBpbiBlYWNoIElJUkRTUEtlcm5lbCAvIElJUkZpbHRlci4KKyAg
ICBjb25zdCBWZWN0b3I8ZG91YmxlPiYgbV9mZWVkZm9yd2FyZDsKKyAgICBjb25zdCBWZWN0b3I8
ZG91YmxlPiYgbV9mZWVkYmFjazsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVzLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oCmluZGV4
IDliMThjYWE4ZDg2YmY4ZDI3NTNjM2NiZWNhNWQ3NDQ0ZmFmOTgxZDcuLjAzY2YxMTdkNTRkNDE5
MTg1ZDRhOGYwMjQ2MDQ3NTQ1ODBjNTFkNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGlsaXRpZXMuaApAQCAtMjUsNiArMjUsOSBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CisjaW5jbHVkZSA8d3RmL1dvcmtR
dWV1ZS5oPgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdFQkNPUkVfRVhQT1JUIFdvcmtRdWV1
ZSYgc2hhcmVkSW1hZ2VUcmFuc2NvZGluZ1F1ZXVlKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwppbmRleCA1N2E2MTI1MWNiNGIzMzZkMzkyMmVjNTJhYmZhOWI2NmMyNjQ3MTg3Li4xOTNj
N2JjNGQ5OWU4Nzc5NDUyN2RlMjY4MDkxOTg4NWM5NmEzOWMwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAyMC0wOC0yNSAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIGlzIG5v
dCBzdXBwb3J0ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxNTgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
IFJlYmFzZWxpbmUgV1BUIHRlc3RzIHRoYXQgYXJlIG5vdyBwYXNzaW5nLgorCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0
ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVzcG9uc2UtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQu
dHh0OgorCiAyMDIwLTA4LTI0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgVXBkYXRlIGlPUyBsYXlvdXQgdGVzdCByZXN1bHRzIGFmdGVyIHIy
NjYwODcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDdlOTcyODc5MDlhZjM2YWQ3MGM4YWY3ZWJiYzJi
NmU1MzdhMTJhZWQuLjAwMmUzN2VmYjk4N2I1ODE0NmRiNGI0MDQ1ODBmYzc4NzU5ZDNlNzUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtMzM1LDggKzMzNSwxMiBAQCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJm
YWNlLwogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtZGVsYXkuaHRtbCBbIFBhc3MgRmFp
bHVyZSBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1nYWluLmh0bWwgWyBQYXNzIEZh
aWx1cmUgXQogCi0jIFRoaXMgdGVzdCBwYXNzZXMgYnV0IHByaW50cyBhIGRpZmZlcmVudCB2YWx1
ZSBhbG1vc3QgZXZlcnkgdGltZS4KKyMgb25lLXBvbGUgc3VidGVzdCBpcyBmbGFraWx5IGZhaWxp
bmcuCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci5odG1sIFsgUGFzcyBGYWls
dXJlIF0KKworIyBUaGVzZSB0ZXN0cyBwYXNzIGJ1dCBwcmludCBkaWZmZXJlbnQgdmFsdWVzIGFs
bW9zdCBldmVyeSB0aW1lLgogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXItcmVz
cG9uc2UtNC1jaGFuLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVy
ZmFjZS9jdG9yLWlpcmZpbHRlci5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAogCiAjIFNvbWUgb2Yg
dGhlIHN1YmNoZWNrcyBhcmUgZmFpbGluZyBhbmQgcHJpbnQgb3V0IGEgZGlmZmVyZW50IHZhbHVl
IGV2ZXJ5IHRpbWUuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
aWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IDVlOTEyMzJmODdjZDdl
MGEwZGFmZTI5MDE4NjU0N2IzZjNhZjY1MTguLjgxNzQ5NDU1MTY4NDIwNGQyNWJjNDhkMTExZjRk
YjJhYjBjYjRhZTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0zMyw3ICszMyw3IEBA
IFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVDb252b2x2
ZXIoKQogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZURl
bGF5KG9wdGlvbmFsIGRvdWJsZSkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBv
cGVyYXRpb24gY3JlYXRlRHluYW1pY3NDb21wcmVzc29yKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlR2FpbigpIAotRkFJTCBCYXNlQXVkaW9Db250
ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+
LCBzZXF1ZW5jZTxkb3VibGU+KSBhc3NlcnRfb3duX3Byb3BlcnR5OiBpbnRlcmZhY2UgcHJvdG90
eXBlIG9iamVjdCBtaXNzaW5nIG5vbi1zdGF0aWMgb3BlcmF0aW9uIGV4cGVjdGVkIHByb3BlcnR5
ICJjcmVhdGVJSVJGaWx0ZXIiIG1pc3NpbmcKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZh
Y2U6IG9wZXJhdGlvbiBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8
ZG91YmxlPikgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3Jl
YXRlT3NjaWxsYXRvcigpIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0
aW9uIGNyZWF0ZVBhbm5lcigpIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3Bl
cmF0aW9uIGNyZWF0ZVBlcmlvZGljV2F2ZShzZXF1ZW5jZTxmbG9hdD4sIHNlcXVlbmNlPGZsb2F0
Piwgb3B0aW9uYWwgUGVyaW9kaWNXYXZlQ29uc3RyYWludHMpIApAQCAtOTQsOCArOTQsOCBAQCBQ
QVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAiY3JlYXRlRGVsYXkob3B0aQogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTog
Y2FsbGluZyBjcmVhdGVEZWxheShvcHRpb25hbCBkb3VibGUpIG9uIGNvbnRleHQgd2l0aCB0b28g
ZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4
dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVEeW5hbWlj
c0NvbXByZXNzb3IoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlR2Fpbigp
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKLUZBSUwgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6
IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8
ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9p
bmhlcml0czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlw
ZSBjaGFpbgotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJ
SVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgb24gY29udGV4dCB3
aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9pbmhlcml0
czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFp
bgorUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQg
cHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3Vi
bGU+KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJm
YWNlOiBjYWxsaW5nIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxk
b3VibGU+KSBvbiBjb250ZXh0IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBl
RXJyb3IgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiY3JlYXRlT3NjaWxsYXRvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAK
IFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJjcmVhdGVQYW5uZXIoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEJhc2VB
dWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3Jl
YXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8ZmxvYXQ+LCBvcHRpb25h
bCBQZXJpb2RpY1dhdmVDb25zdHJhaW50cykiIHdpdGggdGhlIHByb3BlciB0eXBlIApAQCAtMTQ3
LDggKzE0Nyw4IEBAIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5l
QXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0CiBQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJsZSkgb24gbmV3
IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1
bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJm
YWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjcmVhdGVEeW5hbWljc0NvbXByZXNzb3IoKSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlv
Q29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVH
YWluKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVy
ZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNl
PGRvdWJsZT4pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5
ICJjcmVhdGVJSVJGaWx0ZXIiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KLUZBSUwgQmFz
ZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNl
PGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4pIG9uIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEs
IDEsIHNhbXBsZV9yYXRlKSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVy
cm9yIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5k
IGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3
IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAiY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJsZT4p
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6
IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJs
ZT4pIG9uIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSB3aXRoIHRv
byBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAogUEFTUyBCYXNlQXVkaW9Db250
ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUp
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlT3NjaWxsYXRvcigpIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVk
aW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0
ZVBhbm5lcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBp
bnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZVBlcmlvZGljV2F2ZShzZXF1ZW5jZTxmbG9hdD4sIHNl
cXVlbmNlPGZsb2F0Piwgb3B0aW9uYWwgUGVyaW9kaWNXYXZlQ29uc3RyYWludHMpIiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSAKQEAgLTc0NCw0MCArNzQ0LDQwIEBAIFBBU1MgQXVkaW9Ob2RlIGludGVy
ZmFjZTogbmV3IEdhaW5Ob2RlKGNvbnRleHQpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVy
T2ZPCiBQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0
IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxDb3VudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQ
QVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVy
aXQgcHJvcGVydHkgImNoYW5uZWxDb3VudE1vZGUiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFT
UyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgR2Fpbk5vZGUoY29udGV4dCkgbXVzdCBpbmhlcml0
IHByb3BlcnR5ICJjaGFubmVsSW50ZXJwcmV0YXRpb24iIHdpdGggdGhlIHByb3BlciB0eXBlIAot
RkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9m
IGludGVyZmFjZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZl
IG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRl
ck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2Ugb2JqZWN0IGxlbmd0
aCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJ
SVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwot
RkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbmFtZSBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBl
Y3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2Rl
IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5
cGUgb2JqZWN0IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJv
cGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBt
aXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3Bl
cnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0b3IiIHByb3Bl
cnR5IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkg
IklJUkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5n
Ci1GQUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMg
b2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IGFz
c2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZp
bHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlM
IElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RnJlcXVlbmN5UmVzcG9uc2Uo
RmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgYXNzZXJ0X293bl9wcm9w
ZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhw
ZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9k
ZSBtdXN0IGJlIHByaW1hcnkgaW50ZXJmYWNlIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgYXNzZXJ0X2VxdWFsczogVW5leHBl
Y3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBn
b3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVy
Tm9kZSIKLUZBSUwgU3RyaW5naWZpY2F0aW9uIG9mIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgYXNzZXJ0X2VxdWFsczogVW5leHBl
Y3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBn
b3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVy
Tm9kZSIKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwg
RmxvYXQzMkFycmF5KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBl
Y3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBn
b3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVy
Tm9kZSIKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZ2V0RnJlcXVlbmN5
UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgb24gbmV3
IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19
KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVh
bHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQg
bnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6
IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJO
b2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywg
b3B0aW9uYWwgdW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVh
bHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQg
bnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6
IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgY29ubmVj
dChBdWRpb05vZGUsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcsIG9wdGlvbmFsIHVuc2lnbmVkIGxv
bmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVk
YmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBh
c3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0
IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcg
SUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0p
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY29ubmVjdChBdWRpb1BhcmFtLCBvcHRpb25hbCB1bnNp
Z25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3Rl
ZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qg
b2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9k
ZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBjb25uZWN0KEF1ZGlvUGFyYW0s
IG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtm
ZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBt
dXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3
aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVy
ZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRp
b05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6
IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdCgp
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlv
biB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJl
ZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBB
dWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndh
cmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVj
dCh1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5l
eHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1
dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmls
dGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KHVu
c2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDog
WzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5
cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUpIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3
aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVy
ZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRp
b05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9Ob2RlKSBvbiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdp
dGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFsczog
VW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxs
IGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlS
RmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUo
Y29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQg
cHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFs
dWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJv
cjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGlu
dGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZykgb24g
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9l
cXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0
ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFi
bGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0
ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBp
bmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5z
aWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0
ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290
IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5v
ZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05v
ZGUsIHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFy
Z3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4
Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmpl
Y3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgot
RkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVl
ZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlz
Y29ubmVjdChBdWRpb1BhcmFtKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczog
VW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxs
IGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlS
RmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0
KEF1ZGlvUGFyYW0pIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDog
WzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5
cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRp
bmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBD
YW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJh
Y2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1
bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBl
Y3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBn
b3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVy
Tm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlv
UGFyYW0sIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0
IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVu
IGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsx
XSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY29udGV4dCIgd2l0aCB0
aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBl
dmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VF
cnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2Rl
IGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJlck9mSW5wdXRzIiB3
aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3
aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVy
ZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRp
b05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6
IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZPdXRw
dXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2Vw
dGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3Qg
IlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJ
TCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZv
cndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5l
bENvdW50IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4
Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmpl
Y3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgot
RkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVl
ZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hh
bm5lbENvdW50TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBl
Y3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBn
b3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVy
Tm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2Vx
dWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3Rl
ZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogSUlSRmlsdGVyTm9kZSIKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5j
ZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ugb2JqZWN0IAorUEFTUyBJSVJGaWx0ZXJOb2Rl
IGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBv
YmplY3QgbmFtZSAKK1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQg
cHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCAKK1BBU1MgSUlSRmlsdGVy
Tm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJv
dG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkgCitQQVNTIElJUkZpbHRlck5v
ZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3Rv
dHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IAorUEFTUyBJSVJGaWx0ZXJOb2Rl
IGludGVyZmFjZTogb3BlcmF0aW9uIGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSwg
RmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXkpIAorUEFTUyBJSVJGaWx0ZXJOb2RlIG11c3QgYmUg
cHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3
YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSAKK1BBU1MgU3RyaW5naWZpY2F0aW9uIG9mIG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
CitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0
MzJBcnJheSkiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVy
ZmFjZTogY2FsbGluZyBnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJB
cnJheSwgRmxvYXQzMkFycmF5KSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZv
cndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0
aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJO
b2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywg
b3B0aW9uYWwgdW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRp
b05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNp
Z25lZCBsb25nLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBh
cmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6
IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazog
WzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFs
IHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGlu
dGVyZmFjZTogY2FsbGluZyBjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2lnbmVkIGxv
bmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVk
YmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAK
K1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2Zl
ZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRp
c2Nvbm5lY3QoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZh
Y2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcp
IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGlu
ZyBkaXNjb25uZWN0KHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50
cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBt
dXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlKSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChB
dWRpb05vZGUpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVy
IHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRp
b05vZGUsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0
IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nLCB1bnNp
Z25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZh
Y2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVk
IGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBm
ZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJv
ciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkg
ImRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRp
b05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkgb24gbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3
aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05v
ZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsx
XSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRp
b1BhcmFtLCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb1BhcmFtLCB1bnNpZ25lZCBs
b25nKSBvbiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVl
ZGJhY2s6IFsxXX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3Ig
CitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtm
ZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJj
b250ZXh0IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTog
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgIm51bWJlck9mSW5wdXRzIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgIm51bWJlck9mT3V0cHV0cyIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDog
WzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnQi
IHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJjaGFubmVsSW50ZXJwcmV0YXRpb24iIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBNZWRp
YUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRp
ZXMgb2YgaW50ZXJmYWNlIG9iamVjdCAKIFBBU1MgTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2Rl
IGludGVyZmFjZSBvYmplY3QgbGVuZ3RoIAogUEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5v
ZGUgaW50ZXJmYWNlIG9iamVjdCBuYW1lIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJm
aWx0ZXJub2RlLWludGVyZmFjZS9jdG9yLWlpcmZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4
dAppbmRleCBlOTAxYTJjNDQzMTYwMzA2Mjk2ZGQwNzM0MTMxMTE3NTdlZjczOTAyLi43YWU3N2Mx
YzIyOTFkODEwODIyNTQ1ZjI0Mzc3MmFhOWFkOGY2MjA5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVy
LWV4cGVjdGVkLnR4dApAQCAtMiwyNyArMiw1NiBAQAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVS
IFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgImluaXRpYWxpemUiIAogUEFTUyBFeGVjdXRpbmcg
ImludmFsaWQgY29uc3RydWN0b3IiIAotRkFJTCBFeGVjdXRpbmcgImRlZmF1bHQgY29uc3RydWN0
b3IiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogUmlnaHQgaGFuZCBzaWRlIG9mIGluc3RhbmNlb2YgaXMgbm90IGFuIG9iamVj
dCIKLUZBSUwgRXhlY3V0aW5nICJ0ZXN0IEF1ZGlvTm9kZU9wdGlvbnMiIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZp
bmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ25vZGUuY2hhbm5lbENvdW50JykiCitQ
QVNTIEV4ZWN1dGluZyAiZGVmYXVsdCBjb25zdHJ1Y3RvciIgCitQQVNTIEV4ZWN1dGluZyAidGVz
dCBBdWRpb05vZGVPcHRpb25zIiAKIFBBU1MgRXhlY3V0aW5nICJjb25zdHJ1Y3RvciBvcHRpb25z
IiAKLUZBSUwgRXhlY3V0aW5nICJmdW5jdGlvbmFsaXR5IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmlu
ZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9kZSIKK1BBU1MgRXhlY3V0aW5nICJmdW5jdGlvbmFsaXR5
IiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtpbml0aWFsaXplXSAgCiBQQVNTICAgY29u
dGV4dCA9IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KC4uLikgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAogUEFTUyA8IFtpbml0aWFsaXplXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFtpbnZhbGlkIGNvbnN0cnVjdG9yXSAgCi1QQVNTICAg
bmV3IElJUkZpbHRlck5vZGUoKSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEg
Y29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oKScpIi4gCi1QQVNTICAg
bmV3IElJUkZpbHRlck5vZGUoMSkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBh
IGNvbnN0cnVjdG9yIChldmFsdWF0aW5nICduZXcgd2luZG93W25hbWVdKDEpJykiLiAKLVBBU1Mg
ICBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCA0MikgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZp
bmVkIGlzIG5vdCBhIGNvbnN0cnVjdG9yIChldmFsdWF0aW5nICduZXcgd2luZG93W25hbWVdKGNv
bnRleHQsIDQyKScpIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoKSB0aHJldyBUeXBlRXJy
b3I6ICJOb3QgZW5vdWdoIGFyZ3VtZW50cyIuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKDEp
IHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwgNDIpIHRocmV3IFR5cGVFcnJvcjogIlR5cGUgZXJyb3IiLiAK
IFBBU1MgPCBbaW52YWxpZCBjb25zdHJ1Y3Rvcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgMyBhc3NlcnRpb25zKSAKIFBBU1MgPiBbZGVmYXVsdCBjb25zdHJ1Y3Rvcl0gIAotRkFJTCBY
IG5vZGUwID0gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJm
ZWVkYmFjayI6WzEsLTAuOV19KSBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmlu
ZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oY29u
dGV4dCwgb3B0aW9ucy5jb25zdHJ1Y3Rvck9wdGlvbnMpJykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBub2RlMCA9IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRl
eHQsIHsiZmVlZGZvcndhcmQiOlsxXSwiZmVlZGJhY2siOlsxLC0wLjldfSkgZGlkIG5vdCB0aHJv
dyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUwIGluc3RhbmNlb2YgSUlSRmlsdGVyTm9kZSBp
cyBlcXVhbCB0byB0cnVlLiAKK1BBU1MgICBub2RlMC5udW1iZXJPZklucHV0cyBpcyBlcXVhbCB0
byAxLiAKK1BBU1MgICBub2RlMC5udW1iZXJPZk91dHB1dHMgaXMgZXF1YWwgdG8gMS4gCitQQVNT
ICAgbm9kZTAuY2hhbm5lbENvdW50IGlzIGVxdWFsIHRvIDIuIAorUEFTUyAgIG5vZGUwLmNoYW5u
ZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BBU1MgICBub2RlMC5jaGFubmVsSW50ZXJw
cmV0YXRpb24gaXMgZXF1YWwgdG8gc3BlYWtlcnMuIAorUEFTUyA8IFtkZWZhdWx0IGNvbnN0cnVj
dG9yXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA3IGFzc2VydGlvbnMpIAogUEFTUyA+
IFt0ZXN0IEF1ZGlvTm9kZU9wdGlvbnNdICAKLUZBSUwgWCBuZXcgSUlSRmlsdGVyTm9kZShjLCB7
Y2hhbm5lbENvdW50OiAxN30pIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5l
ZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tub2RlTmFtZV0n
KSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5ldyBJSVJG
aWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnQ6IDE3fSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50IGlzIGVxdWFsIHRvIDE3LiAKK1BBU1MgICBu
ZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50OiAwfSkgdGhyZXcgSW52YWxpZFN0YXRl
RXJyb3I6ICJUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuIi4gCitQQVNTICAgbmV3
IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudDogOTl9KSB0aHJldyBJbnZhbGlkU3RhdGVF
cnJvcjogIlRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4iLiAKK1BBU1MgICBuZXcg
SUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50TW9kZTogIm1heCJ9IGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8g
bWF4LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50TW9kZTogIm1h
eCJ9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291
bnRNb2RlIGFmdGVyIHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5ldyBJ
SVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAiY2xhbXBlZC1tYXgifSkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRl
ciB2YWxpZCBzZXR0ZXIgaXMgZXF1YWwgdG8gY2xhbXBlZC1tYXguIAorUEFTUyAgIG5ldyBJSVJG
aWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAiZXhwbGljaXQifSkgZGlkIG5vdCB0aHJv
dyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciB2YWxp
ZCBzZXR0ZXIgaXMgZXF1YWwgdG8gZXhwbGljaXQuIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2Rl
KGMsIHtjaGFubmVsQ291bnRNb2RlOiAiZm9vYmFyIn0gdGhyZXcgVHlwZUVycm9yOiAiVHlwZSBl
cnJvciIuIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBhZnRlciBpbnZhbGlkIHNldHRl
ciBpcyBlcXVhbCB0byBleHBsaWNpdC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2No
YW5uZWxJbnRlcnByZXRhdGlvbjogInNwZWFrZXJzIn0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0
aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVh
a2Vycy4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnByZXRhdGlv
bjogImRpc2NyZXRlIn0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2Rl
LmNoYW5uZWxJbnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBkaXNjcmV0ZS4gCitQQVNTICAgbmV3
IElJUkZpbHRlck5vZGUoYywge2NoYW5uZWxJbnRlcnByZXRhdGlvbjogImZvb2JhciJ9KSB0aHJl
dyBUeXBlRXJyb3I6ICJUeXBlIGVycm9yIi4gCitQQVNTICAgbm9kZS5jaGFubmVsSW50ZXJwcmV0
YXRpb24gYWZ0ZXIgaW52YWxpZCBzZXR0ZXIgaXMgZXF1YWwgdG8gZGlzY3JldGUuIAorUEFTUyA8
IFt0ZXN0IEF1ZGlvTm9kZU9wdGlvbnNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIw
IGFzc2VydGlvbnMpIAogUEFTUyA+IFtjb25zdHJ1Y3RvciBvcHRpb25zXSAgCi1GQUlMIFggbm9k
ZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKCwgeyJmZWVkYmFjayI6WzEsMC41XX0pIHRocmV3ICJSZWZl
cmVuY2VFcnJvciIgaW5zdGVhZCBvZiBFY21hU2NyaXB0IGVycm9yIFR5cGVFcnJvci4gYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggbm9kZSA9IG5ldyBJSVJGaWx0
ZXJOb2RlKGMsIHsiZmVlZGZvcndhcmQiOlsxLDAuNV19KSB0aHJldyAiUmVmZXJlbmNlRXJyb3Ii
IGluc3RlYWQgb2YgRWNtYVNjcmlwdCBlcnJvciBUeXBlRXJyb3IuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtjb25zdHJ1Y3RvciBvcHRpb25zXSAyIG91dCBv
ZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIG5vZGUgPSBuZXcgSUlSRmlsdGVyTm9kZSgsIHsiZmVlZGJhY2siOlsx
LDAuNV19KSB0aHJldyBUeXBlRXJyb3I6ICJNZW1iZXIgSUlSRmlsdGVyT3B0aW9ucy5mZWVkZm9y
d2FyZCBpcyByZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBzZXF1ZW5jZSIuIAor
UEFTUyAgIG5vZGUgPSBuZXcgSUlSRmlsdGVyTm9kZShjLCB7ImZlZWRmb3J3YXJkIjpbMSwwLjVd
fSkgdGhyZXcgVHlwZUVycm9yOiAiTWVtYmVyIElJUkZpbHRlck9wdGlvbnMuZmVlZGJhY2sgaXMg
cmVxdWlyZWQgYW5kIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2Ygc2VxdWVuY2UiLiAKK1BBU1MgPCBb
Y29uc3RydWN0b3Igb3B0aW9uc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3Nl
cnRpb25zKSAKIFBBU1MgPiBbZnVuY3Rpb25hbGl0eV0gIAotRkFJTCAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAzIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBPdXRwdXQgb2YgZmlsdGVyIHVzaW5nIG5l
dyBJSVJGaWx0ZXIoLi4uKSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMDU3NTY0MDM1
MDU4MDIxNTQ1LDAuMTQzNzE5MTk2MzE5NTgwMDgsMC4yMTUwMDY2MzQ1OTMwMDk5NSwwLjI5Mjc3
NjU4NDYyNTI0NDE0LDAuMzY1OTc3NzkzOTMxOTYxMDYsMC40Mzk3NjQyMzE0NDM0MDUxNSwwLjUx
MTE5MjczOTAwOTg1NzIsMC41ODEzNzU1OTg5MDc0NzA3LDAuNjQ5NDA1ODM3MDU5MDIxLDAuNzE1
Mzk0NDk2OTE3NzI0NiwwLjc3ODk1NDU2NTUyNTA1NDksMC44Mzk5NTk1MDIyMjAxNTM4LDAuODk4
MTY0Njg5NTQwODYzLDAuOTUzMzk4NDA2NTA1NTg0NywxLjAwNTQ2NjY5OTYwMDIxOTcuLi5dLiAK
K1BBU1MgPCBbZnVuY3Rpb25hbGl0eV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBh
c3NlcnRpb25zKSAKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogNiB0YXNrcyBy
YW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJu
b2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDQ1MzRjODNmZDQ1ZjhkMGNlMjI2NDY2YWQ3MWNmMjYyZTljZjU0NTIuLjViOTM3NGI5OWQy
MDRkNjRjZjg3YTYxOTkzOWNjM2U4NmJiMTYzMWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
aWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWJhc2ljLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1l
eHBlY3RlZC50eHQKQEAgLTIsMzMgKzIsNDQgQEAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBT
VEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJpbml0aWFsaXplIiAKIFBBU1MgRXhlY3V0aW5nICJl
eGlzdGVuY2UiIAotRkFJTCBFeGVjdXRpbmcgInBhcmFtZXRlcnMiIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIoY29lZiwgY29lZiknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkiCitQQVNTIEV4ZWN1dGluZyAicGFyYW1ldGVycyIgCiBQQVNTIEV4ZWN1dGluZyAiZXhjZXB0
aW9ucy1jcmVhdGVJSVJGaWx0ZXIiIAotRkFJTCBFeGVjdXRpbmcgImV4Y2VwdGlvbnMtZ2V0RnJl
cXVlbmN5RGF0YSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5j
dGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihjb2VmLCBjb2VmKScsICdjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKK1BBU1MgRXhlY3V0aW5nICJleGNlcHRp
b25zLWdldEZyZXF1ZW5jeURhdGEiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW2luaXRp
YWxpemVdICAKIFBBU1MgICBJbml0aWFsaXplIGNvbnRleHQgZm9yIHRlc3RpbmcgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyA8IFtpbml0aWFsaXplXSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFtleGlzdGVuY2VdICAKLUZBSUwg
WCBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBkb2VzIG5vdCBleGlzdC4gR290IHVuZGVmaW5lZC4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2V4aXN0ZW5jZV0g
MSBvdXQgb2YgMSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBkb2VzIGV4aXN0
LiAKK1BBU1MgPCBbZXhpc3RlbmNlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFz
c2VydGlvbnMpIAogUEFTUyA+IFtwYXJhbWV0ZXJzXSAgCitQQVNTICAgbnVtYmVyT2ZJbnB1dHMg
aXMgZXF1YWwgdG8gMS4gCitQQVNTICAgbnVtYmVyT2ZPdXRwdXRzIGlzIGVxdWFsIHRvIDEuIAor
UEFTUyAgIGNoYW5uZWxDb3VudE1vZGUgaXMgZXF1YWwgdG8gbWF4LiAKK1BBU1MgICBjaGFubmVs
SW50ZXJwcmV0YXRpb24gaXMgZXF1YWwgdG8gc3BlYWtlcnMuIAorUEFTUyA8IFtwYXJhbWV0ZXJz
XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyA+IFtl
eGNlcHRpb25zLWNyZWF0ZUlJUkZpbHRlcl0gIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcigpIHRo
cmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKCknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXInIGlzIHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJB
cnJheSgxKSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJh
eSgxKSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLVBBU1Mg
ICBjcmVhdGVJSVJGaWx0ZXIobnVsbCwgbnVsbCkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIobnVsbCwgbnVsbCknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5l
ZCkiLiAKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoW10sIFtdKSB0aHJldyAiVHlwZUVycm9yIiBp
bnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbXSkgdGhyZXcgIlR5cGVFcnJv
ciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKFtdLCBbMV0pIHRocmV3ICJUeXBl
RXJyb3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5
KDIwKSwgbmV3IEZsb2F0MzJBcnJheSgyMCkpIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjog
ImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyKGZiLCBmYiknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVu
ZGVmaW5lZCkiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBj
cmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgyMSksIFsxXSkgdGhyZXcgIlR5cGVFcnJv
ciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZsb2F0MzJBcnJh
eSgyMSkpIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRl
cihbMV0sIG5ldyBGbG9hdDMyQXJyYXkoMikpIHRocmV3ICJUeXBlRXJyb3IiIGluc3RlYWQgb2Yg
SW52YWxpZFN0YXRlRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDEwKSwgWzFdKSB0aHJldyAi
VHlwZUVycm9yIiBpbnN0ZWFkIG9mIEludmFsaWRTdGF0ZUVycm9yLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLVBBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgTmFO
LCBJbmZpbml0eV0pIHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlz
IG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEsIElu
ZmluaXR5LCBOYU5dKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIu
IAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMSwgTmFOLCBJbmZpbml0eV0sIFsxXSkgdGhyZXcg
VHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzEsIEluZmluaXR5LCBOYU5dLCBbMV0pJywgJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gCi1QQVNTICAgY3JlYXRlSUlS
RmlsdGVyKFsxLCAnYWJjJywgW11dLCBbMV0pIHRocmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyKFsxLCAnYWJjJywgW11dLCBbMV0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1
bmRlZmluZWQpIi4gCi1GQUlMIDwgW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVyXSA4IG91dCBv
ZiAxNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoKSB0aHJldyBUeXBlRXJyb3I6ICJOb3Qg
ZW5vdWdoIGFyZ3VtZW50cyIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFy
cmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJOb3QgZW5vdWdoIGFyZ3VtZW50cyIuIAorUEFTUyAg
IGNyZWF0ZUlJUkZpbHRlcihudWxsLCBudWxsKSB0aHJldyBUeXBlRXJyb3I6ICJWYWx1ZSBpcyBu
b3QgYSBzZXF1ZW5jZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbXSwgW10pIHRocmV3IE5v
dFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJl
dHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbXSkgdGhyZXcg
Tm90U3VwcG9ydGVkRXJyb3I6ICJmZWVkYmFjayBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0
d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbXSwgWzFdKSB0aHJldyBO
b3RTdXBwb3J0ZWRFcnJvcjogImZlZWRmb3J3YXJkIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBi
ZXR3ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJy
YXkoMjApLCBuZXcgRmxvYXQzMkFycmF5KDIwKSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIxKSwgWzFdKSB0aHJl
dyBOb3RTdXBwb3J0ZWRFcnJvcjogImZlZWRmb3J3YXJkIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0
aCBiZXR3ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxXSwgbmV3IEZs
b2F0MzJBcnJheSgyMSkpIHRocmV3IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGJhY2sgYXJyYXkg
bXVzdCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJG
aWx0ZXIoWzFdLCBuZXcgRmxvYXQzMkFycmF5KDIpKSB0aHJldyBJbnZhbGlkU3RhdGVFcnJvcjog
ImZpcnN0IHZhbHVlIG9mIGZlZWRiYWNrIGFycmF5IGNhbm5vdCBiZSB6ZXJvIi4gCitQQVNTICAg
Y3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBbMV0pIHRocmV3IEludmFsaWRT
dGF0ZUVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBjb250YWluIGEgbm9uLXplcm8gdmFs
dWUiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgTmFOLCBJbmZpbml0eV0pIHRo
cmV3IFR5cGVFcnJvcjogIlRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNT
ICAgY3JlYXRlSUlSRmlsdGVyKFsxLCBOYU4sIEluZmluaXR5XSwgWzFdKSB0aHJldyBUeXBlRXJy
b3I6ICJUaGUgcHJvdmlkZWQgdmFsdWUgaXMgbm9uLWZpbml0ZSIuIAorUEFTUyAgIGNyZWF0ZUlJ
UkZpbHRlcihbMSwgJ2FiYycsIFtdXSwgWzFdKSB0aHJldyBUeXBlRXJyb3I6ICJUaGUgcHJvdmlk
ZWQgdmFsdWUgaXMgbm9uLWZpbml0ZSIuIAorUEFTUyA8IFtleGNlcHRpb25zLWNyZWF0ZUlJUkZp
bHRlcl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMTQgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gW2V4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5RGF0YV0gIAotRkFJTCAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAyIG91dCBvZiA1IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBnZXRGcmVxdWVuY3lSZXNwb25zZShudWxs
LCBuZXcgRmxvYXQzMkFycmF5KDEpLCBuZXcgRmxvYXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJy
b3I6ICJBcmd1bWVudCAxICgnZnJlcXVlbmN5SHonKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1
ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNT
ICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2UobmV3IEZsb2F0MzJBcnJheSgxKSwgbnVsbCwgbmV3IEZs
b2F0MzJBcnJheSgxKSkgdGhyZXcgVHlwZUVycm9yOiAiQXJndW1lbnQgMiAoJ21hZ1Jlc3BvbnNl
JykgdG8gSUlSRmlsdGVyTm9kZS5nZXRGcmVxdWVuY3lSZXNwb25zZSBtdXN0IGJlIGFuIGluc3Rh
bmNlIG9mIEZsb2F0MzJBcnJheSIuIAorUEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBG
bG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXkoMSksIG51bGwpIHRocmV3IFR5cGVFcnJv
cjogIkFyZ3VtZW50IDMgKCdwaGFzZVJlc3BvbnNlJykgdG8gSUlSRmlsdGVyTm9kZS5nZXRGcmVx
dWVuY3lSZXNwb25zZSBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIEZsb2F0MzJBcnJheSIuIAorUEFT
UyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBuZXcgRmxvYXQz
MkFycmF5KDEpLCBuZXcgRmxvYXQzMkFycmF5KDIwKSkgdGhyZXcgSW52YWxpZEFjY2Vzc0Vycm9y
OiAiQXJyYXlzIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGgiLiAKK1BBU1MgICBnZXRGcmVxdWVu
Y3lSZXNwb25zZShuZXcgRmxvYXQzMkFycmF5KDEwKSwgbmV3IEZsb2F0MzJBcnJheSgyMCksIG5l
dyBGbG9hdDMyQXJyYXkoMSkpIHRocmV3IEludmFsaWRBY2Nlc3NFcnJvcjogIkFycmF5cyBtdXN0
IGhhdmUgdGhlIHNhbWUgbGVuZ3RoIi4gCitQQVNTIDwgW2V4Y2VwdGlvbnMtZ2V0RnJlcXVlbmN5
RGF0YV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKK1BBU1Mg
IyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogNSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJm
aWx0ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFj
ZS9paXJmaWx0ZXItZXhwZWN0ZWQudHh0CmluZGV4IGRlYmRiN2UyZWU0NThiOWMyMTU5ZGU2ODdm
ZWEwOWFmNzMyY2MzN2YuLmJlZmIzYmE1YTFiYjM5YjI4MTY1ODM1NjkyY2FhMmI5NzU4YTVjMTIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmls
dGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJm
YWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQKQEAgLTEsNDEgKzEsNzAgQEAKIAogUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAotRkFJTCBFeGVjdXRpbmcgImNvZWZmaWNpZW50LW5v
cm1hbGl6YXRpb24iIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVl
OiBvYmplY3QgIlR5cGVFcnJvcjogVHlwZSBlcnJvciIKLUZBSUwgRXhlY3V0aW5nICJvbmUtemVy
byIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMC41LCAwLjVdLCBbMV0pJywgJ2NvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIm9uZS1wb2xlIiBw
cm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBl
RXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEsIGNdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICIwOiBsb3dwYXNzIiBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6
IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5i
Ml0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiMTogaGlnaHBhc3MiIHByb21pc2VfdGVzdDog
VW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4
dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEs
IGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZp
bmVkKSIKLUZBSUwgRXhlY3V0aW5nICIyOiBiYW5kcGFzcyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRs
ZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
cigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5h
MSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgot
RkFJTCBFeGVjdXRpbmcgIjM6IG5vdGNoIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVy
IGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAg
ICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEy
XSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1
dGluZyAiNDogYWxscGFzcyIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAg
W2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2Nv
bnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjU6
IGxvd3NoZWxmIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5i
MCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNjogaGlnaHNo
ZWxmIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29l
Zi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJ
SVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNzogcGVha2luZyIgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250
ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNv
ZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
JyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIm11bHRpLWNoYW5uZWwiIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIoZmYsIGZiKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5k
ZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICI0dGgtb3JkZXItaWlyIiBwcm9taXNlX3Rlc3Q6IFVu
aGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlS
RmlsdGVyKGNhc2NhZGUuZmYsIGNhc2NhZGUuZmIpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
JyBpcyB1bmRlZmluZWQpIgorUEFTUyBFeGVjdXRpbmcgImNvZWZmaWNpZW50LW5vcm1hbGl6YXRp
b24iIAorUEFTUyBFeGVjdXRpbmcgIm9uZS16ZXJvIiAKK1BBU1MgRXhlY3V0aW5nICJvbmUtcG9s
ZSIgCitQQVNTIEV4ZWN1dGluZyAiMDogbG93cGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiMTogaGln
aHBhc3MiIAorUEFTUyBFeGVjdXRpbmcgIjI6IGJhbmRwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICIz
OiBub3RjaCIgCitQQVNTIEV4ZWN1dGluZyAiNDogYWxscGFzcyIgCitQQVNTIEV4ZWN1dGluZyAi
NTogbG93c2hlbGYiIAorUEFTUyBFeGVjdXRpbmcgIjY6IGhpZ2hzaGVsZiIgCitQQVNTIEV4ZWN1
dGluZyAiNzogcGVha2luZyIgCitQQVNTIEV4ZWN1dGluZyAibXVsdGktY2hhbm5lbCIgCitQQVNT
IEV4ZWN1dGluZyAiNHRoLW9yZGVyLWlpciIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBb
Y29lZmZpY2llbnQtbm9ybWFsaXphdGlvbl0gIAotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlciB3aXRo
IG5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogImNv
bnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3Jl
YXRlSUlSRmlsdGVyKGZmLCBmYjEpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRl
ZmluZWQpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3Jl
YXRlSUlSRmlsdGVyIHdpdGggdW5ub3JtYWxpemVkIGNvZWZmaWNpZW50cyBpbmNvcnJlY3RseSB0
aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlv
bi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihmZiwgZmIyKScsICdjb250ZXh0LmNyZWF0
ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlciB3aXRoIG5vcm1hbGl6ZWQgY29lZmZpY2ll
bnRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIg
d2l0aCB1bm5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKK1BBU1MgICBPdXRwdXQgb2YgSUlSIGZpbHRlciB3aXRoIHVubm9ybWFsaXplZCBjb2VmZmlj
aWVudHMgZXF1YWxzIFsxLC0wLjg5OTk5OTk3NjE1ODE0MjEsMC44MTAwMDAwMDIzODQxODU4LC0w
LjcyODk5OTk3MjM0MzQ0NDgsMC42NTYwOTk5NzUxMDkxMDAzLC0wLjU5MDQ4OTk4MzU1ODY1NDgs
MC41MzE0NDA5NzMyODE4NjA0LC0wLjQ3ODI5NjkwNTc1NTk5NjcsMC40MzA0NjcyMTgxNjA2Mjkz
LC0wLjM4NzQyMDQ3NTQ4Mjk0MDcsMC4zNDg2Nzg0Mzk4NTU1NzU1NiwtMC4zMTM4MTA1ODY5Mjkz
MjEzLDAuMjgyNDI5NTQ2MTE3NzgyNiwtMC4yNTQxODY1NzA2NDQzNzg2NiwwLjIyODc2NzkzMTQ2
MTMzNDIzLC0wLjIwNTg5MTEzMjM1NDczNjMzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6Mi4xOTU4ZS0zOCwicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LiAKK1BBU1MgPCBbY29lZmZpY2llbnQtbm9ybWFsaXphdGlvbl0gQWxsIGFzc2VydGlv
bnMgcGFzc2VkLiAodG90YWwgMyBhc3NlcnRpb25zKSAKIFBBU1MgPiBbb25lLXplcm9dICAKK1BB
U1MgICBJSVIgMS16ZXJvIG91dHB1dCBlcXVhbHMgWzAuNSwwLjUsMCwwLDAsMCwwLDAsMCwwLDAs
MCwwLDAsMCwwLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0
ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbb25lLXplcm9d
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW29u
ZS1wb2xlXSAgCitQQVNTICAgSUlSIDEtcG9sZSBvdXRwdXQgZXF1YWxzIFsxLC0wLjksMC44MSwt
MC43MjkwMDAwMDAwMDAwMDAxLDAuNjU2MTAwMDAwMDAwMDAwMSwtMC41OTA0OTAwMDAwMDAwMDAy
LDAuNTMxNDQxMDAwMDAwMDAwMiwtMC40NzgyOTY5MDAwMDAwMDAxNCwwLjQzMDQ2NzIxMDAwMDAw
MDE2LC0wLjM4NzQyMDQ4OTAwMDAwMDE1LDAuMzQ4Njc4NDQwMTAwMDAwMTUsLTAuMzEzODEwNTk2
MDkwMDAwMTcsMC4yODI0Mjk1MzY0ODEwMDAxNywtMC4yNTQxODY1ODI4MzI5MDAxMywwLjIyODc2
NzkyNDU0OTYxMDEyLC0wLjIwNTg5MTEzMjA5NDY0OTEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoyLjc2NTdlLTgsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4gCitQQVNTIDwgW29uZS1wb2xlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0
b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFswOiBsb3dwYXNzXSAgCitQQVNTICAgSUlSRmls
dGVyIGZvciBCaXF1YWQgbG93cGFzcyBlcXVhbHMgWzAuMDAyMDY3NjIyNDk1ODE1MTU4LDAuMDEw
MjYyMDM4NTU4NzIxNTQyLDAuMDI2NDA4MzQ0NTA3MjE3NDA3LDAuMDUwMTQ2MTk2MDM3NTMwOSww
LjA4MTA2MjczNDEyNzA0NDY4LDAuMTE4Njk3NTE2NjIwMTU5MTUsMC4xNjI1NDc2NDc5NTMwMzM0
NSwwLjIxMjA3MzIwNjkwMTU1MDMsMC4yNjY3MDI2ODE3Nzk4NjE0NSwwLjMyNTgzODc0NDY0MDM1
MDM0LDAuMzg4ODYzNzEyNTQ5MjA5NiwwLjQ1NTE0NTQxODY0Mzk1MTQsMC41MjQwNDI4NDQ3NzIz
Mzg5LDAuNTk0OTExNDU2MTA4MDkzMywwLjY2NzEwOTA3MjIwODQwNDUsMC43NDAwMDA1NDU5Nzg1
NDYxLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDQ5ODM0fS4gCitQQVNTICAgU05SIGZv
ciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBsb3dwYXNzIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0
byA5MS4yMjEuIAorUEFTUyA8IFswOiBsb3dwYXNzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0
b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFsxOiBoaWdocGFzc10gIAorUEFTUyAgIElJUkZp
bHRlciBmb3IgQmlxdWFkIGhpZ2hwYXNzIGVxdWFscyBbMC45ODM2NzEwMDk1NDA1NTc5LDAuOTQ3
NDc4NjUyMDAwNDI3MiwwLjkwNDQ4MjQyNDI1OTE4NTgsMC44NTUyMzIxMTk1NjAyNDE3LDAuODAw
MzEzMjkzOTMzODY4NCwwLjc0MDM0MTk2MTM4MzgxOTYsMC42NzU5NTgyMTYxOTAzMzgxLDAuNjA3
ODIwMzMyMDUwMzIzNSwwLjUzNjU5ODkyMDgyMjE0MzYsMC40NjI5NzEwMzE2NjU4MDIsMC4zODc2
MTQyMjAzODA3ODMxLDAuMzExMjAxMDA2MTc0MDg3NSwwLjIzNDM5MzUzNzA0NDUyNTE1LDAuMTU3
ODM4MjcwMDY4MTY4NjQsMC4wODIxNjExNjU3NzM4Njg1NiwwLjAwNzk2MzA1NjY3NjA4OTc2NC4u
Ll0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQi
OjAuMDAwMDAyOSwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDN9LiAKK1BBU1MgICBTTlIgZm9y
IElJUkZJbHRlciBmb3IgQmlxdWFkIGhpZ2hwYXNzIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0
byAxMDUuNDU5LiAKK1BBU1MgPCBbMTogaGlnaHBhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4g
KHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzI6IGJhbmRwYXNzXSAgCitQQVNTICAgSUlS
RmlsdGVyIGZvciBCaXF1YWQgYmFuZHBhc3MgZXF1YWxzIFswLjAwNDU1NDI0NDY4OTY0MzM4Myww
LjAxMzU4MzIxNTg4NDg2NDMzLDAuMDIyNDE2NTAwMzc0Njc0Nzk3LDAuMDMwOTgyMTA1MDYxNDEx
ODU4LDAuMDM5MjEwOTMwNDY2NjUxOTE3LDAuMDQ3MDM3MzE0NjIzNTk0Mjg0LDAuMDU0Mzk5NTYx
MTM2OTYwOTgsMC4wNjEyNDA0MDg1Njk1NzQzNTYsMC4wNjc1MDc0NjgxNjM5NjcxMywwLjA3MzE1
MzYyOTg5OTAyNDk2LDAuMDc4MTM3MzgyODY0OTUyMDksMC4wODI0MjMxNTA1MzkzOTgyLDAuMDg1
OTgxNDgwNzc3MjYzNjQsMC4wODg3ODkyOTkxMzA0Mzk3NiwwLjA5MDgyOTk2ODQ1MjQ1MzYxLDAu
MDkyMDkzNDUyODExMjQxMTUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7
ImFic29sdXRlVGhyZXNob2xkIjoyZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDA4N30uIAor
UEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQgYmFuZHBhc3MgaXMgZ3JlYXRlciB0
aGFuIG9yIGVxdWFsIHRvIDEwNC4wNi4gCitQQVNTIDwgWzI6IGJhbmRwYXNzXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFszOiBub3RjaF0gIAor
UEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIG5vdGNoIGVxdWFscyBbMC45OTU0NDU3MjgzMDIw
MDIsMC45ODY0MTY3NTcxMDY3ODEsMC45Nzc1ODM1Mjc1NjUwMDI0LDAuOTY5MDE3OTIyODc4MjY1
NCwwLjk2MDc4OTA4NDQzNDUwOTMsMC45NTI5NjI2OTY1NTIyNzY2LDAuOTQ1NjAwNDUwMDM4OTA5
OSwwLjkzODc1OTU2NTM1MzM5MzYsMC45MzI0OTI1NTQxODc3NzQ3LDAuOTI2ODQ2Mzg1MDAyMTM2
MiwwLjkyMTg2MjYwMjIzMzg4NjcsMC45MTc1NzY4NDk0NjA2MDE4LDAuOTE0MDE4NTExNzcyMTU1
OCwwLjkxMTIxMDcxNTc3MDcyMTQsMC45MDkxNzAwMzE1NDc1NDY0LDAuOTA3OTA2NTMyMjg3NTk3
Ny4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hv
bGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDA0MjJ9LiAKK1BBU1MgICBTTlIgZm9yIElJ
UkZJbHRlciBmb3IgQmlxdWFkIG5vdGNoIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS4z
MTIuIAorUEFTUyA8IFszOiBub3RjaF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBh
c3NlcnRpb25zKSAKIFBBU1MgPiBbNDogYWxscGFzc10gIAorUEFTUyAgIElJUkZpbHRlciBmb3Ig
QmlxdWFkIGFsbHBhc3MgZXF1YWxzIFswLjk5MDg5MTUxNjIwODY0ODcsMC45NzI4MzM1NzM4MTgy
MDY4LDAuOTU1MTY2OTk1NTI1MzYwMSwwLjkzODAzNTc4NjE1MTg4NiwwLjkyMTU3ODE2ODg2OTAx
ODYsMC45MDU5MjUzOTMxMDQ1NTMyLDAuODkxMjAwOTAwMDc3ODE5OCwwLjg3NzUxOTE5MDMxMTQz
MTksMC44NjQ5ODUwNDg3NzA5MDQ1LDAuODUzNjkyNzcwMDA0MjcyNSwwLjg0MzcyNTIwNDQ2Nzc3
MzQsMC44MzUxNTM2OTg5MjEyMDM2LDAuODI4MDM3MDIzNTQ0MzExNSwwLjgyMjQyMTQzMTU0MTQ0
MjksMC44MTgzNDAwNjMwOTUwOTI4LDAuODE1ODEzMTI0MTc5ODQwMS4uLl0gd2l0aCBhbiBlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhy
ZXNob2xkIjowLjAwMDA0MzF9LiAKK1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFk
IGFsbHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDkxLjMxOS4gCitQQVNTIDwgWzQ6
IGFsbHBhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQ
QVNTID4gWzU6IGxvd3NoZWxmXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbG93c2hl
bGYgZXF1YWxzIFsxLjAzODQ4MDI4MTgyOTgzNCwxLjExNjU3MjI2MDg1NjYyODQsMS4xOTY2NDQw
Njc3NjQyODIyLDEuMjc4MTUxNTEyMTQ1OTk2LDEuMzYwNTk0NjMwMjQxMzk0LDEuNDQzNTE1NDE5
OTYwMDIyLDEuNTI2NDk2MTcxOTUxMjk0LDEuNjA5MTU3NjgxNDY1MTQ5LDEuNjkxMTU3MTAyNTg0
ODM4OSwxLjc3MjE4NjYzNjkyNDc0MzcsMS44NTE5NzA5MTEwMjYwMDEsMS45MzAyNjYyNjExMDA3
NjksMi4wMDY4NTc4NzIwMDkyNzczLDIuMDgxNTU4NDY1OTU3NjQxNiwyLjE1NDIwNjk5MTE5NTY3
ODcsMi4yMjQ2NjYxMTg2MjE4MjYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMjk4fS4g
CitQQVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBsb3dzaGVsZiBpcyBncmVhdGVy
IHRoYW4gb3IgZXF1YWwgdG8gOTAuNjA5LiAKK1BBU1MgPCBbNTogbG93c2hlbGZdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzY6IGhpZ2hzaGVs
Zl0gIAorUEFTUyAgIElJUkZpbHRlciBmb3IgQmlxdWFkIGhpZ2hzaGVsZiBlcXVhbHMgWzMuMDQ1
MTAxNDA0MTkwMDYzNSwyLjgxNjExNDY2NDA3Nzc1OSwyLjU5ODU0MjQ1MTg1ODUyMDUsMi4zOTM1
NTc3ODY5NDE1MjgzLDIuMjAxOTc1MzQ1NjExNTcyMywyLjAyNDI5Njk5ODk3NzY2MSwxLjg2MDc1
Mzc3NDY0Mjk0NDMsMS43MTEzNDY2MjYyODE3MzgzLDEuNTc1ODgyMzE1NjM1NjgxMiwxLjQ1NDAw
NzAyOTUzMzM4NjIsMS4zNDUyMzY4OTc0Njg1NjcsMS4yNDg5ODQ4MTM2OTAxODU1LDEuMTY0NTg1
MzUxOTQzOTY5NywxLjA5MTMxNTc0NjMwNzM3MywxLjAyODQxNTY3OTkzMTY0MDYsMC45NzUxMDI5
NjEwNjMzODUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMTI0fS4gCitQQVNTICAgU05S
IGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBoaWdoc2hlbGYgaXMgZ3JlYXRlciB0aGFuIG9yIGVx
dWFsIHRvIDEwMy4xNTkuIAorUEFTUyA8IFs2OiBoaWdoc2hlbGZdIEFsbCBhc3NlcnRpb25zIHBh
c3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzc6IHBlYWtpbmddICAKK1BBU1Mg
ICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBwZWFraW5nIGVxdWFscyBbMS4wMDU1NDg3MTU1OTE0MzA3
LDEuMDE2NTcxMjgzMzQwNDU0LDEuMDI3Mzk4NTg2MjczMTkzNCwxLjAzNzk0MTA5ODIxMzE5NTgs
MS4wNDgxMTE5MTU1ODgzNzksMS4wNTc4Mjc5NDk1MjM5MjU4LDEuMDY3MDEwMTY0MjYwODY0Mywx
LjA3NTU4NDQxMTYyMTA5MzgsMS4wODM0ODIxNDYyNjMxMjI2LDEuMDkwNjQwNzgzMzA5OTM2NSwx
LjA5NzAwNDA1NTk3Njg2NzcsMS4xMDI1MjI5NjkyNDU5MTA2LDEuMTA3MTU1NDQyMjM3ODU0LDEu
MTEwODY3NTAwMzA1MTc1OCwxLjExMzYzMjY3ODk4NTU5NTcsMS4xMTU0MzI3MzkyNTc4MTI1Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDUwNX0uIAorUEFTUyAgIFNOUiBmb3IgSUlSRkls
dGVyIGZvciBCaXF1YWQgcGVha2luZyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gOTEuNTA0
LiAKK1BBU1MgPCBbNzogcGVha2luZ10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBh
c3NlcnRpb25zKSAKIFBBU1MgPiBbbXVsdGktY2hhbm5lbF0gIAorUEFTUyAgIE1heCBkaWZmZXJl
bmNlIGJldHdlZW4gSUlSIGFuZCBCaXF1YWQgb24gY2hhbm5lbCAwIGlzIGxlc3MgdGhhbiBvciBl
cXVhbCB0byAwLjAwMDAzNzY3MS4gCitQQVNTICAgTWF4IGRpZmZlcmVuY2UgYmV0d2VlbiBJSVIg
YW5kIEJpcXVhZCBvbiBjaGFubmVsIDEgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDAuMDAwMDMw
MDcxLiAKK1BBU1MgICBNYXggZGlmZmVyZW5jZSBiZXR3ZWVuIElJUiBhbmQgQmlxdWFkIG9uIGNo
YW5uZWwgMiBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMC4wMDAwMjYyNDEuIAorUEFTUyA8IFtt
dWx0aS1jaGFubmVsXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMp
IAogUEFTUyA+IFs0dGgtb3JkZXItaWlyXSAgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklO
SVNIRUQ6IDEgb3V0IG9mIDEzIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICA0LXRoIG9yZGVyIElJUkZpbHRlciAoYmlxdWFkIHJl
ZikgZXF1YWxzIFswLjAwMDAwNDE4MTcxOTMwNTA1MTk1NiwwLjAwMDAzMjk2NTc5NTk4MDk5OTI0
NiwwLjAwMDEyOTM5NzY4MjAzMDY4NTI1LDAuMDAwMzQ3NzM2NTgyNjI1NjU3MywwLjAwMDczODcy
NzI3ODA3NjExMjMsMC4wMDEzNDQ2ODk3NTAxMTI1OTMyLDAuMDAyMTk5Mzc2MjM0Nzg0NzIyMyww
LjAwMzMyNzk1NTk1NzUwMjEyNjcsMC4wMDQ3NDcxMTY5MzgyMzMzNzU1LDAuMDA2NDY1MjgxODI1
NTEyNjQ4LDAuMDA4NDgyOTIyNzk5ODg1MjczLDAuMDEwNzkyOTcwNjU3MzQ4NjMzLDAuMDEzMzgx
MzAzMjg4MDQyNTQ1LDAuMDE2MjI3MzEyMzg2MDM1OTIsMC4wMTkzMDQ1MTk1MTkyMDk4NjIsMC4w
MjI1ODEyNTEzMzgxMjQyNzUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7
ImFic29sdXRlVGhyZXNob2xkIjoxLjU5ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwMjEx
fS4gCitQQVNTICAgU05SIG9mIDQtdGggb3JkZXIgSUlSRmlsdGVyIChiaXF1YWQgcmVmKSBpcyBn
cmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTA4Ljk0Ny4gCitQQVNTIDwgWzR0aC1vcmRlci1paXJd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNTICMgQVVE
SVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEzIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRl
ci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZp
bHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3Rl
ZC50eHQKaW5kZXggYzFjMTZiNDU2Yjc0M2VjNjdkYmQ2YWQwZGNiMjQzZDc3ZTRhZTJjYS4uODNj
NGQ4NGI1NTkzNWVhMjZjODM5MTE0YmVjOWNmMTBhNjNlNjVlMSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVz
cG9uc2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRl
cmZhY2UvaWlyZmlsdGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dApAQCAtMSwx
MiArMSwyMiBAQAogCiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCi1GQUlMIEV4
ZWN1dGluZyAiMS1wb2xlIElJUiIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBu
b3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCAtMC45
XSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1
dGluZyAiY29tcGFyZSBJSVIgYW5kIGJpcXVhZCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcigKLSAg
ICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYu
YTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhl
Y3V0aW5nICJnZXRGcmVxdWVuY3lSZXNwb25zZSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFy
aWFibGU6IElJUkZpbHRlck5vZGUiCitQQVNTIEV4ZWN1dGluZyAiMS1wb2xlIElJUiIgCitQQVNT
IEV4ZWN1dGluZyAiY29tcGFyZSBJSVIgYW5kIGJpcXVhZCIgCitQQVNTIEV4ZWN1dGluZyAiZ2V0
RnJlcXVlbmN5UmVzcG9uc2UiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gWzEtcG9sZSBJ
SVJdICAKK1BBU1MgICAxLXBvbGUgSUlSIE1hZ25pdHVkZSBSZXNwb25zZSBlcXVhbHMgWzEwLDku
OTk1NTYxNTk5NzMxNDQ1LDkuOTgyMjgxNjg0ODc1NDg4LDkuOTYwMjY2MTEzMjgxMjUsOS45Mjk2
ODg0NTM2NzQzMTYsOS44OTA3ODUyMTcyODUxNTYsOS44NDM4NTIwNDMxNTE4NTUsOS43ODkyMzg5
Mjk3NDg1MzUsOS43MjczNDE2NTE5MTY1MDQsOS42NTg1OTIyMjQxMjEwOTQsOS41ODM0NTUwODU3
NTQzOTUsOS41MDI0MTg1MTgwNjY0MDYsOS40MTU5ODMyMDAwNzMyNDIsOS4zMjQ2NTkzNDc1MzQx
OCw5LjIyODk1ODEyOTg4MjgxMiw5LjEyOTM4NDA0MDgzMjUyLi4uXSB3aXRoIGFuIGVsZW1lbnQt
d2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDI4NjExLCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIDEtcG9sZSBJSVIgUGhhc2UgUmVzcG9uc2UgZXF1
YWxzIFswLC0wLjAyODI2NTUwMjMwMzgzODczLC0wLjA1NjQ3ODEyNDExMTg5MDc5LC0wLjA4NDU4
NTU0NzQ0NzIwNDU5LC0wLjExMjUzNjU1NzAxODc1Njg3LC0wLjE0MDI4MTU3MjkzNzk2NTQsLTAu
MTY3NzczMDk3NzUzNTI0NzgsLTAuMTk0OTY2MTY3MjExNTMyNiwtMC4yMjE4MTg2ODU1MzE2MTYy
LC0wLjI0ODI5MTc3NTU4NDIyMDksLTAuMjc0MzQ5OTU3NzA0NTQ0MDcsLTAuMjk5OTYxMjM5MDk5
NTAyNTYsLTAuMzI1MDk3NDQxNjczMjc4OCwtMC4zNDk3MzM4ODkxMDI5MzU4LC0wLjM3Mzg0OTcx
OTc2MjgwMjEsLTAuMzk3NDI3NDY5NDkxOTU4Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNzg4MmUtNywicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LiAKK1BBU1MgPCBbMS1wb2xlIElJUl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbY29tcGFyZSBJSVIgYW5kIGJpcXVhZF0gIAorUEFT
UyAgIElJUiBNYWduaXR1ZGUgUmVzcG9uc2UgZXF1YWxzIFsxLDEuMDAyODM0NTU4NDg2OTM4NSwx
LjAxMTM0Nzg4OTkwMDIwNzUsMS4wMjU1NTQ4OTU0MDEwMDEsMS4wNDU0MjgyNzYwNjIwMTE3LDEu
MDcwODA1MzExMjAzMDAzLDEuMTAxMjI1NDk1MzM4NDQsMS4xMzU2NzE5NzMyMjg0NTQ2LDEuMTcy
MTk1MDc2OTQyNDQzOCwxLjIwNzQ1NDMyMzc2ODYxNTcsMS4yMzYzNTYzNzc2MDE2MjM1LDEuMjUy
MjA5NzgyNjAwNDAyOCwxLjI0Nzk2MjIzNjQwNDQxOSwxLjIxODY0NDYxODk4ODAzNywxLjE2Mzkw
NTg1ODk5MzUzMDMsMS4wODg2NjQ4ODkzMzU2MzIzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0
b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMjc0MTksInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4gCitQQVNTICAgSUlSIFBoYXNlIFJlc3BvbnNlIGVxdWFscyBbMCwtMC4wNjEz
MTUzMjQxNTc0NzY0MjUsLTAuMTIzOTExMzczMzE3MjQxNjcsLTAuMTg5MTIyMjQ0NzE1NjkwNiwt
MC4yNTgzODY5Mzk3NjQwMjI4LC0wLjMzMzI5Mzc5NTU4NTYzMjMsLTAuNDE1NjA3MDY0OTYyMzg3
MSwtMC41MDcyNTAyNDkzODU4MzM3LC0wLjYxMDIwMjU1MDg4ODA2MTUsLTAuNzI2MjQwMDM4ODcx
NzY1MSwtMC44NTY0NDkxODY4MDE5MTA0LC0xLjAwMDUwNjE2MjY0MzQzMjYsLTEuMTU1OTI3MzAw
NDUzMTg2LC0xLjMxNzc4MDk3MTUyNzA5OTYsLTEuNDc5Mzg5NTQ4MzAxNjk2OCwtMS42MzM5NTk3
NzAyMDI2MzY3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0
ZVRocmVzaG9sZCI6MC4wMDAwMjc2NTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTIDwg
W2NvbXBhcmUgSUlSIGFuZCBiaXF1YWRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIg
YXNzZXJ0aW9ucykgCiBQQVNTID4gW2dldEZyZXF1ZW5jeVJlc3BvbnNlXSBUZXN0IG91dC1vZi1i
b3VuZHMgZnJlcXVlbmN5IHZhbHVlcyAKK1BBU1MgICBNYWduaXR1ZGUgcmVzcG9uc2UgYXQgZnJl
cXVlbmN5IC0xIGlzIE5hTi4gCitQQVNTICAgTWFnbml0dWRlIHJlc3BvbnNlIGF0IGZyZXF1ZW5j
eSAyNDAwMSBpcyBOYU4uIAorUEFTUyAgIFBoYXNlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAtMSBp
cyBOYU4uIAorUEFTUyAgIFBoYXNlIHJlc3BvbnNlIGF0IGZyZXF1ZW5jeSAyNDAwMSBpcyBOYU4u
IAorUEFTUyA8IFtnZXRGcmVxdWVuY3lSZXNwb25zZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgNCBhc3NlcnRpb25zKSAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDog
MyB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1p
aXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUt
ZXhwZWN0ZWQudHh0CmluZGV4IGJmNmRmY2Y4NmFmY2ZhNTFmZWFhYjA1YWYwYmYwMGUxNjlhMTg4
MDIuLjEyZTcxNzAyMTAyZDdjYzUzYTFkNjI0ZDIxY2Y1ZGE2NmE4NDE2ZGEgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvdGVzdC1paXJmaWx0ZXJub2Rl
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNl
L3Rlc3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50eHQKQEAgLTEsMjIgKzEsMTAgQEAKIAogUEFT
UyBJSVJGaWx0ZXJOb2RlIGNvZWZmaWNpZW50cyBhcmUgY2hlY2tlZCBwcm9wZXJseSAKLUZBSUwg
ZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgZW1wdHkgYXNzZXJ0X3Rocm93c19k
b206IGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihh
cmcxLCBhcmcyKQotICAgICAgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJ
UkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwg
YXJnMiknLCAnYWMuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBh
IERPTUV4Y2VwdGlvbiBOb3RTdXBwb3J0ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFs
IHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgOQotRkFJTCBmZWVkYmFjayBjb2VmZmljaWVudHMgY2Fu
IG5vdCBiZSBlbXB0eSBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsK
LSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBv
YmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAo
SW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXIn
IGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVy
cm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1G
QUlMIG1vcmUgdGhhbiAyMCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSB1c2Vk
IGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5j
cmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVy
cm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRl
SUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVk
KSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gTm90U3VwcG9ydGVkRXJyb3I6IHByb3BlcnR5
ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDkKLUZBSUwgbW9yZSB0aGFu
IDIwIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIHVzZWQgYXNzZXJ0X3Rocm93c19k
b206IGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7Ci0gICAgICAgIGFjLmNyZWF0ZUlJUkZpbHRlcihh
cmcxLCBhcmcyKQotICAgICAgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IGFjLmNyZWF0ZUlJ
UkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwg
YXJnMiknLCAnYWMuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIiB0aGF0IGlzIG5vdCBh
IERPTUV4Y2VwdGlvbiBOb3RTdXBwb3J0ZWRFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFs
IHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgOQotRkFJTCBhdCBsZWFzdCBvbmUgZmVlZGZvcndhcmQg
Y29lZmZpY2llbnQgbXVzdCBiZSBub24temVybyBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24g
ImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0g
ICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5j
cmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9u
IEludmFsaWRTdGF0ZUVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVk
LCBleHBlY3RlZCAxMQotRkFJTCB0aGUgZmlyc3QgZmVlZGJhY2sgY29lZmZpY2llbnQgbXVzdCBi
ZSBub24temVybyBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAg
ICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmpl
Y3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlz
IHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9y
OiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAxMQotRkFJ
TCBJSVJGaWx0ZXJOb2RlIGdldEZyZXF1ZW5jeVJlc3BvbnNlIGhhbmRsZXMgaW52YWxpZCBmcmVx
dWVuY2llcyBwcm9wZXJseSBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnYWMuY3JlYXRlSUlSRmlsdGVyKFswLjUsIDAuNV0sIFsxLjBdKScsICdhYy5jcmVhdGVJSVJG
aWx0ZXInIGlzIHVuZGVmaW5lZCkKK1BBU1MgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBu
b3QgYmUgZW1wdHkgCitQQVNTIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIGVtcHR5
IAorUEFTUyBtb3JlIHRoYW4gMjAgZmVlZGZvcndhcmQgY29lZmZpY2llbnRzIGNhbiBub3QgYmUg
dXNlZCAKK1BBU1MgbW9yZSB0aGFuIDIwIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4gbm90IGJl
IHVzZWQgCitQQVNTIGF0IGxlYXN0IG9uZSBmZWVkZm9yd2FyZCBjb2VmZmljaWVudCBtdXN0IGJl
IG5vbi16ZXJvIAorUEFTUyB0aGUgZmlyc3QgZmVlZGJhY2sgY29lZmZpY2llbnQgbXVzdCBiZSBu
b24temVybyAKK1BBU1MgSUlSRmlsdGVyTm9kZSBnZXRGcmVxdWVuY3lSZXNwb25zZSBoYW5kbGVz
IGludmFsaWQgZnJlcXVlbmNpZXMgcHJvcGVybHkgCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407315</attachid>
            <date>2020-08-26 11:43:37 -0700</date>
            <delta_ts>2020-08-26 13:09:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215810-20200826114336.patch</filename>
            <type>text/plain</type>
            <size>126458</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwN2JmZmEwYmRjNzhm
MzRhZWQ1YzMyZWExMDMyY2ZkMjIxYjY0Ni4uYjk4MzkyNzc4YzZjMWZiZjJjY2MxZGRjNzVmZjYw
MjIzM2Q5MTg5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIwLTA4LTI1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRl
cmZhY2UgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOgorICAg
ICAgICAtIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdWRpby8jaWlyZmlsdGVybm9kZQorCisg
ICAgICAgIFRoZSBpbXBsZW1lbnRhdGlvbiBpcyBiYXNlZCBvbiBDaHJvbWl1bSdzLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAg
KiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udmVydEVudW1lcmF0aW9uVG9TdHJpbmcp
OgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9Ob2RlOjpkaXNhYmxlT3V0cHV0c0lmTmVjZXNzYXJ5
KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpC
YXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJSVJGaWx0ZXIpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFz
ZUF1ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9JSVJEU1BLZXJu
ZWwuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6SUlSRFNQS2Vy
bmVsKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9u
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SUlSRFNQS2VybmVsOjpwcm9jZXNzKToKKyAgICAgICAg
KFdlYkNvcmU6OklJUkRTUEtlcm5lbDo6cmVzZXQpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vSUlSRFNQS2VybmVsLmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6aXNGaWx0ZXJTdGFibGUp
OgorICAgICAgICAoV2ViQ29yZTo6SUlSRmlsdGVyTm9kZTo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklJUkZpbHRlck5vZGU6OklJUkZpbHRlck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlv
L0lJUkZpbHRlck9wdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJGaWx0ZXJPcHRpb25zLmlkbDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9J
SVJQcm9jZXNzb3IuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKToKKyAgICAgICAgKFdlYkNvcmU6OklJUlByb2Nlc3Nvcjo6fklJUlByb2Nl
c3Nvcik6CisgICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OmNyZWF0ZUtlcm5lbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpJSVJQcm9jZXNzb3I6OnByb2Nlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6SUlSUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuaDogQWRkZWQuCisgICAgICAgICogU291cmNlcy50eHQ6
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9h
dWRpby9JSVJGaWx0ZXIuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmV2YWx1YXRlUG9s
eW5vbWlhbCk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OklJUkZpbHRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OnJlc2V0KToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZp
bHRlcjo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpJSVJGaWx0ZXI6OmdldEZyZXF1ZW5j
eVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OklJUkZpbHRlcjo6dGFpbFRpbWUpOgorICAg
ICAgICAqIHBsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oOgorCiAyMDIwLTA4LTI1ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU09VUF0gSW5pdGlh
bGl6ZSBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5IGZyb20gbmV0d29yayBzZXNzaW9uIGluaXRpYWxp
emF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJkNGY4YmU3NmQ1MzFkMDMyNjNjMTYwMjY0
MjYzOGU4YWYxMzNhNTkuLjI5ZjExN2ZjOWVjOWU5YWUwOTk2Y2JlMmMyNzA2YzQ4M2NjZWRkMzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC00ODgsNiArNDg4LDggQEAgc2V0KFdlYkNvcmVfTk9O
X1NWR19JRExfRklMRVMKICAgICBNb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck9w
dGlvbnMuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICAgICBNb2R1bGVz
L3dlYmF1ZGlvL0dhaW5PcHRpb25zLmlkbAorICAgIE1vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVy
Tm9kZS5pZGwKKyAgICBNb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRsCiAgICAg
TW9kdWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsCiAgICAgTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMjU0MmVm
MWM1Y2FhOGQ3MGY4MTAzNzRiMmIwYzJhOWI3YTAwOTU4Mi4uMjVkYzcwYzEwMGZmZmFjNGQyZjgy
NjI5NWQyNWM1NjhiNTA4YzU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMtaW5wdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy1pbnB1dC54Y2ZpbGVsaXN0CkBAIC0zMzksNiArMzM5LDggQEAgJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbAogJChQUk9KRUNU
X0RJUikvTW9kdWxlcy93ZWJhdWRpby9HYWluTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVs
ZXMvd2ViYXVkaW8vR2Fpbk9wdGlvbnMuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1
ZGlvL0lJUkZpbHRlck5vZGUuaWRsCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaWRsCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGwKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvd2ViYXVk
aW8vTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmlkbAogJChQUk9KRUNUX0RJUikvTW9k
dWxlcy93ZWJhdWRpby9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9T
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAyNzkx
ZTRkMTk5YzM1MmMxOGY0NTI0NzEwMDAxOWE4MGFjNTE3MmE4Li5hNTYwMDM0MzNkOTU1NjE2MTMw
ODJhNDliMjMxYmYwY2YzZTkyNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdApAQCAtOTgyLDYgKzk4MiwxMCBAQCAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0lEQlRyYW5zYWN0aW9uTW9kZS5jcHAK
ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSURCVHJhbnNh
Y3Rpb25Nb2RlLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaAorJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2RlLmNwcAorJChC
VUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNJSVJGaWx0ZXJOb2Rl
LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSUlSRmls
dGVyT3B0aW9ucy5jcHAKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTSUlSRmlsdGVyT3B0aW9ucy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0lkbGVEZWFkbGluZS5jcHAKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZURlYWRsaW5lLmgKICQoQlVJTFRfUFJPRFVDVFNf
RElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSWRsZVJlcXVlc3RDYWxsYmFjay5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2Vi
Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGJhMTA3OTI1MzRiYjNmMmQ1N2U2MjIxMWQ2
MDMxNjYzN2Y2ZTY5MmQuLmUyZmI4YTkyNTU4NGYzMTAyZmRhY2I0NDdkMmU3NDNmM2ZkNTQzOWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDIwLDYgKzQyMCw4IEBAIEpTX0JJ
TkRJTkdfSURMUyA9IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3ND
b21wcmVzc29yT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9H
YWluTm9kZS5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9HYWluT3B0aW9u
cy5pZGwgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmlk
bCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck9wdGlvbnMuaWRs
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50QXVkaW9Tb3Vy
Y2VOb2RlLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlhRWxlbWVu
dEF1ZGlvU291cmNlT3B0aW9ucy5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRp
by9NZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCBcCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5jcHAKaW5kZXggNDFkZDEzZGVhN2U3Y2E3NDc0
NmI2NjQ1OThkMDNkMDBkYjQxZjVhOS4uYmIyYWU5MGU0ZGIyYTcwYzU1ZDc0MDM0N2I5MGY0MGQ3
NjFhZjA4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRp
b05vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Ob2Rl
LmNwcApAQCAtOTQsNyArOTQsOCBAQCBTdHJpbmcgY29udmVydEVudW1lcmF0aW9uVG9TdHJpbmco
QXVkaW9Ob2RlOjpOb2RlVHlwZSBlbnVtZXJhdGlvblZhbHVlKQogICAgIHN0YXRpY19hc3NlcnQo
c3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlQmFzaWNJbnNwZWN0b3IpID09
IDE4LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUJhc2ljSW5zcGVjdG9yIGlzIG5vdCAxOCBhcyBleHBl
Y3RlZCIpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6
Ok5vZGVUeXBlQ29uc3RhbnQpID09IDE5LCAiQXVkaW9Ob2RlOjpOb2RlVHlwZUVuZCBpcyBub3Qg
MTkgYXMgZXhwZWN0ZWQiKTsKICAgICBzdGF0aWNfYXNzZXJ0KHN0YXRpY19jYXN0PHNpemVfdD4o
QXVkaW9Ob2RlOjpOb2RlVHlwZVN0ZXJlbykgPT0gMjAsICJBdWRpb05vZGU6Ok5vZGVUeXBlU3Rl
cmVvIGlzIG5vdCAyMCBhcyBleHBlY3RlZCIpOwotICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nh
c3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBlRW5kKSA9PSAyMSwgIkF1ZGlvTm9kZTo6Tm9k
ZVR5cGVDb25zdGFudCBpcyBub3QgMjEgYXMgZXhwZWN0ZWQiKTsKKyAgICBzdGF0aWNfYXNzZXJ0
KHN0YXRpY19jYXN0PHNpemVfdD4oQXVkaW9Ob2RlOjpOb2RlVHlwZUlJUkZpbHRlcikgPT0gMjEs
ICJBdWRpb05vZGU6Ok5vZGVUeXBlSUlSRmlsdGVyIGlzIG5vdCAyMSBhcyBleHBlY3RlZCIpOwor
ICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8c2l6ZV90PihBdWRpb05vZGU6Ok5vZGVUeXBl
RW5kKSA9PSAyMiwgIkF1ZGlvTm9kZTo6Tm9kZVR5cGVDb25zdGFudCBpcyBub3QgMjIgYXMgZXhw
ZWN0ZWQiKTsKIAogICAgIEFTU0VSVChzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9uVmFs
dWUpIDwgV1RGX0FSUkFZX0xFTkdUSCh2YWx1ZXMpKTsKICAgICAKQEAgLTU1Myw3ICs1NTQsNyBA
QCB2b2lkIEF1ZGlvTm9kZTo6ZGlzYWJsZU91dHB1dHNJZk5lY2Vzc2FyeSgpCiAgICAgICAgIC8v
IGxvbmdlciBhbnkgYWN0aXZlIGNvbm5lY3Rpb25zLgogICAgICAgICAvLyBBbHNvLCBXYXZlU2hh
cGVyTm9kZSBtYXkgcHJvZHVjZSBub24tc2lsZW5jZSBldmVuIHdoZW4gaXQgbm8gbG9uZ2VyIGhh
cyBhbnkgb3V0cHV0LiBGb3IgdGhpcyByZWFzb24sIHdlIGNhbm5vdAogICAgICAgICAvLyBkaXNh
YmxlIGl0IGVpdGhlci4KLSAgICAgICAgaWYgKG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVDb252b2x2
ZXIgJiYgbm9kZVR5cGUoKSAhPSBOb2RlVHlwZURlbGF5ICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5
cGVXYXZlU2hhcGVyKSB7CisgICAgICAgIGlmIChub2RlVHlwZSgpICE9IE5vZGVUeXBlQ29udm9s
dmVyICYmIG5vZGVUeXBlKCkgIT0gTm9kZVR5cGVEZWxheSAmJiBub2RlVHlwZSgpICE9IE5vZGVU
eXBlV2F2ZVNoYXBlciAmJiBub2RlVHlwZSgpICE9IE5vZGVUeXBlSUlSRmlsdGVyKSB7CiAgICAg
ICAgICAgICBtX2lzRGlzYWJsZWQgPSB0cnVlOwogICAgICAgICAgICAgZm9yIChhdXRvJiBvdXRw
dXQgOiBtX291dHB1dHMpCiAgICAgICAgICAgICAgICAgb3V0cHV0LT5kaXNhYmxlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvTm9kZS5oIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb05vZGUuaAppbmRleCA3MWJjYmRjNWM2
NGNiYTE1MWE4YzdlYzU1YWFjM2Q4ZDExYWVjN2M3Li5mOTY1ZWEwNTJkZDk5OTYxN2EwMzYwYjM3
ZGI5ZmE0OWZjYjBmYzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0F1ZGlvTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVk
aW9Ob2RlLmgKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBOb2RlVHlwZUJhc2lj
SW5zcGVjdG9yLAogICAgICAgICBOb2RlVHlwZUNvbnN0YW50LAogICAgICAgICBOb2RlVHlwZVN0
ZXJlbywKKyAgICAgICAgTm9kZVR5cGVJSVJGaWx0ZXIsCiAgICAgICAgIE5vZGVUeXBlRW5kCiAg
ICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNl
QXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1
ZGlvQ29udGV4dC5jcHAKaW5kZXggODI1NDRjNmE2NGMyOWUzZDk0NTE2YTMzZjdmNzQzMWI4MWRl
ZWVlYi4uMjNlNzZkOGYxNTE0YWJlMDg1M2Y3Y2Y1MzE4N2JhY2I0ZTcxMzg2MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3Bw
CkBAIC02MCw2ICs2MCw4IEBACiAjaW5jbHVkZSAiR2VuZXJpY0V2ZW50UXVldWUuaCIKICNpbmNs
dWRlICJIUlRGRGF0YWJhc2VMb2FkZXIuaCIKICNpbmNsdWRlICJIUlRGUGFubmVyLmgiCisjaW5j
bHVkZSAiSUlSRmlsdGVyTm9kZS5oIgorI2luY2x1ZGUgIklJUkZpbHRlck9wdGlvbnMuaCIKICNp
bmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQu
aCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCkBAIC02MzAsNiArNjMyLDE3IEBAIEV4Y2VwdGlvbk9y
PFJlZjxTdGVyZW9QYW5uZXJOb2RlPj4gQmFzZUF1ZGlvQ29udGV4dDo6Y3JlYXRlU3RlcmVvUGFu
bmVyKCkKICAgICByZXR1cm4gU3RlcmVvUGFubmVyTm9kZTo6Y3JlYXRlKCp0aGlzKTsKIH0KIAor
RXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5vZGU+PiBCYXNlQXVkaW9Db250ZXh0OjpjcmVhdGVJ
SVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
VmVjdG9yPGRvdWJsZT4mJiBmZWVkZm9yd2FyZCwgVmVjdG9yPGRvdWJsZT4mJiBmZWVkYmFjaykK
K3sKKyAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOworCisgICAgQVNTRVJUKGlzTWFpblRo
cmVhZCgpKTsKKyAgICBJSVJGaWx0ZXJPcHRpb25zIG9wdGlvbnM7CisgICAgb3B0aW9ucy5mZWVk
Zm9yd2FyZCA9IFdURk1vdmUoZmVlZGZvcndhcmQpOworICAgIG9wdGlvbnMuZmVlZGJhY2sgPSBX
VEZNb3ZlKGZlZWRiYWNrKTsKKyAgICByZXR1cm4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsICp0aGlzLCBXVEZNb3ZlKG9wdGlvbnMpKTsKK30KKwogdm9pZCBC
YXNlQXVkaW9Db250ZXh0Ojpub3RpZnlOb2RlRmluaXNoZWRQcm9jZXNzaW5nKEF1ZGlvTm9kZSog
bm9kZSkKIHsKICAgICBBU1NFUlQoaXNBdWRpb1RocmVhZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggNDRjMmNlNzZl
MGRjNjU3MGI1ZmYxYTU5NDhiOTBlYmIxZGFiYjkzZi4uNjdmMzQ5MjQ5NzAxZWMwM2I2ODgwOTQx
ZjgxZjliODc1YmZjODllMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTcwLDYgKzcwLDcgQEAgY2xhc3MgRG9jdW1lbnQ7
CiBjbGFzcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlOwogY2xhc3MgR2Fpbk5vZGU7CiBjbGFzcyBI
VE1MTWVkaWFFbGVtZW50OworY2xhc3MgSUlSRmlsdGVyTm9kZTsKIGNsYXNzIE1haW5UaHJlYWRH
ZW5lcmljRXZlbnRRdWV1ZTsKIGNsYXNzIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZTsKIGNs
YXNzIE1lZGlhU3RyZWFtOwpAQCAtNzgsNiArNzksNyBAQCBjbGFzcyBNZWRpYVN0cmVhbUF1ZGlv
U291cmNlTm9kZTsKIGNsYXNzIE9zY2lsbGF0b3JOb2RlOwogY2xhc3MgUGFubmVyTm9kZTsKIGNs
YXNzIFBlcmlvZGljV2F2ZTsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiBjbGFzcyBT
Y3JpcHRQcm9jZXNzb3JOb2RlOwogY2xhc3MgU2VjdXJpdHlPcmlnaW47CiBjbGFzcyBTdGVyZW9Q
YW5uZXJOb2RlOwpAQCAtMTY0LDYgKzE2Niw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25PcjxS
ZWY8UGVyaW9kaWNXYXZlPj4gY3JlYXRlUGVyaW9kaWNXYXZlKFZlY3RvcjxmbG9hdD4mJiByZWFs
LCBWZWN0b3I8ZmxvYXQ+JiYgaW1hZ2luYXJ5LCBjb25zdCBQZXJpb2RpY1dhdmVDb25zdHJhaW50
cyYgPSB7IH0pOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxDb25zdGFudFNvdXJjZU5vZGU+PiBjcmVh
dGVDb25zdGFudFNvdXJjZSgpOwogICAgIEV4Y2VwdGlvbk9yPFJlZjxTdGVyZW9QYW5uZXJOb2Rl
Pj4gY3JlYXRlU3RlcmVvUGFubmVyKCk7CisgICAgRXhjZXB0aW9uT3I8UmVmPElJUkZpbHRlck5v
ZGU+PiBjcmVhdGVJSVJGaWx0ZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFZlY3Rvcjxkb3Vi
bGU+JiYgZmVlZGZvcndhcmQsIFZlY3Rvcjxkb3VibGU+JiYgZmVlZGJhY2spOwogCiAgICAgLy8g
V2hlbiBhIHNvdXJjZSBub2RlIGhhcyBubyBtb3JlIHByb2Nlc3NpbmcgdG8gZG8gKGhhcyBmaW5p
c2hlZCBwbGF5aW5nKSwgdGhlbiBpdCB0ZWxscyB0aGUgY29udGV4dCB0byBkZXJlZmVyZW5jZSBp
dC4KICAgICB2b2lkIG5vdGlmeU5vZGVGaW5pc2hlZFByb2Nlc3NpbmcoQXVkaW9Ob2RlKik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRl
eHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmlkbAppbmRleCBjNjVjYjE5NmI3MzYxZjk3ZjBmOTljMDVmN2E5ZTEwNmIwYjQxY2FhLi4zMWYw
MWJiZWU0NzFmZDQ2ZWQwYWM1ODQ1ODU2NGVjMzVlMDI2YTljIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTY2LDYg
KzY2LDcgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIFBlcmlvZGljV2F2ZSBjcmVhdGVQZXJp
b2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+IHJlYWwsIHNlcXVlbmNlPGZsb2F0PiBpbWFnLCBvcHRp
b25hbCBQZXJpb2RpY1dhdmVPcHRpb25zIG9wdGlvbnMpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlv
bl0gQ29uc3RhbnRTb3VyY2VOb2RlIGNyZWF0ZUNvbnN0YW50U291cmNlKCk7CiAgICAgW01heVRo
cm93RXhjZXB0aW9uXSBTdGVyZW9QYW5uZXJOb2RlIGNyZWF0ZVN0ZXJlb1Bhbm5lcigpOworICAg
IFtNYXlUaHJvd0V4Y2VwdGlvbiwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSUlS
RmlsdGVyTm9kZSBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiBmZWVkZm9yd2FyZCwg
c2VxdWVuY2U8ZG91YmxlPiBmZWVkYmFjayk7CiAKICAgICAvLyBDaGFubmVsIHNwbGl0dGluZyBh
bmQgbWVyZ2luZwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gQ2hhbm5lbFNwbGl0dGVyTm9kZSBj
cmVhdGVDaGFubmVsU3BsaXR0ZXIob3B0aW9uYWwgdW5zaWduZWQgbG9uZyBudW1iZXJPZk91dHB1
dHMgPSA2KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlS
RFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQS2Vy
bmVsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42MmVlZTJjYTk4NTIwMGZhOWIzNDliNTQ1MThjYjRhNjBmNjU2
NThhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9J
SVJEU1BLZXJuZWwuY3BwCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBU
aGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJEU1BL
ZXJuZWwuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitJSVJEU1BLZXJuZWw6OklJUkRTUEtl
cm5lbChJSVJQcm9jZXNzb3ImIHByb2Nlc3NvcikKKyAgICA6IEF1ZGlvRFNQS2VybmVsKCZwcm9j
ZXNzb3IpCisgICAgLCBtX2lpckZpbHRlcihwcm9jZXNzb3IuZmVlZGZvcndhcmQoKSwgcHJvY2Vz
c29yLmZlZWRiYWNrKCkpCisgICAgLCBtX3RhaWxUaW1lKG1faWlyRmlsdGVyLnRhaWxUaW1lKHBy
b2Nlc3Nvci5zYW1wbGVSYXRlKCksIHByb2Nlc3Nvci5pc0ZpbHRlclN0YWJsZSgpKSkKK3sKK30K
Kwordm9pZCBJSVJEU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIGxlbmd0
aCwgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0KiBw
aGFzZVJlc3BvbnNlKQoreworICAgIEFTU0VSVChmcmVxdWVuY3lIeik7CisgICAgQVNTRVJUKG1h
Z1Jlc3BvbnNlKTsKKyAgICBBU1NFUlQocGhhc2VSZXNwb25zZSk7CisKKyAgICBWZWN0b3I8Zmxv
YXQ+IGZyZXF1ZW5jeShsZW5ndGgpOworICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlxdWlz
dCgpOworCisgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBub3JtYWxpemVk
IGZyZXF1ZW5jeSAoMCAtPiAxKSwgd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1aXN0IGZyZXF1ZW5j
eS4KKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spCisgICAgICAgIGZy
ZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKKworICAgIG1faWlyRmlsdGVy
LmdldEZyZXF1ZW5jeVJlc3BvbnNlKGxlbmd0aCwgZnJlcXVlbmN5LmRhdGEoKSwgbWFnUmVzcG9u
c2UsIHBoYXNlUmVzcG9uc2UpOworfQorCit2b2lkIElJUkRTUEtlcm5lbDo6cHJvY2Vzcyhjb25z
dCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nl
c3MpCit7CisgICAgQVNTRVJUKHNvdXJjZSk7CisgICAgQVNTRVJUKGRlc3RpbmF0aW9uKTsKKwor
ICAgIG1faWlyRmlsdGVyLnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Qcm9j
ZXNzKTsKK30KKwordm9pZCBJSVJEU1BLZXJuZWw6OnJlc2V0KCkKK3sKKyAgICBtX2lpckZpbHRl
ci5yZXNldCgpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJEU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRFNQ
S2VybmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWY4YTQ0MmE2NzdkMDQwMzRjMDEyM2MzZjMyNjBkNWMzYzY1
OTM0YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSRFNQS2VybmVsLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
LmgiCisjaW5jbHVkZSAiSUlSUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgSUlSRFNQS2VybmVsIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsIHsKK3B1Ymxp
YzoKKyAgICBleHBsaWNpdCBJSVJEU1BLZXJuZWwoSUlSUHJvY2Vzc29yJik7CisKKyAgICAvLyBH
ZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUg
Z2l2ZW4gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBp
biByYWRpYW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3Ro
LCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBo
YXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29y
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9CisK
KyAgICAvLyBBdWRpb0RTUEtlcm5lbAorICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291
cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOwor
ICAgIGRvdWJsZSB0YWlsVGltZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdGFpbFRpbWU7IH0K
KyAgICBkb3VibGUgbGF0ZW5jeVRpbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAwOyB9CisgICAg
dm9pZCByZXNldCgpIGZpbmFsOworCisgICAgSUlSRmlsdGVyIG1faWlyRmlsdGVyOworICAgIGRv
dWJsZSBtX3RhaWxUaW1lOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJOb2RlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uY2JiNjk5MTVjMDYwYWQ0Mjg0Mjk4NTkyNTdjOGE3MTNjOGI5MmU4ZAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyTm9kZS5jcHAK
QEAgLTAsMCArMSwxNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJGaWx0ZXJOb2RlLmgiCisKKyNp
bmNsdWRlICJCYXNlQXVkaW9Db250ZXh0LmgiCisjaW5jbHVkZSAiSUlSRmlsdGVyLmgiCisjaW5j
bHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJ
bmxpbmVzLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworV1RGX01BS0VfSVNPX0FMTE9DQVRF
RF9JTVBMKElJUkZpbHRlck5vZGUpOworCisvLyBEZXRlcm1pbmUgaWYgZmlsdGVyIGlzIHN0YWJs
ZSBiYXNlZCBvbiB0aGUgZmVlZGJhY2sgY29lZmZpY2llbnRzLgorLy8gV2UgY29tcHV0ZSB0aGUg
cmVmbGVjdGlvbiBjb2VmZmljaWVudHMgZm9yIHRoZSBmaWx0ZXIuIElmLCBhdCBhbnkKKy8vIHBv
aW50LCB0aGUgbWFnbml0dWRlIG9mIHRoZSByZWZsZWN0aW9uIGNvZWZmaWNpZW50IGlzIGdyZWF0
ZXIgdGhhbgorLy8gb3IgZXF1YWwgdG8gMSwgdGhlIGZpbHRlciBpcyBkZWNsYXJlZCB1bnN0YWJs
ZS4KKy8vCisvLyBMZXQgQSh6KSBiZSB0aGUgZmVlZGJhY2sgcG9seW5vbWlhbCBnaXZlbiBieQor
Ly8gICBBW25dKHopID0gMSArIGFbMV0veiArIGFbMl0vel4yICsgLi4uICsgYVtuXS96Xm4KKy8v
CisvLyBUaGUgZmlyc3QgcmVmbGVjdGlvbiBjb2VmZmljaWVudCBrW25dID0gYVtuXS4gVGhlbiwg
cmVjdXJzaXZlbHkgY29tcHV0ZQorLy8KKy8vICAgQVtuLTFdKHopID0gKEFbbl0oeikgLSBrW25d
KkFbbl0oMS96KS96Xm4pLygxLWtbbl1eMik7CisvLworLy8gc3RvcHBpbmcgYXQgQVsxXSh6KS4g
SWYgYXQgYW55IHBvaW50IHxrW25dfCA+PSAxLCB0aGUgZmlsdGVyIGlzIHVuc3RhYmxlLgorc3Rh
dGljIGJvb2wgaXNGaWx0ZXJTdGFibGUoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKQor
eworICAgIC8vIE1ha2UgYSBjb3B5IG9mIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMKKyAgICBW
ZWN0b3I8ZG91YmxlPiBjb2VmZmljaWVudHMoZmVlZGJhY2spOworICAgIGludCBvcmRlciA9IGNv
ZWZmaWNpZW50cy5zaXplKCkgLSAxOworCisgICAgLy8gSWYgbmVjZXNzYXJ5LCBub3JtYWxpemUg
ZmlsdGVyIGNvZWZmaWNpZW50cyBzbyB0aGF0IGNvbnN0YW50IHRlcm0gaXMgMS4KKyAgICBpZiAo
Y29lZmZpY2llbnRzWzBdICE9IDEpIHsKKyAgICAgICAgZm9yIChpbnQgbSA9IDE7IG0gPD0gb3Jk
ZXI7ICsrbSkKKyAgICAgICAgICAgIGNvZWZmaWNpZW50c1ttXSAvPSBjb2VmZmljaWVudHNbMF07
CisgICAgICAgIGNvZWZmaWNpZW50c1swXSA9IDE7CisgICAgfQorCisgICAgLy8gQmVnaW4gcmVj
dXJzaW9uLCB1c2luZyBhIHdvcmsgYXJyYXkgdG8gaG9sZCBpbnRlcm1lZGlhdGUgcmVzdWx0cy4K
KyAgICBWZWN0b3I8ZG91YmxlPiB3b3JrKG9yZGVyICsgMSk7CisgICAgZm9yIChpbnQgbiA9IG9y
ZGVyOyBuID49IDE7IC0tbikgeworICAgICAgICBkb3VibGUgayA9IGNvZWZmaWNpZW50c1tuXTsK
KworICAgICAgICBpZiAoc3RkOjpmYWJzKGspID49IDEpCisgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICAgICAgLy8gTm90ZSB0aGF0IEFbbl0oMS96KS96Xm4gaXMgYmFzaWNhbGx5IHRo
ZSBjb2VmZmljaWVudHMgb2YgQVtuXQorICAgICAgICAvLyBpbiByZXZlcnNlIG9yZGVyLgorICAg
ICAgICBkb3VibGUgZmFjdG9yID0gMSAtIGsgKiBrOworICAgICAgICBmb3IgKGludCBtID0gMDsg
bSA8PSBuOyArK20pCisgICAgICAgICAgICB3b3JrW21dID0gKGNvZWZmaWNpZW50c1ttXSAtIGsg
KiBjb2VmZmljaWVudHNbbiAtIG1dKSAvIGZhY3RvcjsKKyAgICAgICAgY29lZmZpY2llbnRzLnN3
YXAod29yayk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK0V4Y2VwdGlvbk9yPFJl
ZjxJSVJGaWx0ZXJOb2RlPj4gSUlSRmlsdGVyTm9kZTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQmIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQs
IElJUkZpbHRlck9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIGlmIChjb250ZXh0LmlzU3RvcHBl
ZCgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfTsKKwor
ICAgIGNvbnRleHQubGF6eUluaXRpYWxpemUoKTsKKworICAgIGlmICghb3B0aW9ucy5mZWVkZm9y
d2FyZC5zaXplKCkgfHwgb3B0aW9ucy5mZWVkZm9yd2FyZC5zaXplKCkgPiBJSVJGaWx0ZXI6Om1h
eE9yZGVyKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsICJm
ZWVkZm9yd2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCJfcyB9
OworCisgICAgYXV0byBub25aZXJvVmFsdWVJbmRleCA9IG9wdGlvbnMuZmVlZGZvcndhcmQuZmlu
ZE1hdGNoaW5nKFtdKGF1dG8mIHZhbHVlKSB7IHJldHVybiAhIXZhbHVlOyB9KTsKKyAgICBpZiAo
bm9uWmVyb1ZhbHVlSW5kZXggPT0gbm90Rm91bmQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgImZlZWRmb3J3YXJkIGFycmF5IG11c3QgY29udGFpbiBhIG5v
bi16ZXJvIHZhbHVlIl9zIH07CisKKyAgICBpZiAoIW9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpIHx8
IG9wdGlvbnMuZmVlZGJhY2suc2l6ZSgpID4gSUlSRmlsdGVyOjptYXhPcmRlcikKKyAgICAgICAg
cmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yLCAiZmVlZGJhY2sgYXJyYXkgbXVz
dCBoYXZlIGEgbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjAiX3MgfTsKKworICAgIGlmICghb3B0aW9u
cy5mZWVkYmFja1swXSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiZmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iX3MgfTsK
KworICAgIGJvb2wgaXNGaWx0ZXJTdGFibGUgPSBXZWJDb3JlOjppc0ZpbHRlclN0YWJsZShvcHRp
b25zLmZlZWRiYWNrKTsKKyAgICBpZiAoIWlzRmlsdGVyU3RhYmxlKQorICAgICAgICBzY3JpcHRF
eGVjdXRpb25Db250ZXh0LmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNz
YWdlTGV2ZWw6Oldhcm5pbmcsICJJSVJGaWx0ZXIgaXMgdW5zdGFibGUgd2l0aCBwcm92aWRlZCBm
ZWVkYmFjayBjb2VmZmljaWVudHMiX3MpOworCisgICAgYXV0byBub2RlID0gYWRvcHRSZWYoKm5l
dyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIG9wdGlvbnMuZmVlZGZvcndhcmQsIG9wdGlvbnMuZmVl
ZGJhY2ssIGlzRmlsdGVyU3RhYmxlKSk7CisKKyAgICBhdXRvIHJlc3VsdCA9IG5vZGUtPmhhbmRs
ZUF1ZGlvTm9kZU9wdGlvbnMob3B0aW9ucywgeyAyLCBDaGFubmVsQ291bnRNb2RlOjpNYXgsIENo
YW5uZWxJbnRlcnByZXRhdGlvbjo6U3BlYWtlcnMgfSk7CisgICAgaWYgKHJlc3VsdC5oYXNFeGNl
cHRpb24oKSkKKyAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKKyAg
ICByZXR1cm4gbm9kZTsKK30KKworSUlSRmlsdGVyTm9kZTo6SUlSRmlsdGVyTm9kZShCYXNlQXVk
aW9Db250ZXh0JiBjb250ZXh0LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGZvcndhcmQsIGNv
bnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaywgYm9vbCBpc0ZpbHRlclN0YWJsZSkKKyAgICA6
IEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKGNvbnRleHQpCit7CisgICAgc2V0Tm9kZVR5cGUoTm9k
ZVR5cGVJSVJGaWx0ZXIpOworICAgIG1fcHJvY2Vzc29yID0gbWFrZVVuaXF1ZTxJSVJQcm9jZXNz
b3I+KGNvbnRleHQuc2FtcGxlUmF0ZSgpLCAxLCBmZWVkZm9yd2FyZCwgZmVlZGJhY2ssIGlzRmls
dGVyU3RhYmxlKTsKKworICAgIGluaXRpYWxpemUoKTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4g
SUlSRmlsdGVyTm9kZTo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5JiBmcmVxdWVu
Y3lIeiwgRmxvYXQzMkFycmF5JiBtYWdSZXNwb25zZSwgRmxvYXQzMkFycmF5JiBwaGFzZVJlc3Bv
bnNlKQoreworICAgIGF1dG8gZXhwZWN0ZWRMZW5ndGggPSBmcmVxdWVuY3lIei5sZW5ndGgoKTsK
KyAgICBpZiAobWFnUmVzcG9uc2UubGVuZ3RoKCkgIT0gZXhwZWN0ZWRMZW5ndGggfHwgcGhhc2VS
ZXNwb25zZS5sZW5ndGgoKSAhPSBleHBlY3RlZExlbmd0aCkKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IEludmFsaWRBY2Nlc3NFcnJvciwgIkFycmF5cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVu
Z3RoIl9zIH07CisKKyAgICAvLyBOb3RoaW5nIHRvIGRvIGlmIHRoZSBsZW5ndGggaXMgMC4KKyAg
ICBpZiAoZXhwZWN0ZWRMZW5ndGggPiAwKQorICAgICAgICBpaXJQcm9jZXNzb3IoKS0+Z2V0RnJl
cXVlbmN5UmVzcG9uc2UoZXhwZWN0ZWRMZW5ndGgsIGZyZXF1ZW5jeUh6LmRhdGEoKSwgbWFnUmVz
cG9uc2UuZGF0YSgpLCBwaGFzZVJlc3BvbnNlLmRhdGEoKSk7CisKKyAgICByZXR1cm4geyB9Owor
fQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElP
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRlck5vZGUuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mODJhMjc5OWE2YmU5NmE0NjU4ODFmN2Y4MjBjZTQ2ZGE0ZDg5OTNmCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJO
b2RlLmgKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1
bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDIwLCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgIkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmgiCisjaW5jbHVkZSAiSUlSRmlsdGVy
T3B0aW9ucy5oIgorI2luY2x1ZGUgIklJUlByb2Nlc3Nvci5oIgorI2luY2x1ZGUgPEphdmFTY3Jp
cHRDb3JlL0Zsb2F0MzJBcnJheS5oPgorI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2MuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBJSVJGaWx0ZXJOb2RlIGZpbmFsIDogcHVibGljIEF1
ZGlvQmFzaWNQcm9jZXNzb3JOb2RlIHsKKyAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKElJUkZp
bHRlck5vZGUpOworcHVibGljOgorICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8SUlSRmlsdGVy
Tm9kZT4+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgQmFzZUF1ZGlvQ29udGV4dCYs
IElJUkZpbHRlck9wdGlvbnMmJik7CisKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBnZXRGcmVxdWVu
Y3lSZXNwb25zZShGbG9hdDMyQXJyYXkmIGZyZXF1ZW5jeUh6LCBGbG9hdDMyQXJyYXkmIG1hZ1Jl
c3BvbnNlLCBGbG9hdDMyQXJyYXkmIHBoYXNlUmVzcG9uc2UpOworCitwcml2YXRlOgorICAgIElJ
UkZpbHRlck5vZGUoQmFzZUF1ZGlvQ29udGV4dCYsIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
Zm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3Rh
YmxlKTsKKworICAgIElJUlByb2Nlc3NvciogaWlyUHJvY2Vzc29yKCkgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8SUlSUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0
ZXJOb2RlLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZGRjNWFjM2NmMjc4OWMxMzczY2ZmMjA0Njc3ODQxODRj
ZTY0YzIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJGaWx0ZXJOb2RlLmlkbApAQCAtMCwwICsxLDMyIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAg
Q29uZGl0aW9uYWw9V0VCX0FVRElPLAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorICAgIEVu
YWJsZWRCeVNldHRpbmc9TW9kZXJuVW5wcmVmaXhlZFdlYkF1ZGlvLAorXSBpbnRlcmZhY2UgSUlS
RmlsdGVyTm9kZSA6IEF1ZGlvTm9kZSB7CisgICAgW01heVRocm93RXhjZXB0aW9uLCBDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBjb25zdHJ1Y3RvcihCYXNlQXVkaW9Db250ZXh0IGF1
ZGlvQ29udGV4dCwgSUlSRmlsdGVyT3B0aW9ucyBvcHRpb25zKTsKKyAgICBbTWF5VGhyb3dFeGNl
cHRpb25dIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5IGZyZXF1ZW5jeUh6
LCBGbG9hdDMyQXJyYXkgbWFnUmVzcG9uc2UsIEZsb2F0MzJBcnJheSBwaGFzZVJlc3BvbnNlKTsK
K307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUkZpbHRl
ck9wdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0
aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjFiMDJmNTk3NjM5NTRkNDIzZjU0YjQ3MmVkZjFlZjliMGM2ZjFl
MzEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJ
UkZpbHRlck9wdGlvbnMuaApAQCAtMCwwICsxLDQxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2lmIEVOQUJMRShXRUJfQVVESU8pCisKKyNpbmNsdWRlICJBdWRpb05vZGVPcHRpb25z
LmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0
cnVjdCBJSVJGaWx0ZXJPcHRpb25zIDogQXVkaW9Ob2RlT3B0aW9ucyB7CisgICAgVmVjdG9yPGRv
dWJsZT4gZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gZmVlZGJhY2s7Cit9OworCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJGaWx0ZXJPcHRpb25z
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmlsdGVyT3B0aW9ucy5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjFmMzQ3ODc3MWVlMTI0OTFiYjZhNTAxZTVmOGIyZTI4MjI2MWUzMQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSRmls
dGVyT3B0aW9ucy5pZGwKQEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworWworICAgIENvbmRp
dGlvbmFsPVdFQl9BVURJTworXSBkaWN0aW9uYXJ5IElJUkZpbHRlck9wdGlvbnMgOiBBdWRpb05v
ZGVPcHRpb25zIHsKKyAgICByZXF1aXJlZCBzZXF1ZW5jZTxkb3VibGU+IGZlZWRmb3J3YXJkOwor
ICAgIHJlcXVpcmVkIHNlcXVlbmNlPGRvdWJsZT4gZmVlZGJhY2s7Cit9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9JSVJQcm9jZXNzb3IuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1
YjQyNzMwOWEzNzcxMjQyYWEwMDVkY2NiZTA1OWZlZGVkZGIwMzEKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0lJUlByb2Nlc3Nvci5jcHAKQEAgLTAs
MCArMSwxMDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYg
RU5BQkxFKFdFQl9BVURJTykKKyNpbmNsdWRlICJJSVJQcm9jZXNzb3IuaCIKKworI2luY2x1ZGUg
IklJUkRTUEtlcm5lbC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0lJUlByb2Nlc3Nvcjo6
SUlSUHJvY2Vzc29yKGZsb2F0IHNhbXBsZVJhdGUsIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMs
IGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29uc3QgVmVjdG9yPGRvdWJsZT4m
IGZlZWRiYWNrLCBib29sIGlzRmlsdGVyU3RhYmxlKQorICAgIDogQXVkaW9EU1BLZXJuZWxQcm9j
ZXNzb3Ioc2FtcGxlUmF0ZSwgbnVtYmVyT2ZDaGFubmVscykKKyAgICAsIG1fZmVlZGZvcndhcmQo
ZmVlZGZvcndhcmQpCisgICAgLCBtX2ZlZWRiYWNrKGZlZWRiYWNrKQorICAgICwgbV9pc0ZpbHRl
clN0YWJsZShpc0ZpbHRlclN0YWJsZSkKK3sKKyAgICB1bnNpZ25lZCBmZWVkYmFja0xlbmd0aCA9
IGZlZWRiYWNrLnNpemUoKTsKKyAgICB1bnNpZ25lZCBmZWVkZm9yd2FyZExlbmd0aCA9IGZlZWRm
b3J3YXJkLnNpemUoKTsKKyAgICBBU1NFUlQoZmVlZGJhY2tMZW5ndGggPiAwKTsKKyAgICBBU1NF
UlQoZmVlZGZvcndhcmRMZW5ndGggPiAwKTsKKworICAgIC8vIE5lZWQgdG8gc2NhbGUgdGhlIGZl
ZWRiYWNrIGFuZCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgYXBwcm9wcmlhdGVseS4KKyAgICAv
LyAoSXQncyB1cCB0byB0aGUgY2FsbGVyIHRvIGVuc3VyZSBmZWVkYmFja0NvZWZbMF0gaXMgbm90
IDAuKQorICAgIEFTU0VSVCghIWZlZWRiYWNrWzBdKTsKKworICAgIGlmIChmZWVkYmFja1swXSAh
PSAxKSB7CisgICAgICAgIC8vIFRoZSBwcm92aWRlZCBmaWx0ZXIgaXM6CisgICAgICAgIC8vCisg
ICAgICAgIC8vICAgYVswXSp5KG4pICsgYVsxXSp5KG4tMSkgKyAuLi4gPSBiWzBdKngobikgKyBi
WzFdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBXZSB3YW50IHRoZSBsZWFk
aW5nIGNvZWZmaWNpZW50IG9mIHkobikgdG8gYmUgMToKKyAgICAgICAgLy8KKyAgICAgICAgLy8g
ICB5KG4pICsgYVsxXS9hWzBdKnkobi0xKSArIC4uLiA9IGJbMF0vYVswXSp4KG4pICsgYlsxXS9h
WzBdKngobi0xKSArIC4uLgorICAgICAgICAvLworICAgICAgICAvLyBUaHVzLCB0aGUgZmVlZGJh
Y2sgYW5kIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBuZWVkIHRvIGJlIHNjYWxlZCBieSAxL2Fb
MF0uCisgICAgICAgIGZsb2F0IHNjYWxlID0gZmVlZGJhY2tbMF07CisgICAgICAgIGZvciAodW5z
aWduZWQgayA9IDE7IGsgPCBmZWVkYmFja0xlbmd0aDsgKytrKQorICAgICAgICAgICAgbV9mZWVk
YmFja1trXSAvPSBzY2FsZTsKKworICAgICAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgZmVl
ZGZvcndhcmRMZW5ndGg7ICsraykKKyAgICAgICAgICAgIG1fZmVlZGZvcndhcmRba10gLz0gc2Nh
bGU7CisKKyAgICAgICAgLy8gVGhlIElJUkZpbHRlciBjaGVja3MgdG8gbWFrZSBzdXJlIHRoaXMg
Y29lZmZpY2llbnQgaXMgMSwgc28gbWFrZSBpdCBzby4KKyAgICAgICAgbV9mZWVkYmFja1swXSA9
IDE7CisgICAgfQorCisgICAgbV9yZXNwb25zZUtlcm5lbCA9IG1ha2VVbmlxdWU8SUlSRFNQS2Vy
bmVsPigqdGhpcyk7Cit9CisKK0lJUlByb2Nlc3Nvcjo6fklJUlByb2Nlc3NvcigpCit7CisgICAg
aWYgKGlzSW5pdGlhbGl6ZWQoKSkKKyAgICAgICAgdW5pbml0aWFsaXplKCk7Cit9CisKK3N0ZDo6
dW5pcXVlX3B0cjxBdWRpb0RTUEtlcm5lbD4gSUlSUHJvY2Vzc29yOjpjcmVhdGVLZXJuZWwoKQor
eworICAgIHJldHVybiBtYWtlVW5pcXVlPElJUkRTUEtlcm5lbD4oKnRoaXMpOworfQorCit2b2lk
IElJUlByb2Nlc3Nvcjo6cHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyog
ZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgaWYgKCFpc0luaXRp
YWxpemVkKCkpIHsKKyAgICAgICAgZGVzdGluYXRpb24tPnplcm8oKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIC8vIEZvciBlYWNoIGNoYW5uZWwgb2Ygb3VyIGlucHV0LCBwcm9jZXNz
IHVzaW5nIHRoZSBjb3JyZXNwb25kaW5nIElJUkRTUEtlcm5lbAorICAgIC8vIGludG8gdGhlIG91
dHB1dCBjaGFubmVsLgorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9rZXJuZWxzLnNpemUo
KTsgKytpKQorICAgICAgICBtX2tlcm5lbHNbaV0tPnByb2Nlc3Moc291cmNlLT5jaGFubmVsKGkp
LT5kYXRhKCksIGRlc3RpbmF0aW9uLT5jaGFubmVsKGkpLT5tdXRhYmxlRGF0YSgpLCBmcmFtZXNU
b1Byb2Nlc3MpOworfQorCit2b2lkIElJUlByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2Uo
dW5zaWduZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNw
b25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCit7CisgICAgbV9yZXNwb25zZUtlcm5lbC0+Z2V0
RnJlcXVlbmN5UmVzcG9uc2UobGVuZ3RoLCBmcmVxdWVuY3lIeiwgbWFnUmVzcG9uc2UsIHBoYXNl
UmVzcG9uc2UpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9JSVJQcm9jZXNzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSUlSUHJv
Y2Vzc29yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDRjNWVkOWRmOGU1OWI3ZTczYzIwNGViMGMzYTE0MjY1Y2E2
NDJkZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SUlSUHJvY2Vzc29yLmgKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE2IFRo
ZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChD
KSAyMDIwLCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2luY2x1ZGUgIkF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLmgiCisjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIElJUkRTUEtlcm5l
bDsKKworY2xhc3MgSUlSUHJvY2Vzc29yIGZpbmFsIDogcHVibGljIEF1ZGlvRFNQS2VybmVsUHJv
Y2Vzc29yIHsKK3B1YmxpYzoKKyAgICBJSVJQcm9jZXNzb3IoZmxvYXQgc2FtcGxlUmF0ZSwgdW5z
aWduZWQgbnVtYmVyT2ZDaGFubmVscywgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJk
LCBjb25zdCBWZWN0b3I8ZG91YmxlPiYgZmVlZGJhY2ssIGJvb2wgaXNGaWx0ZXJTdGFibGUpOwor
ICAgIH5JSVJQcm9jZXNzb3IoKTsKKworICAgIC8vIEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLgor
ICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBBdWRpb0J1cyogc291cmNlLCBBdWRpb0J1cyogZGVzdGlu
YXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpIGZpbmFsOworICAgIHN0ZDo6dW5pcXVlX3B0
cjxBdWRpb0RTUEtlcm5lbD4gY3JlYXRlS2VybmVsKCkgZmluYWw7CisKKyAgICAvLyBHZXQgdGhl
IG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4g
c2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBpbiByYWRp
YW5zLgorICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbGVuZ3RoLCBjb25z
dCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVz
cG9uc2UpOworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkKCkgY29uc3Qg
eyByZXR1cm4gbV9mZWVkZm9yd2FyZDsgfQorICAgIGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVk
YmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGJhY2s7IH0KKyAgICBib29sIGlzRmlsdGVyU3Rh
YmxlKCkgY29uc3QgeyByZXR1cm4gbV9pc0ZpbHRlclN0YWJsZTsgfQorCitwcml2YXRlOgorICAg
IFZlY3Rvcjxkb3VibGU+IG1fZmVlZGZvcndhcmQ7CisgICAgVmVjdG9yPGRvdWJsZT4gbV9mZWVk
YmFjazsKKyAgICBib29sIG1faXNGaWx0ZXJTdGFibGU7CisKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
SUlSRFNQS2VybmVsPiBtX3Jlc3BvbnNlS2VybmVsOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2Vi
Q29yZS9Tb3VyY2VzLnR4dAppbmRleCBkZTQ5ZmQyNjZiNmE4NGI5Yzg1M2I2YzVkOTRmZTM4YjI2
MDMxMzM3Li4zNjI2NjVhYjE3MTMxZjJjZjM3ZjhhZGY4OTA1NDA1YmYyOTcyNmM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3Vy
Y2VzLnR4dApAQCAtMjIxLDYgKzIyMSw5IEBAIE1vZHVsZXMvd2ViYXVkaW8vRGVsYXlOb2RlLmNw
cAogTW9kdWxlcy93ZWJhdWRpby9EZWxheVByb2Nlc3Nvci5jcHAKIE1vZHVsZXMvd2ViYXVkaW8v
RHluYW1pY3NDb21wcmVzc29yTm9kZS5jcHAKIE1vZHVsZXMvd2ViYXVkaW8vR2Fpbk5vZGUuY3Bw
CitNb2R1bGVzL3dlYmF1ZGlvL0lJUkRTUEtlcm5lbC5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlS
RmlsdGVyTm9kZS5jcHAKK01vZHVsZXMvd2ViYXVkaW8vSUlSUHJvY2Vzc29yLmNwcAogTW9kdWxl
cy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1
ZGlvL01lZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCiBNb2R1bGVzL3dlYmF1ZGlv
L01lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuY3BwCkBAIC0xNzk5LDYgKzE4MDIsNyBAQCBwbGF0Zm9y
bS9hdWRpby9IUlRGRGF0YWJhc2VMb2FkZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9IUlRGRWxldmF0
aW9uLmNwcAogcGxhdGZvcm0vYXVkaW8vSFJURktlcm5lbC5jcHAKIHBsYXRmb3JtL2F1ZGlvL0hS
VEZQYW5uZXIuY3BwCitwbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCiBwbGF0Zm9ybS9hdWRp
by9NdWx0aUNoYW5uZWxSZXNhbXBsZXIuY3BwCiBwbGF0Zm9ybS9hdWRpby9QYW5uZXIuY3BwCiBw
bGF0Zm9ybS9hdWRpby9QbGF0Zm9ybU1lZGlhU2Vzc2lvbi5jcHAKQEAgLTMwMzQsNiArMzAzOCw4
IEBAIEpTSURCVmVyc2lvbkNoYW5nZUV2ZW50LmNwcAogSlNJZGxlRGVhZGxpbmUuY3BwCiBKU0lk
bGVSZXF1ZXN0Q2FsbGJhY2suY3BwCiBKU0lkbGVSZXF1ZXN0T3B0aW9ucy5jcHAKK0pTSUlSRmls
dGVyTm9kZS5jcHAKK0pTSUlSRmlsdGVyT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXAuY3BwCiBK
U0ltYWdlQml0bWFwT3B0aW9ucy5jcHAKIEpTSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0LmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDNhMzYxYWE5OGU5YzI3YjM5ZjcyYmMyNWFmOThmZjAwY2E2MDNiMzAuLmRjMjk4M2Ji
NTNjYjkxZWE3ZmJlODgwYTVkZWQyZWEyYTNkMzYxZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTI0MzMsNiArMjQzMyw3IEBA
CiAJCTgzMDc4NEIyMUM1MkVFMkMwMDEwNEQxRCAvKiBYTUxEb2N1bWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwNzg0QjExQzUyRUUxOTAwMTA0
RDFEIC8qIFhNTERvY3VtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJODMwQTFDN0QyNERCNzg4QjAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1
ZGlvU291cmNlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODMwQTFDN0MyNERCNzg3MDAwMkVDQ0FEIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291
cmNlT3B0aW9ucy5oICovOyB9OwogCQk4MzBBMzZCRDFEQUM1RkFEMDA2RDdEMDkgLyogSlNNb3Vz
ZUV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODMwQTM2QkIxREFDNUZBNzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLzsgfTsK
KwkJODMwRDBCNjkyNEY1N0Q2NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRDBCNjYyNEY1N0Q1MDAwN0VE
MTIyIC8qIElJUlByb2Nlc3Nvci5oICovOyB9OwogCQk4MzBFRUFCQTI0REI2QTY0MDA5RUZCQ0Ug
LyogV2ViS2l0RHluYW1pY3NDb21wcmVzc29yTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwRUVBQjcyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktp
dER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaCAqLzsgfTsKIAkJODMxMDJCMjcxRjlFQUREOTAwRTQw
NEI5IC8qIEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMxMDJCMjMxRjlFQURDMjAwRTQwNEI5IC8qIEpTRXh0
ZW5kYWJsZU1lc3NhZ2VFdmVudC5oICovOyB9OwogCQk4MzExQzAwMzFGQUEyRTk1MDBFM0M4RTUg
LyogU1dTZXJ2ZXJKb2JRdWV1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODMxMUMwMDIxRkFBMkU4OTAwRTNDOEU1IC8qIFNXU2VydmVySm9iUXVldWUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMjQ1
OSwxMiArMjQ2MCwxNSBAQAogCQk4MzQ4QkZBQzFCODU3Mjk4MDA5MTJGMzYgLyogQ2xhc3NDb2xs
ZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzQ4QkZBQTFCODU3Mjk1MDA5MTJGMzYgLyogQ2xhc3NDb2xsZWN0aW9uLmggKi87IH07CiAJCTgz
NENCRkMyMjREQzc4NjcwMEMyQTNEOCAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlT3B0aW9ucy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM0Q0JGQkYy
NERDNzg1NTAwQzJBM0Q4IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggKi87IH07
CiAJCTgzNERGQUQwMUY3REFFNUQwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzUwNTFBMjI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVyTm9kZS5oICovOyB9OworCQk4
MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MDUxQTAyNEY1NzNBRTAwOTkx
MUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaCAqLzsgfTsKIAkJODM1MjBDN0UxQTcxQkZDQzAwNkJE
MkFBIC8qIENTU0ZvbnRGYW1pbHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzNTIwQzdEMUE3MUJGQ0MwMDZCRDJBQSAvKiBDU1NGb250RmFtaWx5Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM1NkY5
N0YyNEQ5RjgxODAwNkMzRTQxIC8qIFdlYktpdEF1ZGlvTGlzdGVuZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTZGOTdFMjREOUY4MDkwMDZDM0U0
MSAvKiBXZWJLaXRBdWRpb0xpc3RlbmVyLmggKi87IH07CiAJCTgzNThDQjcwMUM1MzI3NzUwMEUw
QzJEOCAvKiBKU1hNTERvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4M0Y1NzBBRDFDNTMyNjhFMDA3RkQ2Q0IgLyogSlNYTUxEb2N1bWVudC5o
ICovOyB9OwogCQk4MzVEMkQ3ODFGNUYxRkJEMDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVu
dHJpZXNBUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDgzNUQyRDc1MUY1RjFGQjgwMDE0MURFRCAvKiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5o
ICovOyB9OwogCQk4MzVEMzYzNzE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9t
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEMzYz
NjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi87IH07CiAJCTgzNUQ1
NEM1MUY0REU1MzgwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNUQ1NEMyMUY0REU1MzQw
MEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENyZWF0b3IuaCAqLzsgfTsKKwkJODM1REE5MDIy
NEY1ODI2NTAwMjJEREE0IC8qIElJUkRTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1REE5MDEyNEY1ODI1NzAwMjJEREE0IC8qIElJUkRT
UEtlcm5lbC5oICovOyB9OwogCQk4MzYyRThDMTIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJl
YXRBc0NvbnRpbnVpbmdMb2FkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJODM2NTg5REUxRjU0QTc2OTAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJl
YWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2
NTg5RDkxRjU0QTc2MjAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5oICov
OyB9OwogCQk4MzY1ODlFMDFGNTRBNzZFMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
MzY1ODlEODFGNTRBNzYyMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmgg
Ki87IH07CkBAIC0yNTA0LDYgKzI1MDgsNyBAQAogCQk4Mzk5NDcxMDFGNTBCNkZBMDBFOUQ4NkIg
LyogSlNET01GaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4Mzk5NDcwRTFGNTBCNkYzMDBFOUQ4NkIgLyogSlNET01GaWxlU3lzdGVtLmgg
Ki87IH07CiAJCTgzOUEyRjJFMUUyMDRBNzEwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QTJGMkMx
RTIwNEE2RDAwMzkwNTdFIC8qIFdlYkdMU3RhdGVUcmFja2VyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM5QUFGRUQxQTBDMEM4RDAwNjA1Rjk5
IC8qIEhUTUxXQlJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzlBQUZFQjFBMEMwQzhEMDA2MDVGOTkgLyogSFRNTFdCUkVsZW1lbnQuaCAq
LzsgfTsKKwkJODM5QkU2RDUyNEY1ODc2MjAwNERGNTBGIC8qIElJUkZpbHRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QkU2RDIyNEY1ODc1NTAw
NERGNTBGIC8qIElJUkZpbHRlci5oICovOyB9OwogCQk4M0EyQUJEQjI0RDg2REUwMDBFMkQ3M0Qg
LyogRGVsYXlPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVsYXlPcHRpb25zLmggKi87IH07
CiAJCTgzQThBQzQwMUZBQkJGRTUwMDIwNjRBQyAvKiBTZXJ2aWNlV29ya2VySWRlbnRpZmllci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNBOEFDM0Ux
RkFCQkZEMTAwMjA2NEFDIC8qIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODNCMUE3MDIyNDk5ODVGMDAw
RkU1OTYxIC8qIFdlYktpdEF1ZGlvQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODNCMUE2RkYyNDk5ODVEMDAwRkU1OTYxIC8qIFdlYktpdEF1
ZGlvQ29udGV4dC5oICovOyB9OwpAQCAtMTA0NDUsNiArMTA0NTAsOCBAQAogCQk4MzBBMUM3QzI0
REI3ODcwMDAyRUNDQUQgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk4MzBBMzZCQTFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50
SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vdXNlRXZl
bnRJbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODMwQTM2QkIxREFDNUZB
NzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNNb3VzZUV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzBEMEI2NjI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IElJUlByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzBEMEI2
ODI0RjU3RDUwMDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IElJUlByb2Nlc3Nvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzMEVFQUI3
MjREQjZBNTIwMDlFRkJDRSAvKiBXZWJLaXREeW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODMwRUVBQjkyNERCNkE1MjAwOUVGQkNFIC8qIFdlYktpdER5bmFtaWNz
Q29tcHJlc3Nvck5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYktpdER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzEwMkIyMzFGOUVBREMyMDBFNDA0Qjkg
LyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTA0OTgsNiArMTA1MDUsMTEgQEAKIAkJODM0REQ0RjMxQkUwODk4OTAwMkM5QzNF
IC8qIFBhZ2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQ
YWdlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzRERkFDQzFGN0RBRTU2
MDBDMjcyNUIgLyogU2hhcmVkU3RyaW5nSGFzaC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTaGFyZWRTdHJpbmdIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTgzNERGQUNFMUY3REFFNTcwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXJlZFN0cmluZ0hhc2guY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTE5RTI0RjU3M0FEMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJSVJGaWx0ZXJOb2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MDUxQTAyNEY1NzNBRTAwOTkxMUQ3IC8qIElJ
UkZpbHRlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSUlSRmlsdGVyT3B0aW9ucy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFBMTI0RjU3M0FFMDA5OTExRDcgLyogSUlS
RmlsdGVyTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVyTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IElJUkZpbHRlck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM1MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IElJUkZpbHRlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzUwQzNFNzFEQTU5QjYyMDAzNTU0MjQgLyogU2Nyb2xsTG9naWNhbFBvc2l0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbExvZ2ljYWxQb3NpdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUwQzNFNzFEQTU5QjYyMDAzNTU0MzUgLyogU2Ny
b2xsSW50b1ZpZXdPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
cm9sbEludG9WaWV3T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzUw
QzNFNzFEQTU5QjYyMDAzNTY0MjQgLyogU2Nyb2xsQmVoYXZpb3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQmVoYXZpb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTEwNTIwLDYgKzEwNTMyLDggQEAKIAkJODM1RDM2MzYxOUZGNjE5MzAwNEM5M0FC
IC8qIFN0eWxlQnVpbGRlckN1c3RvbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTdHlsZUJ1aWxkZXJDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM1
RDU0QzExRjRERTUzNDAwRTYwNjcxIC8qIERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXJlY3RvcnlGaWxlTGlzdENyZWF0
b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzVENTRDMjFGNERFNTM0MDBF
NjA2NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElJUkRTUEtlcm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNURBOTAxMjRGNTgyNTcwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSUlSRFNQS2VybmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTgzNUY4QjI2MUQyRDkwQkEwMEU0MDhFQyAvKiBTbG90YWJsZS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gU2xvdGFibGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzYyRThCRjIwQ0VGOUNCMDAyNDU4ODYgLyogU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNob3VsZFRyZWF0QXNDb250aW51aW5n
TG9hZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzY1ODlEODFGNTRBNzYyMDBE
QzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTA2MDQsNiArMTA2MTgsOCBAQAogCQk4MzlBMkYyQzFFMjA0
QTZEMDAzOTA1N0UgLyogV2ViR0xTdGF0ZVRyYWNrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViR0xTdGF0ZVRyYWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJODM5QUFGRUExQTBDMEM4RDAwNjA1Rjk5IC8qIEhUTUxXQlJFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxXQlJFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM5QUFGRUIxQTBDMEM4RDAwNjA1Rjk5IC8qIEhU
TUxXQlJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxXQlJF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQyMjRGNTg3NTUw
MDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SUlSRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUJFNkQ0MjRGNTg3
NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSUlSRmlsdGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNB
MkFCRDgyNEQ4NkRDNjAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
ZWxheU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBMkFCREEyNEQ4
NkRDNzAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGVsYXlPcHRpb25zLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODNBNEE5RjgxQ0U3RkQ3RTAwNzA5QjAwIC8q
IEpTWE1MRG9jdW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNYTUxEb2N1bWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0yOTY3OSw2ICsyOTY5NSwxNSBAQAogCQkJCUZEMzE1RkM0MTJCMDI2NzUwMEMxQTM1OSAv
KiBHYWluTm9kZS5pZGwgKi8sCiAJCQkJODM3NDVDRkYyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5P
cHRpb25zLmggKi8sCiAJCQkJODM3NDVEMDEyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5PcHRpb25z
LmlkbCAqLywKKwkJCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmNw
cCAqLywKKwkJCQk4MzVEQTkwMTI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVsLmggKi8s
CisJCQkJODM1MDUxOUUyNEY1NzNBRDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuY3BwICovLAor
CQkJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmggKi8sCisJCQkJ
ODM1MDUxQTEyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaWRsICovLAorCQkJCTgz
NTA1MUEwMjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggKi8sCisJCQkJODM1
MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICovLAorCQkJCTgz
MEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuY3BwICovLAorCQkJCTgzMEQw
QjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCAqLywKIAkJCQlGRDZGMjUyOTEz
RjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmNwcCAqLywKIAkJ
CQlGRDZGMjUyQTEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2Rl
LmggKi8sCiAJCQkJRkQ2RjI1MkIxM0Y1RUYwRTAwNjUxNjVGIC8qIE1lZGlhRWxlbWVudEF1ZGlv
U291cmNlTm9kZS5pZGwgKi8sCkBAIC0yOTgzMiw2ICsyOTg1Nyw4IEBACiAJCQkJRkQzMTYwNjkx
MkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZLZXJuZWwuaCAqLywKIAkJCQlGRDMxNjA2QTEyQjAyNkY3
MDBDMUEzNTkgLyogSFJURlBhbm5lci5jcHAgKi8sCiAJCQkJRkQzMTYwNkIxMkIwMjZGNzAwQzFB
MzU5IC8qIEhSVEZQYW5uZXIuaCAqLywKKwkJCQk4MzlCRTZENDI0RjU4NzU1MDA0REY1MEYgLyog
SUlSRmlsdGVyLmNwcCAqLywKKwkJCQk4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmls
dGVyLmggKi8sCiAJCQkJRkRCMTcwMDMxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hhbm5lbFJl
c2FtcGxlci5jcHAgKi8sCiAJCQkJRkRCMTcwMDQxNEEyQkFCMjAwQTJCNUQ5IC8qIE11bHRpQ2hh
bm5lbFJlc2FtcGxlci5oICovLAogCQkJCTQxNkZEMjVEMjQwRUUxQUUwMDY2NjFEOCAvKiBOb3dQ
bGF5aW5nSW5mby5oICovLApAQCAtMzE0NTAsNiArMzE0NzcsMTEgQEAKIAkJCQlDM0NGMTdBNzE1
QjAwNjNGMDAyNzZEMzkgLyogSWRUYXJnZXRPYnNlcnZlclJlZ2lzdHJ5LmggaW4gSGVhZGVycyAq
LywKIAkJCQk4QUI0QkM3NzEyNkZEQjcxMDBERUI3MjcgLyogSWdub3JlRGVzdHJ1Y3RpdmVXcml0
ZUNvdW50SW5jcmVtZW50ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ2NzMwMjAyMUM0RUZFNzgw
MEJDQjM1NyAvKiBJZ25vcmVPcGVuc0R1cmluZ1VubG9hZENvdW50SW5jcmVtZW50ZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzNURBOTAyMjRGNTgyNjUwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzOUJFNkQ1MjRGNTg3NjIwMDRERjUwRiAvKiBJSVJGaWx0
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNTA1MUE0MjRGNTczQzQwMDk5MTFENyAvKiBJSVJG
aWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzUwNTFBNTI0RjU3M0M4MDA5OTExRDcg
LyogSUlSRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMwRDBCNjkyNEY1N0Q2
NzAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjI3NTM1NzAw
QjA1MzgxNDAwMkNFNjRGIC8qIEltYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NUEzMzZGOTFE
ODIxRTNDMDAyMkM0QzcgLyogSW1hZ2VCYWNraW5nU3RvcmUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxODE1QTMxMUY5QTZDOEYwMEZDQkY4OSAvKiBJbWFnZUJpdG1hcC5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5h
bWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlQnVpbHRpbk5hbWVzLmgK
aW5kZXggMjI0ZGJjMmU2MzM5ZTY0ZDUwNjNlYjJjZDViOTgxM2ZmZTczNjJkOC4uNmQwOWYyMWY2
ZGExZDNlY2EyMTkwMWI4NjEzOGUwM2NlNTAwYzI1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvV2ViQ29yZUJ1aWx0aW5OYW1lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1dlYkNvcmVCdWlsdGluTmFtZXMuaApAQCAtMTQzLDYgKzE0Myw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICBtYWNybyhJREJSZXF1ZXN0KSBcCiAgICAgbWFjcm8oSURC
VHJhbnNhY3Rpb24pIFwKICAgICBtYWNybyhJREJWZXJzaW9uQ2hhbmdlRXZlbnQpIFwKKyAgICBt
YWNybyhJSVJGaWx0ZXJOb2RlKSBcCiAgICAgbWFjcm8oSW1hZ2VCaXRtYXApIFwKICAgICBtYWNy
byhJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQpIFwKICAgICBtYWNybyhJZGxlRGVhZGxpbmUp
IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjI3YWEyZDI5MjliNmQ5YjlkNDlmODY4MGYyMTA5ZDQwM2FmYjhhNDMKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9JSVJGaWx0ZXIuY3BwCkBAIC0w
LDAgKzEsMjM2IEBACisvKgorICogQ29weXJpZ2h0IDIwMTYgVGhlIENocm9taXVtIEF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAsIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lm
IEVOQUJMRShXRUJfQVVESU8pCisjaW5jbHVkZSAiSUlSRmlsdGVyLmgiCisKKyNpbmNsdWRlICJB
dWRpb0FycmF5LmgiCisjaW5jbHVkZSAiVmVjdG9yTWF0aC5oIgorI2luY2x1ZGUgPGFsZ29yaXRo
bT4KKyNpbmNsdWRlIDxjb21wbGV4PgorI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY29uc3RleHByIHVuc2lnbmVkIGlpclJlbmRlcmluZ1F1YW50
dW0gPSAxMjg7CisKKy8vIFRoZSBsZW5ndGggb2YgdGhlIG1lbW9yeSBidWZmZXJzIGZvciB0aGUg
SUlSIGZpbHRlci4gVGhpcyBNVVNUIGJlIGEgcG93ZXIgb2YKKy8vIHR3byBhbmQgbXVzdCBiZSBn
cmVhdGVyIHRoYW4gdGhlIHBvc3NpYmxlIGxlbmd0aCBvZiB0aGUgZmlsdGVyIGNvZWZmaWNpZW50
cy4KK2NvbnN0ZXhwciBpbnQgYnVmZmVyTGVuZ3RoID0gMzI7CitzdGF0aWNfYXNzZXJ0KGJ1ZmZl
ckxlbmd0aCA+PSBJSVJGaWx0ZXI6Om1heE9yZGVyICsgMSwgIkludGVybmFsIElJUiBidWZmZXIg
bGVuZ3RoIG11c3QgYmUgZ3JlYXRlciB0aGFuIG1heGltdW0gSUlSIEZpbHRlciBvcmRlci4iKTsK
Kworc3RhdGljIHN0ZDo6Y29tcGxleDxkb3VibGU+IGV2YWx1YXRlUG9seW5vbWlhbChjb25zdCBk
b3VibGUqIGNvZWZmaWNpZW50cywgc3RkOjpjb21wbGV4PGRvdWJsZT4geiwgaW50IG9yZGVyKQor
eworICAgIC8vIFVzZSBIb3JuZXIncyBtZXRob2QgdG8gZXZhbHVhdGUgdGhlIHBvbHlub21pYWwg
UCh6KSA9IHN1bShjb2VmW2tdKnpeaywgaywgMCwgb3JkZXIpOworICAgIHN0ZDo6Y29tcGxleDxk
b3VibGU+IHJlc3VsdCA9IDA7CisgICAgZm9yIChpbnQgayA9IG9yZGVyOyBrID49IDA7IC0taykK
KyAgICAgICAgcmVzdWx0ID0gcmVzdWx0ICogeiArIHN0ZDo6Y29tcGxleDxkb3VibGU+KGNvZWZm
aWNpZW50c1trXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworSUlSRmlsdGVyOjpJSVJGaWx0
ZXIoY29uc3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRmb3J3YXJkLCBjb25zdCBWZWN0b3I8ZG91Ymxl
PiYgZmVlZGJhY2spCisgICAgOiBtX2ZlZWRmb3J3YXJkKGZlZWRmb3J3YXJkKQorICAgICwgbV9m
ZWVkYmFjayhmZWVkYmFjaykKK3sKKyAgICBtX3hCdWZmZXIuZmlsbCgwLCBidWZmZXJMZW5ndGgp
OworICAgIG1feUJ1ZmZlci5maWxsKDAsIGJ1ZmZlckxlbmd0aCk7Cit9CisKK3ZvaWQgSUlSRmls
dGVyOjpyZXNldCgpCit7CisgICAgbV94QnVmZmVyLmZpbGwoMCk7CisgICAgbV95QnVmZmVyLmZp
bGwoMCk7CisgICAgbV9idWZmZXJJbmRleCA9IDA7Cit9CisKK3ZvaWQgSUlSRmlsdGVyOjpwcm9j
ZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZsb2F0KiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1l
c1RvUHJvY2VzcykKK3sKKyAgICAvLyBDb21wdXRlCisgICAgLy8KKyAgICAvLyAgIHlbbl0gPSBz
dW0oYltrXSAqIHhbbiAtIGtdLCBrID0gMCwgTSkgLSBzdW0oYVtrXSAqIHlbbiAtIGtdLCBrID0g
MSwgTikKKyAgICAvLworICAgIC8vIHdoZXJlIGJba10gYXJlIHRoZSBmZWVkZm9yd2FyZCBjb2Vm
ZmljaWVudHMgYW5kIGFba10gYXJlIHRoZSBmZWVkYmFjaworICAgIC8vIGNvZWZmaWNpZW50cyBv
ZiB0aGUgZmlsdGVyLgorICAgIC8vIFRoaXMgaXMgYSBEaXJlY3QgRm9ybSBJIGltcGxlbWVudGF0
aW9uIG9mIGFuIElJUiBGaWx0ZXIuIFNob3VsZCB3ZQorICAgIC8vIGNvbnNpZGVyIGRvaW5nIGEg
ZGlmZmVyZW50IGltcGxlbWVudGF0aW9uIHN1Y2ggYXMgVHJhbnNwb3NlZCBEaXJlY3QgRm9ybQor
ICAgIC8vIElJPworICAgIGNvbnN0IGRvdWJsZSogZmVlZGJhY2sgPSBtX2ZlZWRiYWNrLmRhdGEo
KTsKKyAgICBjb25zdCBkb3VibGUqIGZlZWRmb3J3YXJkID0gbV9mZWVkZm9yd2FyZC5kYXRhKCk7
CisKKyAgICBBU1NFUlQoZmVlZGJhY2spOworICAgIEFTU0VSVChmZWVkZm9yd2FyZCk7CisKKyAg
ICAvLyBTYW5pdHkgY2hlY2sgdG8gc2VlIGlmIHRoZSBmZWVkYmFjayBjb2VmZmljaWVudHMgaGF2
ZSBiZWVuIHNjYWxlZCBhcHByb3ByaWF0ZWx5LiBJdCBtdXN0IGJlIEVYQUNUTFkgMSEKKyAgICBB
U1NFUlQoZmVlZGJhY2tbMF0gPT0gMSk7CisKKyAgICBpbnQgZmVlZGJhY2tMZW5ndGggPSBtX2Zl
ZWRiYWNrLnNpemUoKTsKKyAgICBpbnQgZmVlZGZvcndhcmRMZW5ndGggPSBtX2ZlZWRmb3J3YXJk
LnNpemUoKTsKKyAgICBpbnQgbWluTGVuZ3RoID0gc3RkOjptaW4oZmVlZGJhY2tMZW5ndGgsIGZl
ZWRmb3J3YXJkTGVuZ3RoKTsKKworICAgIGRvdWJsZSogeEJ1ZmZlciA9IG1feEJ1ZmZlci5kYXRh
KCk7CisgICAgZG91YmxlKiB5QnVmZmVyID0gbV95QnVmZmVyLmRhdGEoKTsKKworICAgIGZvciAo
c2l6ZV90IG4gPSAwOyBuIDwgZnJhbWVzVG9Qcm9jZXNzOyArK24pIHsKKyAgICAgICAgLy8gVG8g
aGVscCBtaW5pbWl6ZSByb3VuZG9mZiwgd2UgY29tcHV0ZSB1c2luZyBkb3VibGUncywgZXZlbiB0
aG91Z2ggdGhlCisgICAgICAgIC8vIGZpbHRlciBjb2VmZmljaWVudHMgb25seSBoYXZlIHNpbmds
ZSBwcmVjaXNpb24gdmFsdWVzLgorICAgICAgICBkb3VibGUgeW4gPSBmZWVkZm9yd2FyZFswXSAq
IHNvdXJjZVtuXTsKKworICAgICAgICAvLyBSdW4gYm90aCB0aGUgZmVlZGZvcndhcmQgYW5kIGZl
ZWRiYWNrIHRlcm1zIHRvZ2V0aGVyLCB3aGVuIHBvc3NpYmxlLgorICAgICAgICBmb3IgKGludCBr
ID0gMTsgayA8IG1pbkxlbmd0aDsgKytrKSB7CisgICAgICAgICAgICBpbnQgbSA9IChtX2J1ZmZl
ckluZGV4IC0gaykgJiAoYnVmZmVyTGVuZ3RoIC0gMSk7CisgICAgICAgICAgICB5biArPSBmZWVk
Zm9yd2FyZFtrXSAqIHhCdWZmZXJbbV07CisgICAgICAgICAgICB5biAtPSBmZWVkYmFja1trXSAq
IHlCdWZmZXJbbV07CisgICAgICAgIH0KKworICAgICAgICAvLyBIYW5kbGUgYW55IHJlbWFpbmlu
ZyBmZWVkZm9yd2FyZCBvciBmZWVkYmFjayB0ZXJtcy4KKyAgICAgICAgZm9yIChpbnQgayA9IG1p
bkxlbmd0aDsgayA8IGZlZWRmb3J3YXJkTGVuZ3RoOyArK2spCisgICAgICAgICAgICB5biArPSBm
ZWVkZm9yd2FyZFtrXSAqIHhCdWZmZXJbKG1fYnVmZmVySW5kZXggLSBrKSAmIChidWZmZXJMZW5n
dGggLSAxKV07CisgICAgICAgIGZvciAoaW50IGsgPSBtaW5MZW5ndGg7IGsgPCBmZWVkYmFja0xl
bmd0aDsgKytrKQorICAgICAgICAgICAgeW4gLT0gZmVlZGJhY2tba10gKiB5QnVmZmVyWyhtX2J1
ZmZlckluZGV4IC0gaykgJiAoYnVmZmVyTGVuZ3RoIC0gMSldOworCisgICAgICAgIC8vIFNhdmUg
dGhlIGN1cnJlbnQgaW5wdXQgYW5kIG91dHB1dCB2YWx1ZXMgaW4gdGhlIG1lbW9yeSBidWZmZXJz
IGZvciB0aGUKKyAgICAgICAgLy8gbmV4dCBvdXRwdXQuCisgICAgICAgIG1feEJ1ZmZlclttX2J1
ZmZlckluZGV4XSA9IHNvdXJjZVtuXTsKKyAgICAgICAgbV95QnVmZmVyW21fYnVmZmVySW5kZXhd
ID0geW47CisKKyAgICAgICAgbV9idWZmZXJJbmRleCA9IChtX2J1ZmZlckluZGV4ICsgMSkgJiAo
YnVmZmVyTGVuZ3RoIC0gMSk7CisKKyAgICAgICAgZGVzdGluYXRpb25bbl0gPSB5bjsKKyAgICB9
Cit9CisKK3ZvaWQgSUlSRmlsdGVyOjpnZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBsZW5n
dGgsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3ksIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBo
YXNlUmVzcG9uc2UpCit7CisgICAgLy8gRXZhbHVhdGUgdGhlIHotdHJhbnNmb3JtIG9mIHRoZSBm
aWx0ZXIgYXQgdGhlIGdpdmVuIG5vcm1hbGl6ZWQgZnJlcXVlbmNpZXMKKyAgICAvLyBmcm9tIDAg
dG8gMS4gKE9uZSBjb3JyZXNwb25kcyB0byB0aGUgTnlxdWlzdCBmcmVxdWVuY3kuKQorICAgIC8v
CisgICAgLy8gVGhlIHotdHJhbmZvcm0gb2YgdGhlIGZpbHRlciBpcworICAgIC8vCisgICAgLy8g
SCh6KSA9IHN1bShiW2tdKnpeKC1rKSwgaywgMCwgTSkgLyBzdW0oYVtrXSp6XigtayksIGssIDAs
IE4pOworICAgIC8vCisgICAgLy8gVGhlIGRlc2lyZWQgZnJlcXVlbmN5IHJlc3BvbnNlIGlzIEgo
ZXhwKGoqb21lZ2EpKSwgd2hlcmUgb21lZ2EgaXMgaW4gWzAsCisgICAgLy8gMSkuCisgICAgLy8K
KyAgICAvLyBMZXQgUCh4KSA9IHN1bShjW2tdKnheaywgaywgMCwgUCkgYmUgYSBwb2x5bm9taWFs
IG9mIG9yZGVyIFAuIFRoZW4gZWFjaCBvZgorICAgIC8vIHRoZSBzdW1zIGluIEgoeikgaXMgZXF1
aXZhbGVudCB0byBldmFsdWF0aW5nIGEgcG9seW5vbWlhbCBhdCB0aGUgcG9pbnQKKyAgICAvLyAx
L3ouCisKKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spIHsKKyAgICAg
ICAgaWYgKGZyZXF1ZW5jeVtrXSA8IDAgfHwgZnJlcXVlbmN5W2tdID4gMSkgeworICAgICAgICAg
ICAgLy8gT3V0LW9mLWJvdW5kcyBmcmVxdWVuY2llcyBzaG91bGQgcmV0dXJuIE5hTi4KKyAgICAg
ICAgICAgIG1hZ1Jlc3BvbnNlW2tdID0gc3RkOjpuYW5mKCIiKTsKKyAgICAgICAgICAgIHBoYXNl
UmVzcG9uc2Vba10gPSBzdGQ6Om5hbmYoIiIpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgLy8gelJlY2lwID0gMS96ID0gZXhwKC1qKmZyZXF1ZW5jeSkKKyAgICAgICAgICAgIGRvdWJs
ZSBvbWVnYSA9IC1waURvdWJsZSAqIGZyZXF1ZW5jeVtrXTsKKyAgICAgICAgICAgIGF1dG8gelJl
Y2lwID0gc3RkOjpjb21wbGV4PGRvdWJsZT4oY29zKG9tZWdhKSwgc2luKG9tZWdhKSk7CisKKyAg
ICAgICAgICAgIGF1dG8gbnVtZXJhdG9yID0gZXZhbHVhdGVQb2x5bm9taWFsKG1fZmVlZGZvcndh
cmQuZGF0YSgpLCB6UmVjaXAsIG1fZmVlZGZvcndhcmQuc2l6ZSgpIC0gMSk7CisgICAgICAgICAg
ICBhdXRvIGRlbm9taW5hdG9yID0gZXZhbHVhdGVQb2x5bm9taWFsKG1fZmVlZGJhY2suZGF0YSgp
LCB6UmVjaXAsIG1fZmVlZGJhY2suc2l6ZSgpIC0gMSk7CisgICAgICAgICAgICBhdXRvIHJlc3Bv
bnNlID0gbnVtZXJhdG9yIC8gZGVub21pbmF0b3I7CisgICAgICAgICAgICBtYWdSZXNwb25zZVtr
XSA9IHN0YXRpY19jYXN0PGZsb2F0PihhYnMocmVzcG9uc2UpKTsKKyAgICAgICAgICAgIHBoYXNl
UmVzcG9uc2Vba10gPSBzdGF0aWNfY2FzdDxmbG9hdD4oYXRhbjIoaW1hZyhyZXNwb25zZSksIHJl
YWwocmVzcG9uc2UpKSk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK2RvdWJsZSBJSVJGaWx0ZXI6
OnRhaWxUaW1lKGRvdWJsZSBzYW1wbGVSYXRlLCBib29sIGlzRmlsdGVyU3RhYmxlKQoreworICAg
IC8vIFRoZSBtYXhpbXVtIHRhaWwgdGltZS4gVGhpcyBpcyBzb21ld2hhdCBhcmJpdHJhcnksIGJ1
dCB3ZSdyZSBhc3N1bWluZyB0aGF0CisgICAgLy8gbm8gb25lIGlzIGdvaW5nIHRvIGV4cGVjdCB0
aGUgSUlSRmlsdGVyIHRvIHByb2R1Y2UgYW4gb3V0cHV0IGFmdGVyIHRoaXMKKyAgICAvLyBtdWNo
IHRpbWUgYWZ0ZXIgdGhlIGlucHV0cyBoYXZlIHN0b3BwZWQuCisgICAgY29uc3RleHByIGRvdWJs
ZSBtYXhUYWlsVGltZSA9IDEwOworCisgICAgLy8gSWYgdGhlIG1heGltdW0gYW1wbGl0dWRlIG9m
IHRoZSBpbXB1bHNlIHJlc3BvbnNlIGlzIGxlc3MgdGhhbiB0aGlzLCB3ZQorICAgIC8vIGFzc3Vt
ZSB0aGF0IHdlJ3ZlIHJlYWNoZWQgdGhlIHRhaWwgb2YgdGhlIHJlc3BvbnNlLiBDdXJyZW50bHks
IHRoaXMgbWVhbnMKKyAgICAvLyB0aGF0IHRoZSBpbXB1bHNlIGlzIGxlc3MgdGhhbiAxIGJpdCBv
ZiBhIDE2LWJpdCBQQ00gdmFsdWUuCisgICAgY29uc3RleHByIGZsb2F0IG1heFRhaWxBbXBsaXR1
ZGUgPSAxIC8gMzI3NjguMDsKKworICAgIC8vIElmIGZpbHRlciBpcyBub3Qgc3RhYmxlLCBqdXN0
IHJldHVybiBtYXggdGFpbC4gU2luY2UgdGhlIGZpbHRlciBpcyBub3QKKyAgICAvLyBzdGFibGUs
IHRoZSBpbXB1bHNlIHJlc3BvbnNlIHdvbid0IGNvbnZlcmdlIHRvIHplcm8sIHNvIHdlIGRvbid0
IG5lZWQgdG8KKyAgICAvLyBmaW5kIHRoZSBpbXB1bHNlIHJlc3BvbnNlIHRvIGZpbmQgdGhlIGFj
dHVhbCB0YWlsIHRpbWUuCisgICAgaWYgKCFpc0ZpbHRlclN0YWJsZSkKKyAgICAgICAgcmV0dXJu
IG1heFRhaWxUaW1lOworCisgICAgLy8gSG93IHRvIGNvbXB1dGUgdGhlIHRhaWwgdGltZT8gV2Un
cmUgZ29pbmcgdG8gZmlsdGVyIGFuIGltcHVsc2UKKyAgICAvLyBmb3IgfG1heFRhaWxUaW1lfCBz
ZWNvbmRzLCBpbiBibG9ja3Mgb2Yga1JlbmRlclF1YW50dW1GcmFtZXMgYXQKKyAgICAvLyBhIHRp
bWUuIFRoZSBtYXhpbXVtIG1hZ25pdHVkZSBvZiB0aGlzIGJsb2NrIGlzIHNhdmVkLiBBZnRlciBh
bGwKKyAgICAvLyBvZiB0aGUgc2FtcGxlcyBoYXZlIGJlZW4gY29tcHV0ZWQsIGZpbmQgdGhlIGxh
c3QgYmxvY2sgd2l0aCBhCisgICAgLy8gbWF4aW11bSBtYWduaXR1ZGUgZ3JlYXRlciB0aGFuIHxr
TWF4VGFpbGVBbXBsaXR1ZGV8LiBUaGF0IGJsb2NrCisgICAgLy8gaW5kZXggKyAxIHdpbGwgYmUg
dGhlIHRhaWwgdGltZS4gV2UgZG9uJ3QgbmVlZCB0byBiZQorICAgIC8vIHN1cGVyLWFjY3VyYXRl
IGluIGNvbXB1dGluZyB0aGUgdGFpbCB0aW1lIHNpbmNlIHdlIHByb2Nlc3Mgb24KKyAgICAvLyBi
bG9ja3MsIGJsb2NrIGFjY3VyYWN5IGlzIGdvb2QgZW5vdWdoLCBhbmQgdGhlIHZhbHVlIGp1c3Qg
bmVlZHMKKyAgICAvLyB0byBiZSBsYXJnZXIgdGhhbiB0aGUgInJlYWwiIHRhaWwgdGltZSwgc28g
d2UgZG9uJ3QgcHJlbWF0dXJlbHkKKyAgICAvLyB6ZXJvIG91dCB0aGUgb3V0cHV0IG9mIHRoZSBu
b2RlLgorCisgICAgLy8gTnVtYmVyIG9mIHJlbmRlciBxdWFudGEgbmVlZGVkIHRvIHJlYWNoIHRo
ZSBtYXggdGFpbCB0aW1lLgorICAgIGludCBudW1iZXJPZkJsb2NrcyA9IHN0ZDo6Y2VpbChzYW1w
bGVSYXRlICogbWF4VGFpbFRpbWUgLyBpaXJSZW5kZXJpbmdRdWFudHVtKTsKKworICAgIC8vIElu
cHV0IGFuZCBvdXRwdXQgYnVmZmVycyBmb3IgZmlsdGVyaW5nLgorICAgIEF1ZGlvRmxvYXRBcnJh
eSBpbnB1dChpaXJSZW5kZXJpbmdRdWFudHVtKTsKKyAgICBBdWRpb0Zsb2F0QXJyYXkgb3V0cHV0
KGlpclJlbmRlcmluZ1F1YW50dW0pOworCisgICAgLy8gQXJyYXkgdG8gaG9sZCB0aGUgbWF4IG1h
Z25pdHVkZXMKKyAgICBBdWRpb0Zsb2F0QXJyYXkgbWFnbml0dWRlcyhudW1iZXJPZkJsb2Nrcyk7
CisKKyAgICAvLyBDcmVhdGUgdGhlIGltcHVsc2UgaW5wdXQgc2lnbmFsLgorICAgIGlucHV0WzBd
ID0gMTsKKworICAgIC8vIFByb2Nlc3MgdGhlIGZpcnN0IGJsb2NrIGFuZCBnZXQgdGhlIG1heCBt
YWduaXR1ZGUgb2YgdGhlIG91dHB1dC4KKyAgICBwcm9jZXNzKGlucHV0LmRhdGEoKSwgb3V0cHV0
LmRhdGEoKSwgaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisgICAgVmVjdG9yTWF0aDo6dm1heG1ndihv
dXRwdXQuZGF0YSgpLCAxLCAmbWFnbml0dWRlc1swXSwgaWlyUmVuZGVyaW5nUXVhbnR1bSk7CisK
KyAgICAvLyBQcm9jZXNzIHRoZSByZXN0IG9mIHRoZSBzaWduYWwsIGdldHRpbmcgdGhlIG1heCBt
YWduaXR1ZGUgb2YgdGhlCisgICAgLy8gb3V0cHV0IGZvciBlYWNoIGJsb2NrLgorICAgIGlucHV0
WzBdID0gMDsKKworICAgIGZvciAoaW50IGsgPSAxOyBrIDwgbnVtYmVyT2ZCbG9ja3M7ICsraykg
eworICAgICAgICBwcm9jZXNzKGlucHV0LmRhdGEoKSwgb3V0cHV0LmRhdGEoKSwgaWlyUmVuZGVy
aW5nUXVhbnR1bSk7CisgICAgICAgIFZlY3Rvck1hdGg6OnZtYXhtZ3Yob3V0cHV0LmRhdGEoKSwg
MSwgJm1hZ25pdHVkZXNba10sIGlpclJlbmRlcmluZ1F1YW50dW0pOworICAgIH0KKworICAgIC8v
IERvbmUgY29tcHV0aW5nIHRoZSBpbXB1bHNlIHJlc3BvbnNlOyByZXNldCB0aGUgc3RhdGUgc28g
dGhlIGFjdHVhbCBub2RlCisgICAgLy8gc3RhcnRzIGluIHRoZSBleHBlY3RlZCBpbml0aWFsIHN0
YXRlLgorICAgIHJlc2V0KCk7CisKKyAgICAvLyBGaW5kIHRoZSBsYXN0IGJsb2NrIHdpdGggYW1w
bGl0dWRlIGdyZWF0ZXIgdGhhbiB0aGUgdGhyZXNob2xkLgorICAgIGludCBpbmRleCA9IG51bWJl
ck9mQmxvY2tzIC0gMTsKKyAgICBmb3IgKGludCBrID0gaW5kZXg7IGsgPj0gMDsgLS1rKSB7Cisg
ICAgICAgIGlmIChtYWduaXR1ZGVzW2tdID4gbWF4VGFpbEFtcGxpdHVkZSkgeworICAgICAgICAg
ICAgaW5kZXggPSBrOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisKKyAg
ICAvLyBUaGUgbWFnbml0dWRlIGZpcnN0IGJlY29tZSBsb3dlciB0aGFuIHRoZSB0aHJlc2hvbGQg
YXQgdGhlIG5leHQgYmxvY2suCisgICAgLy8gQ29tcHV0ZSB0aGUgY29ycmVzcG9uZGluZyB0aW1l
IHZhbHVlIHZhbHVlOyB0aGF0J3MgdGhlIHRhaWwgdGltZS4KKyAgICByZXR1cm4gKGluZGV4ICsg
MSkgKiBpaXJSZW5kZXJpbmdRdWFudHVtIC8gc2FtcGxlUmF0ZTsKK30KKworfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQl9BVURJTykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vYXVkaW8vSUlSRmlsdGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODBkMGI4NzQzYjdiNzZjMGVk
ZTk0ZDI4YTcwOTQ0ZTRlY2FiN2FlOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL0lJUkZpbHRlci5oCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiBDb3B5
cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAyMCwgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
CisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgSUlSRmlsdGVyIHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9D
QVRFRDsKK3B1YmxpYzoKKyAgICBzdGF0aWMgY29uc3RleHByIHNpemVfdCBtYXhPcmRlciB7IDIw
IH07CisgICAgSUlSRmlsdGVyKGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBmZWVkZm9yd2FyZCwgY29u
c3QgVmVjdG9yPGRvdWJsZT4mIGZlZWRiYWNrKTsKKworICAgIHZvaWQgcmVzZXQoKTsKKworICAg
IHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGluYXRpb24sIHNp
emVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5z
aWduZWQgbGVuZ3RoLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5LCBmbG9hdCogbWFnUmVzcG9uc2Us
IGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKKyAgICBkb3VibGUgdGFpbFRpbWUoZG91YmxlIHNhbXBs
ZVJhdGUsIGJvb2wgaXNGaWx0ZXJTdGFibGUpOworCisgICAgY29uc3QgVmVjdG9yPGRvdWJsZT4m
IGZlZWRmb3J3YXJkKCkgY29uc3QgeyByZXR1cm4gbV9mZWVkZm9yd2FyZDsgfQorICAgIGNvbnN0
IFZlY3Rvcjxkb3VibGU+JiBmZWVkYmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fZmVlZGJhY2s7IH0K
KworcHJpdmF0ZToKKyAgICAvLyBGaWx0ZXIgbWVtb3J5CisgICAgLy8KKyAgICAvLyBGb3Igc2lt
cGxpY2l0eSwgd2UgYXNzdW1lIHxtX3hCdWZmZXJ8IGFuZCB8bV95QnVmZmVyfCBoYXZlIHRoZSBz
YW1lIGxlbmd0aCwKKyAgICAvLyBhbmQgdGhlIGxlbmd0aCBpcyBhIHBvd2VyIG9mIHR3by4gU2lu
Y2UgdGhlIG51bWJlciBvZiBjb2VmZmljaWVudHMgaGFzIGEKKyAgICAvLyBmaXhlZCB1cHBlciBs
ZW5ndGgsIHRoZSBzaXplIG9mIHhCdWZmZXIgYW5kIHlCdWZmZXIgaXMgZml4ZWQuIHxtX3hCdWZm
ZXJ8CisgICAgLy8gaG9sZHMgdGhlIG9sZCBpbnB1dCB2YWx1ZXMgYW5kIHxtX3lCdWZmZXJ8IGhv
bGRzIHRoZSBvbGQgb3V0cHV0IHZhbHVlcworICAgIC8vIG5lZWRlZCB0byBjb21wdXRlIHRoZSBu
ZXcgb3V0cHV0IHZhbHVlLgorICAgIC8vCisgICAgLy8gbV95QnVmZmVyW21fYnVmZmVySW5kZXhd
IGhvbGRzIHRoZSBtb3N0IHJlY2VudCBvdXRwdXQgdmFsdWUsIHNheSwgeVtuXS4KKyAgICAvLyBU
aGVuIG1feUJ1ZmZlclttX2J1ZmZlckluZGV4IC0ga10gaXMgeVtuIC0ga10uIFNpbWlsYXJseSBm
b3IgbV94QnVmZmVyLgorICAgIC8vCisgICAgLy8gVG8gbWluaW1pemUgcm91bmRvZmYsIHRoZXNl
IGFycmF5cyBhcmUgZG91YmxlJ3MgaW5zdGVhZCBvZiBmbG9hdHMuCisgICAgVmVjdG9yPGRvdWJs
ZT4gbV94QnVmZmVyOworICAgIFZlY3Rvcjxkb3VibGU+IG1feUJ1ZmZlcjsKKworICAgIC8vIElu
ZGV4IGludG8gdGhlIHhCdWZmZXIgYW5kIHlCdWZmZXIgYXJyYXlzIHdoZXJlIHRoZSBtb3N0IGN1
cnJlbnQgeCBhbmQgeQorICAgIC8vIHZhbHVlcyBzaG91bGQgYmUgc3RvcmVkLiB4QnVmZmVyW2J1
ZmZlckluZGV4XSBjb3JyZXNwb25kcyB0byB4W25dLCB0aGUKKyAgICAvLyBjdXJyZW50IHggaW5w
dXQgdmFsdWUgYW5kIHlCdWZmZXJbYnVmZmVySW5kZXhdIGlzIHdoZXJlIHlbbl0sIHRoZSBjdXJy
ZW50CisgICAgLy8gb3V0cHV0IHZhbHVlLgorICAgIHNpemVfdCBtX2J1ZmZlckluZGV4IHsgMCB9
OworCisgICAgLy8gVGhvc2UgVmVjdG9ycyBhcmUgb3duZWQgYnkgdGhlIElJUlByb2Nlc3MsIHdo
aWNoIG93bnMgdGhlIElJUkZpbHRlcnMgdmlhCisgICAgLy8gdGhlIElJUkRTUEtlcm5lbHMuIFRo
aXMgaXMgYSBtZW1vcnkgb3B0aW1pemF0aW9uIHRvIGF2b2lkIGhhdmluZyBjb3BpZXMKKyAgICAv
LyBvZiB0aGVzZSB2ZWN0b3JzIGluIGVhY2ggSUlSRFNQS2VybmVsIC8gSUlSRmlsdGVyLgorICAg
IGNvbnN0IFZlY3Rvcjxkb3VibGU+JiBtX2ZlZWRmb3J3YXJkOworICAgIGNvbnN0IFZlY3Rvcjxk
b3VibGU+JiBtX2ZlZWRiYWNrOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGlsaXRpZXMuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ltYWdlVXRpbGl0aWVzLmgKaW5kZXgg
OWIxOGNhYThkODZiZjhkMjc1M2MzY2JlY2E1ZDc0NDRmYWY5ODFkNy4uMDNjZjExN2Q1NGQ0MTkx
ODVkNGE4ZjAyNDYwNDc1NDU4MGM1MWQ3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvSW1hZ2VVdGlsaXRpZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9JbWFnZVV0aWxpdGllcy5oCkBAIC0yNSw2ICsyNSw5IEBACiAKICNwcmFn
bWEgb25jZQogCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKyNpbmNsdWRlIDx3dGYvV29ya1F1
ZXVlLmg+CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV0VCQ09SRV9FWFBPUlQgV29ya1F1ZXVl
JiBzaGFyZWRJbWFnZVRyYW5zY29kaW5nUXVldWUoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCmluZGV4IDU3YTYxMjUxY2I0YjMzNmQzOTIyZWM1MmFiZmE5YjY2YzI2NDcxODcuLjE5M2M3
YmM0ZDk5ZTg3Nzk0NTI3ZGUyNjgwOTE5ODg1Yzk2YTM5YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA4LTI1ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2UgaXMgbm90
IHN1cHBvcnRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjE1ODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAg
UmViYXNlbGluZSBXUFQgdGVzdHMgdGhhdCBhcmUgbm93IHBhc3NpbmcuCisKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9jdG9yLWlpcmZpbHRlci1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRl
cm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNwb25zZS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50
eHQ6CisKIDIwMjAtMDgtMjQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0
Lm9yZz4KIAogICAgICAgICBVcGRhdGUgaU9TIGxheW91dCB0ZXN0IHJlc3VsdHMgYWZ0ZXIgcjI2
NjA4NwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRl
c3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggN2U5NzI4NzkwOWFmMzZhZDcwYzhhZjdlYmJjMmI2
ZTUzN2ExMmFlZC4uMDAyZTM3ZWZiOTg3YjU4MTQ2ZGI0YjQwNDU4MGZjNzg3NTlkM2U3NSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zCkBAIC0zMzUsOCArMzM1LDEyIEBAIGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZh
Y2UvCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1kZWxheS5odG1sIFsgUGFzcyBGYWls
dXJlIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWdhaW4uaHRtbCBbIFBhc3MgRmFp
bHVyZSBdCiAKLSMgVGhpcyB0ZXN0IHBhc3NlcyBidXQgcHJpbnRzIGEgZGlmZmVyZW50IHZhbHVl
IGFsbW9zdCBldmVyeSB0aW1lLgorIyBvbmUtcG9sZSBzdWJ0ZXN0IGlzIGZsYWtpbHkgZmFpbGlu
Zy4KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLmh0bWwgWyBQYXNzIEZhaWx1
cmUgXQorCisjIFRoZXNlIHRlc3RzIHBhc3MgYnV0IHByaW50IGRpZmZlcmVudCB2YWx1ZXMgYWxt
b3N0IGV2ZXJ5IHRpbWUuCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNw
b25zZS00LWNoYW4uaHRtbCBbIFBhc3MgRmFpbHVyZSBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJm
YWNlL2N0b3ItaWlyZmlsdGVyLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQogCiAKICMgU29tZSBvZiB0
aGUgc3ViY2hlY2tzIGFyZSBmYWlsaW5nIGFuZCBwcmludCBvdXQgYSBkaWZmZXJlbnQgdmFsdWUg
ZXZlcnkgdGltZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9p
ZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggNWU5MTIzMmY4N2NkN2Uw
YTBkYWZlMjkwMTg2NTQ3YjNmM2FmNjUxOC4uODE3NDk0NTUxNjg0MjA0ZDI1YmM0OGQxMTFmNGRi
MmFiMGNiNGFlNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTMzLDcgKzMzLDcgQEAg
UEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIGNyZWF0ZUNvbnZvbHZl
cigpCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlRGVs
YXkob3B0aW9uYWwgZG91YmxlKSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9w
ZXJhdGlvbiBjcmVhdGVEeW5hbWljc0NvbXByZXNzb3IoKSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4
dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVhdGVHYWluKCkgCi1GQUlMIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4s
IHNlcXVlbmNlPGRvdWJsZT4pIGFzc2VydF9vd25fcHJvcGVydHk6IGludGVyZmFjZSBwcm90b3R5
cGUgb2JqZWN0IG1pc3Npbmcgbm9uLXN0YXRpYyBvcGVyYXRpb24gZXhwZWN0ZWQgcHJvcGVydHkg
ImNyZWF0ZUlJUkZpbHRlciIgbWlzc2luZworUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFj
ZTogb3BlcmF0aW9uIGNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxk
b3VibGU+KSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBjcmVh
dGVPc2NpbGxhdG9yKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRp
b24gY3JlYXRlUGFubmVyKCkgCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVy
YXRpb24gY3JlYXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0Piwgc2VxdWVuY2U8ZmxvYXQ+
LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25zdHJhaW50cykgCkBAIC05NCw4ICs5NCw4IEBAIFBB
U1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3Bl
cnR5ICJjcmVhdGVEZWxheShvcHRpCiBQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBj
YWxsaW5nIGNyZWF0ZURlbGF5KG9wdGlvbmFsIGRvdWJsZSkgb24gY29udGV4dCB3aXRoIHRvbyBm
ZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0
IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUR5bmFtaWNz
Q29tcHJlc3NvcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4
dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVHYWluKCki
IHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTog
Y29udGV4dCBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUlJUkZpbHRlcihzZXF1ZW5jZTxk
b3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2lu
aGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3QgZm91bmQgaW4gcHJvdG90eXBl
IGNoYWluCi1GQUlMIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjYWxsaW5nIGNyZWF0ZUlJ
UkZpbHRlcihzZXF1ZW5jZTxkb3VibGU+LCBzZXF1ZW5jZTxkb3VibGU+KSBvbiBjb250ZXh0IHdp
dGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2luaGVyaXRz
OiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWlu
CitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBjb250ZXh0IG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRvdWJs
ZT4pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZh
Y2U6IGNhbGxpbmcgY3JlYXRlSUlSRmlsdGVyKHNlcXVlbmNlPGRvdWJsZT4sIHNlcXVlbmNlPGRv
dWJsZT4pIG9uIGNvbnRleHQgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVF
cnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjcmVhdGVPc2NpbGxhdG9yKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAog
UEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogY29udGV4dCBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImNyZWF0ZVBhbm5lcigpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgQmFzZUF1
ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGNvbnRleHQgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVh
dGVQZXJpb2RpY1dhdmUoc2VxdWVuY2U8ZmxvYXQ+LCBzZXF1ZW5jZTxmbG9hdD4sIG9wdGlvbmFs
IFBlcmlvZGljV2F2ZUNvbnN0cmFpbnRzKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCkBAIC0xNDcs
OCArMTQ3LDggQEAgUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVB
dWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QKIFBBU1MgQmFzZUF1ZGlvQ29udGV4
dCBpbnRlcmZhY2U6IGNhbGxpbmcgY3JlYXRlRGVsYXkob3B0aW9uYWwgZG91YmxlKSBvbiBuZXcg
T2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgd2l0aCB0b28gZmV3IGFyZ3Vt
ZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZh
Y2U6IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVy
aXQgcHJvcGVydHkgImNyZWF0ZUR5bmFtaWNzQ29tcHJlc3NvcigpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKIFBBU1MgQmFzZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG5ldyBPZmZsaW5lQXVkaW9D
b250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNyZWF0ZUdh
aW4oKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCi1GQUlMIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJm
YWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8
ZG91YmxlPikiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkg
ImNyZWF0ZUlJUkZpbHRlciIgbm90IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgotRkFJTCBCYXNl
QXVkaW9Db250ZXh0IGludGVyZmFjZTogY2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8
ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPikgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwg
MSwgc2FtcGxlX3JhdGUpIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJy
b3IgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAiY3JlYXRlSUlSRmlsdGVyIiBub3QgZm91bmQg
aW4gcHJvdG90eXBlIGNoYWluCitQQVNTIEJhc2VBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBuZXcg
T2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgbXVzdCBpbmhlcml0IHByb3Bl
cnR5ICJjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91YmxlPiki
IHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTog
Y2FsbGluZyBjcmVhdGVJSVJGaWx0ZXIoc2VxdWVuY2U8ZG91YmxlPiwgc2VxdWVuY2U8ZG91Ymxl
Pikgb24gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIHdpdGggdG9v
IGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCiBQQVNTIEJhc2VBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJjcmVhdGVPc2NpbGxhdG9yKCkiIHdpdGggdGhlIHByb3Bl
ciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGludGVyZmFjZTogbmV3IE9mZmxpbmVBdWRp
b0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRl
UGFubmVyKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBCYXNlQXVkaW9Db250ZXh0IGlu
dGVyZmFjZTogbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAiY3JlYXRlUGVyaW9kaWNXYXZlKHNlcXVlbmNlPGZsb2F0Piwgc2Vx
dWVuY2U8ZmxvYXQ+LCBvcHRpb25hbCBQZXJpb2RpY1dhdmVDb25zdHJhaW50cykiIHdpdGggdGhl
IHByb3BlciB0eXBlIApAQCAtNzQ0LDQwICs3NDQsNDAgQEAgUEFTUyBBdWRpb05vZGUgaW50ZXJm
YWNlOiBuZXcgR2Fpbk5vZGUoY29udGV4dCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJudW1iZXJP
Zk8KIFBBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5Ob2RlKGNvbnRleHQpIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBB
U1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IEdhaW5Ob2RlKGNvbnRleHQpIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAiY2hhbm5lbENvdW50TW9kZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNT
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBHYWluTm9kZShjb250ZXh0KSBtdXN0IGluaGVyaXQg
cHJvcGVydHkgImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCi1G
QUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2Yg
aW50ZXJmYWNlIG9iamVjdCBhc3NlcnRfb3duX3Byb3BlcnR5OiBzZWxmIGRvZXMgbm90IGhhdmUg
b3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBlY3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVy
Tm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZSBvYmplY3QgbGVuZ3Ro
IGFzc2VydF9vd25fcHJvcGVydHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJ
UkZpbHRlck5vZGUiIGV4cGVjdGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1G
QUlMIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIG9iamVjdCBuYW1lIGFzc2VydF9vd25fcHJvcGVy
dHk6IHNlbGYgZG9lcyBub3QgaGF2ZSBvd24gcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIGV4cGVj
dGVkIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBtaXNzaW5nCi1GQUlMIElJUkZpbHRlck5vZGUg
aW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlw
ZSBvYmplY3QgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9w
ZXJ0eSAiSUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1p
c3NpbmcKLUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVy
dGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVy
dHkgYXNzZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAi
SUlSRmlsdGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcK
LUZBSUwgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBv
ZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgYXNz
ZXJ0X293bl9wcm9wZXJ0eTogc2VsZiBkb2VzIG5vdCBoYXZlIG93biBwcm9wZXJ0eSAiSUlSRmls
dGVyTm9kZSIgZXhwZWN0ZWQgcHJvcGVydHkgIklJUkZpbHRlck5vZGUiIG1pc3NpbmcKLUZBSUwg
SUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRGcmVxdWVuY3lSZXNwb25zZShG
bG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSBhc3NlcnRfb3duX3Byb3Bl
cnR5OiBzZWxmIGRvZXMgbm90IGhhdmUgb3duIHByb3BlcnR5ICJJSVJGaWx0ZXJOb2RlIiBleHBl
Y3RlZCBwcm9wZXJ0eSAiSUlSRmlsdGVyTm9kZSIgbWlzc2luZwotRkFJTCBJSVJGaWx0ZXJOb2Rl
IG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVj
dGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdv
dCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJO
b2RlIgotRkFJTCBTdHJpbmdpZmljYXRpb24gb2YgbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVj
dGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdv
dCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJO
b2RlIgotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5LCBG
bG9hdDMyQXJyYXkpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVj
dGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdv
dCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJO
b2RlIgotRkFJTCBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogY2FsbGluZyBnZXRGcmVxdWVuY3lS
ZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQzMkFycmF5KSBvbiBuZXcg
SUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0p
IHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2VxdWFs
czogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBu
dWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTog
SUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVy
aXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nLCBv
cHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFs
czogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBu
dWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTog
SUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBjb25uZWN0
KEF1ZGlvTm9kZSwgb3B0aW9uYWwgdW5zaWduZWQgbG9uZywgb3B0aW9uYWwgdW5zaWduZWQgbG9u
Zykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFz
c2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3Qg
ZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQg
dmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJ
SVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb25uZWN0KEF1ZGlvUGFyYW0sIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVk
IGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBv
YmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2Rl
IgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9QYXJhbSwg
b3B0aW9uYWwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2Zl
ZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11
c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdo
ZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJl
bmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDog
WzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KCki
IHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9u
IHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVm
ZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1
ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2Fy
ZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0
KHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4
cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0
IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0
ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QodW5z
aWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBb
MV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlw
ZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGlu
ZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENh
bid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZh
Y2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvTm9kZSkiIHdp
dGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdo
ZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJl
bmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb05vZGUpIG9uIG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0
aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShj
b250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBw
cm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1
YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50
ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nKSBvbiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgYXNzZXJ0X2Vx
dWFsczogVW5leHBlY3RlZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3Rl
ZCBudWxsIGJ1dCBnb3Qgb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogSUlSRmlsdGVyTm9kZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRl
ck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QoQXVkaW9Ob2RlLCB1bnNpZ25lZCBsb25nLCB1bnNp
Z25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0X2VxdWFsczogVW5leHBlY3Rl
ZCBleGNlcHRpb24gd2hlbiBldmFsdWF0aW5nIG9iamVjdCBleHBlY3RlZCBudWxsIGJ1dCBnb3Qg
b2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogSUlSRmlsdGVyTm9k
ZSIKLUZBSUwgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9k
ZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29u
dGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJn
dW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhj
ZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVj
dCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1G
QUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNj
b25uZWN0KEF1ZGlvUGFyYW0pIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBV
bmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJG
aWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3Qo
QXVkaW9QYXJhbSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBb
MV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlw
ZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4gZXZhbHVhdGlu
ZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENh
bid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9kZSBpbnRlcmZh
Y2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFj
azogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVu
c2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVj
dGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdv
dCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJO
b2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5nIGRpc2Nvbm5lY3QoQXVkaW9Q
YXJhbSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRm
b3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3Qg
dGhyb3cgVHlwZUVycm9yIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoZW4g
ZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJlbmNl
RXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb250ZXh0IiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2
YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVy
cm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgotRkFJTCBBdWRpb05vZGUg
aW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwg
ZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZJbnB1dHMiIHdp
dGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdo
ZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiUmVmZXJl
bmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlMIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDog
WzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJudW1iZXJPZk91dHB1
dHMiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhjZXB0
aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVjdCAi
UmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1GQUlM
IEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9y
d2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVs
Q291bnQiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9lcXVhbHM6IFVuZXhwZWN0ZWQgZXhj
ZXB0aW9uIHdoZW4gZXZhbHVhdGluZyBvYmplY3QgZXhwZWN0ZWQgbnVsbCBidXQgZ290IG9iamVj
dCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IElJUkZpbHRlck5vZGUiCi1G
QUlMIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVk
Zm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjaGFu
bmVsQ291bnRNb2RlIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1YWxzOiBVbmV4cGVj
dGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVkIG51bGwgYnV0IGdv
dCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBJSVJGaWx0ZXJO
b2RlIgotRkFJTCBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiY2hhbm5lbEludGVycHJldGF0aW9uIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSBhc3NlcnRfZXF1
YWxzOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbiB3aGVuIGV2YWx1YXRpbmcgb2JqZWN0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBJSVJGaWx0ZXJOb2RlIgorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNl
IGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBvYmplY3QgCitQQVNTIElJUkZpbHRlck5vZGUg
aW50ZXJmYWNlIG9iamVjdCBsZW5ndGggCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJmYWNlIG9i
amVjdCBuYW1lIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBw
cm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0IAorUEFTUyBJSVJGaWx0ZXJO
b2RlIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90
b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0eSAKK1BBU1MgSUlSRmlsdGVyTm9k
ZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90
eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgCitQQVNTIElJUkZpbHRlck5vZGUg
aW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0RnJlcXVlbmN5UmVzcG9uc2UoRmxvYXQzMkFycmF5LCBG
bG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSkgCitQQVNTIElJUkZpbHRlck5vZGUgbXVzdCBiZSBw
cmltYXJ5IGludGVyZmFjZSBvZiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndh
cmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIAorUEFTUyBTdHJpbmdpZmljYXRpb24gb2YgbmV3IElJ
UkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSAK
K1BBU1MgSUlSRmlsdGVyTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQs
IHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5
ICJnZXRGcmVxdWVuY3lSZXNwb25zZShGbG9hdDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQz
MkFycmF5KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIElJUkZpbHRlck5vZGUgaW50ZXJm
YWNlOiBjYWxsaW5nIGdldEZyZXF1ZW5jeVJlc3BvbnNlKEZsb2F0MzJBcnJheSwgRmxvYXQzMkFy
cmF5LCBGbG9hdDMyQXJyYXkpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9y
d2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRo
cm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5v
ZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVy
aXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9Ob2RlLCBvcHRpb25hbCB1bnNpZ25lZCBsb25nLCBv
cHRpb25hbCB1bnNpZ25lZCBsb25nKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgY29ubmVjdChBdWRpb05vZGUsIG9wdGlvbmFsIHVuc2ln
bmVkIGxvbmcsIG9wdGlvbmFsIHVuc2lnbmVkIGxvbmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNv
bnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFy
Z3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTog
bmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBb
MV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbm5lY3QoQXVkaW9QYXJhbSwgb3B0aW9uYWwg
dW5zaWduZWQgbG9uZykiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50
ZXJmYWNlOiBjYWxsaW5nIGNvbm5lY3QoQXVkaW9QYXJhbSwgb3B0aW9uYWwgdW5zaWduZWQgbG9u
Zykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRi
YWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9yIAor
UEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVl
ZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlz
Y29ubmVjdCgpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFj
ZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNr
OiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImRpc2Nvbm5lY3QodW5zaWduZWQgbG9uZyki
IHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBjYWxsaW5n
IGRpc2Nvbm5lY3QodW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRz
IG11c3QgdGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11
c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUpIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1
ZGlvTm9kZSkgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0s
IGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVy
cm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0
LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0
eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlv
Tm9kZSwgdW5zaWduZWQgbG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRm
b3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3Qg
dGhyb3cgVHlwZUVycm9yIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVy
Tm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAiZGlzY29ubmVjdChBdWRpb05vZGUsIHVuc2lnbmVkIGxvbmcsIHVuc2ln
bmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFj
ZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvTm9kZSwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQg
bG9uZykgb24gbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBbMV0sIGZl
ZWRiYWNrOiBbMV19KSB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVycm9y
IAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7
ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAi
ZGlzY29ubmVjdChBdWRpb1BhcmFtKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlv
Tm9kZSBpbnRlcmZhY2U6IGNhbGxpbmcgZGlzY29ubmVjdChBdWRpb1BhcmFtKSBvbiBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIHdp
dGggdG9vIGZldyBhcmd1bWVudHMgbXVzdCB0aHJvdyBUeXBlRXJyb3IgCitQQVNTIEF1ZGlvTm9k
ZSBpbnRlcmZhY2U6IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFd
LCBmZWVkYmFjazogWzFdfSkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJkaXNjb25uZWN0KEF1ZGlv
UGFyYW0sIHVuc2lnbmVkIGxvbmcpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9O
b2RlIGludGVyZmFjZTogY2FsbGluZyBkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIHVuc2lnbmVkIGxv
bmcpIG9uIG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVk
YmFjazogWzFdfSkgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93IFR5cGVFcnJvciAK
K1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2Zl
ZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNv
bnRleHQiIHdpdGggdGhlIHByb3BlciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBu
ZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsx
XX0pIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAibnVtYmVyT2ZJbnB1dHMiIHdpdGggdGhlIHByb3Bl
ciB0eXBlIAorUEFTUyBBdWRpb05vZGUgaW50ZXJmYWNlOiBuZXcgSUlSRmlsdGVyTm9kZShjb250
ZXh0LCB7ZmVlZGZvcndhcmQ6IFsxXSwgZmVlZGJhY2s6IFsxXX0pIG11c3QgaW5oZXJpdCBwcm9w
ZXJ0eSAibnVtYmVyT2ZPdXRwdXRzIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKK1BBU1MgQXVkaW9O
b2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwge2ZlZWRmb3J3YXJkOiBb
MV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNoYW5uZWxDb3VudCIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCitQQVNTIEF1ZGlvTm9kZSBpbnRlcmZhY2U6IG5ldyBJSVJG
aWx0ZXJOb2RlKGNvbnRleHQsIHtmZWVkZm9yd2FyZDogWzFdLCBmZWVkYmFjazogWzFdfSkgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJjaGFubmVsQ291bnRNb2RlIiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSAKK1BBU1MgQXVkaW9Ob2RlIGludGVyZmFjZTogbmV3IElJUkZpbHRlck5vZGUoY29udGV4dCwg
e2ZlZWRmb3J3YXJkOiBbMV0sIGZlZWRiYWNrOiBbMV19KSBtdXN0IGluaGVyaXQgcHJvcGVydHkg
ImNoYW5uZWxJbnRlcnByZXRhdGlvbiIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIE1lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZSBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2Ugb2JqZWN0IAogUEFTUyBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUg
aW50ZXJmYWNlIG9iamVjdCBsZW5ndGggCiBQQVNTIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9k
ZSBpbnRlcmZhY2Ugb2JqZWN0IG5hbWUgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZp
bHRlcm5vZGUtaW50ZXJmYWNlL2N0b3ItaWlyZmlsdGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQudHh0
CmluZGV4IGU5MDFhMmM0NDMxNjAzMDYyOTZkZDA3MzQxMzExMTc1N2VmNzM5MDIuLjdhZTc3YzFj
MjI5MWQ4MTA4MjI1NDVmMjQzNzcyYWE5YWQ4ZjYyMDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0ZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvY3Rvci1paXJmaWx0ZXIt
ZXhwZWN0ZWQudHh0CkBAIC0yLDI3ICsyLDU2IEBACiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIg
U1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAiaW5pdGlhbGl6ZSIgCiBQQVNTIEV4ZWN1dGluZyAi
aW52YWxpZCBjb25zdHJ1Y3RvciIgCi1GQUlMIEV4ZWN1dGluZyAiZGVmYXVsdCBjb25zdHJ1Y3Rv
ciIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiBSaWdodCBoYW5kIHNpZGUgb2YgaW5zdGFuY2VvZiBpcyBub3QgYW4gb2JqZWN0
IgotRkFJTCBFeGVjdXRpbmcgInRlc3QgQXVkaW9Ob2RlT3B0aW9ucyIgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmlu
ZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbm9kZS5jaGFubmVsQ291bnQnKSIKK1BB
U1MgRXhlY3V0aW5nICJkZWZhdWx0IGNvbnN0cnVjdG9yIiAKK1BBU1MgRXhlY3V0aW5nICJ0ZXN0
IEF1ZGlvTm9kZU9wdGlvbnMiIAogUEFTUyBFeGVjdXRpbmcgImNvbnN0cnVjdG9yIG9wdGlvbnMi
IAotRkFJTCBFeGVjdXRpbmcgImZ1bmN0aW9uYWxpdHkiIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5k
IHZhcmlhYmxlOiBJSVJGaWx0ZXJOb2RlIgorUEFTUyBFeGVjdXRpbmcgImZ1bmN0aW9uYWxpdHki
IAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW2luaXRpYWxpemVdICAKIFBBU1MgICBjb250
ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoLi4uKSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCiBQQVNTIDwgW2luaXRpYWxpemVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFs
IDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2ludmFsaWQgY29uc3RydWN0b3JdICAKLVBBU1MgICBu
ZXcgSUlSRmlsdGVyTm9kZSgpIHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYSBj
b25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tuYW1lXSgpJykiLiAKLVBBU1MgICBu
ZXcgSUlSRmlsdGVyTm9kZSgxKSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90IGEg
Y29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oMSknKSIuIAotUEFTUyAg
IG5ldyBJSVJGaWx0ZXJOb2RlKGNvbnRleHQsIDQyKSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmlu
ZWQgaXMgbm90IGEgY29uc3RydWN0b3IgKGV2YWx1YXRpbmcgJ25ldyB3aW5kb3dbbmFtZV0oY29u
dGV4dCwgNDIpJykiLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZSgpIHRocmV3IFR5cGVFcnJv
cjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUoMSkg
dGhyZXcgVHlwZUVycm9yOiAiTm90IGVub3VnaCBhcmd1bWVudHMiLiAKK1BBU1MgICBuZXcgSUlS
RmlsdGVyTm9kZShjb250ZXh0LCA0MikgdGhyZXcgVHlwZUVycm9yOiAiVHlwZSBlcnJvciIuIAog
UEFTUyA8IFtpbnZhbGlkIGNvbnN0cnVjdG9yXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFtkZWZhdWx0IGNvbnN0cnVjdG9yXSAgCi1GQUlMIFgg
bm9kZTAgPSBuZXcgSUlSRmlsdGVyTm9kZShjb250ZXh0LCB7ImZlZWRmb3J3YXJkIjpbMV0sImZl
ZWRiYWNrIjpbMSwtMC45XX0pIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5l
ZCBpcyBub3QgYSBjb25zdHJ1Y3RvciAoZXZhbHVhdGluZyAnbmV3IHdpbmRvd1tuYW1lXShjb250
ZXh0LCBvcHRpb25zLmNvbnN0cnVjdG9yT3B0aW9ucyknKSIuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIG5vZGUwID0gbmV3IElJUkZpbHRlck5vZGUoY29udGV4
dCwgeyJmZWVkZm9yd2FyZCI6WzFdLCJmZWVkYmFjayI6WzEsLTAuOV19KSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZTAgaW5zdGFuY2VvZiBJSVJGaWx0ZXJOb2RlIGlz
IGVxdWFsIHRvIHRydWUuIAorUEFTUyAgIG5vZGUwLm51bWJlck9mSW5wdXRzIGlzIGVxdWFsIHRv
IDEuIAorUEFTUyAgIG5vZGUwLm51bWJlck9mT3V0cHV0cyBpcyBlcXVhbCB0byAxLiAKK1BBU1Mg
ICBub2RlMC5jaGFubmVsQ291bnQgaXMgZXF1YWwgdG8gMi4gCitQQVNTICAgbm9kZTAuY2hhbm5l
bENvdW50TW9kZSBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIG5vZGUwLmNoYW5uZWxJbnRlcnBy
ZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNTIDwgW2RlZmF1bHQgY29uc3RydWN0
b3JdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDcgYXNzZXJ0aW9ucykgCiBQQVNTID4g
W3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10gIAotRkFJTCBYIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtj
aGFubmVsQ291bnQ6IDE3fSkgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVk
IGlzIG5vdCBhIGNvbnN0cnVjdG9yIChldmFsdWF0aW5nICduZXcgd2luZG93W25vZGVOYW1lXScp
Ii4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgbmV3IElJUkZp
bHRlck5vZGUoYywge2NoYW5uZWxDb3VudDogMTd9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlv
bi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnQgaXMgZXF1YWwgdG8gMTcuIAorUEFTUyAgIG5l
dyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnQ6IDB9KSB0aHJldyBJbnZhbGlkU3RhdGVF
cnJvcjogIlRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4iLiAKK1BBU1MgICBuZXcg
SUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbENvdW50OiA5OX0pIHRocmV3IEludmFsaWRTdGF0ZUVy
cm9yOiAiVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiIuIAorUEFTUyAgIG5ldyBJ
SVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAibWF4In0gZGlkIG5vdCB0aHJvdyBh
biBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBt
YXguIAorUEFTUyAgIG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHtjaGFubmVsQ291bnRNb2RlOiAibWF4
In0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBub2RlLmNoYW5uZWxDb3Vu
dE1vZGUgYWZ0ZXIgdmFsaWQgc2V0dGVyIGlzIGVxdWFsIHRvIG1heC4gCitQQVNTICAgbmV3IElJ
UkZpbHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJjbGFtcGVkLW1heCJ9KSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVy
IHZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBjbGFtcGVkLW1heC4gCitQQVNTICAgbmV3IElJUkZp
bHRlck5vZGUoYywge2NoYW5uZWxDb3VudE1vZGU6ICJleHBsaWNpdCJ9KSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVyIHZhbGlk
IHNldHRlciBpcyBlcXVhbCB0byBleHBsaWNpdC4gCitQQVNTICAgbmV3IElJUkZpbHRlck5vZGUo
Yywge2NoYW5uZWxDb3VudE1vZGU6ICJmb29iYXIifSB0aHJldyBUeXBlRXJyb3I6ICJUeXBlIGVy
cm9yIi4gCitQQVNTICAgbm9kZS5jaGFubmVsQ291bnRNb2RlIGFmdGVyIGludmFsaWQgc2V0dGVy
IGlzIGVxdWFsIHRvIGV4cGxpY2l0LiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hh
bm5lbEludGVycHJldGF0aW9uOiAic3BlYWtlcnMifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAorUEFTUyAgIG5vZGUuY2hhbm5lbEludGVycHJldGF0aW9uIGlzIGVxdWFsIHRvIHNwZWFr
ZXJzLiAKK1BBU1MgICBuZXcgSUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJldGF0aW9u
OiAiZGlzY3JldGUifSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG5vZGUu
Y2hhbm5lbEludGVycHJldGF0aW9uIGlzIGVxdWFsIHRvIGRpc2NyZXRlLiAKK1BBU1MgICBuZXcg
SUlSRmlsdGVyTm9kZShjLCB7Y2hhbm5lbEludGVycHJldGF0aW9uOiAiZm9vYmFyIn0pIHRocmV3
IFR5cGVFcnJvcjogIlR5cGUgZXJyb3IiLiAKK1BBU1MgICBub2RlLmNoYW5uZWxJbnRlcnByZXRh
dGlvbiBhZnRlciBpbnZhbGlkIHNldHRlciBpcyBlcXVhbCB0byBkaXNjcmV0ZS4gCitQQVNTIDwg
W3Rlc3QgQXVkaW9Ob2RlT3B0aW9uc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMjAg
YXNzZXJ0aW9ucykgCiBQQVNTID4gW2NvbnN0cnVjdG9yIG9wdGlvbnNdICAKLUZBSUwgWCBub2Rl
ID0gbmV3IElJUkZpbHRlck5vZGUoLCB7ImZlZWRiYWNrIjpbMSwwLjVdfSkgdGhyZXcgIlJlZmVy
ZW5jZUVycm9yIiBpbnN0ZWFkIG9mIEVjbWFTY3JpcHQgZXJyb3IgVHlwZUVycm9yLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBub2RlID0gbmV3IElJUkZpbHRl
ck5vZGUoYywgeyJmZWVkZm9yd2FyZCI6WzEsMC41XX0pIHRocmV3ICJSZWZlcmVuY2VFcnJvciIg
aW5zdGVhZCBvZiBFY21hU2NyaXB0IGVycm9yIFR5cGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2NvbnN0cnVjdG9yIG9wdGlvbnNdIDIgb3V0IG9m
IDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCitQQVNTICAgbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKCwgeyJmZWVkYmFjayI6WzEs
MC41XX0pIHRocmV3IFR5cGVFcnJvcjogIk1lbWJlciBJSVJGaWx0ZXJPcHRpb25zLmZlZWRmb3J3
YXJkIGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIHNlcXVlbmNlIi4gCitQ
QVNTICAgbm9kZSA9IG5ldyBJSVJGaWx0ZXJOb2RlKGMsIHsiZmVlZGZvcndhcmQiOlsxLDAuNV19
KSB0aHJldyBUeXBlRXJyb3I6ICJNZW1iZXIgSUlSRmlsdGVyT3B0aW9ucy5mZWVkYmFjayBpcyBy
ZXF1aXJlZCBhbmQgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBzZXF1ZW5jZSIuIAorUEFTUyA8IFtj
b25zdHJ1Y3RvciBvcHRpb25zXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2Vy
dGlvbnMpIAogUEFTUyA+IFtmdW5jdGlvbmFsaXR5XSAgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5O
RVIgRklOSVNIRUQ6IDMgb3V0IG9mIDYgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBmaWx0ZXIgdXNpbmcgbmV3
IElJUkZpbHRlciguLi4pIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4wNTc1NjQwMzUw
NTgwMjE1NDUsMC4xNDM3MTkxOTYzMTk1ODAwOCwwLjIxNTAwNjYzNDU5MzAwOTk1LDAuMjkyNzc2
NTg0NjI1MjQ0MTQsMC4zNjU5Nzc3OTM5MzE5NjEwNiwwLjQzOTc2NDIzMTQ0MzQwNTE1LDAuNTEx
MTkyNzM5MDA5ODU3MiwwLjU4MTM3NTU5ODkwNzQ3MDcsMC42NDk0MDU4MzcwNTkwMjEsMC43MTUz
OTQ0OTY5MTc3MjQ2LDAuNzc4OTU0NTY1NTI1MDU0OSwwLjgzOTk1OTUwMjIyMDE1MzgsMC44OTgx
NjQ2ODk1NDA4NjMsMC45NTMzOTg0MDY1MDU1ODQ3LDEuMDA1NDY2Njk5NjAwMjE5Ny4uLl0uIAor
UEFTUyA8IFtmdW5jdGlvbmFsaXR5XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFz
c2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA2IHRhc2tzIHJh
biBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5v
ZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1iYXNpYy1leHBlY3RlZC50eHQKaW5k
ZXggNDUzNGM4M2ZkNDVmOGQwY2UyMjY0NjZhZDcxY2YyNjJlOWNmNTQ1Mi4uNWI5Mzc0Yjk5ZDIw
NGQ2NGNmODdhNjE5OTM5Y2MzZTg2YmIxNjMxZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1p
aXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0ZXItYmFzaWMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWJhc2ljLWV4
cGVjdGVkLnR4dApAQCAtMiwzMyArMiw0NCBAQAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNU
QVJURUQuIAogUEFTUyBFeGVjdXRpbmcgImluaXRpYWxpemUiIAogUEFTUyBFeGVjdXRpbmcgImV4
aXN0ZW5jZSIgCi1GQUlMIEV4ZWN1dGluZyAicGFyYW1ldGVycyIgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcihjb2VmLCBjb2VmKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVk
KSIKK1BBU1MgRXhlY3V0aW5nICJwYXJhbWV0ZXJzIiAKIFBBU1MgRXhlY3V0aW5nICJleGNlcHRp
b25zLWNyZWF0ZUlJUkZpbHRlciIgCi1GQUlMIEV4ZWN1dGluZyAiZXhjZXB0aW9ucy1nZXRGcmVx
dWVuY3lEYXRhIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0
aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGNvZWYsIGNvZWYpJywgJ2NvbnRleHQu
Y3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgorUEFTUyBFeGVjdXRpbmcgImV4Y2VwdGlv
bnMtZ2V0RnJlcXVlbmN5RGF0YSIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbaW5pdGlh
bGl6ZV0gIAogUEFTUyAgIEluaXRpYWxpemUgY29udGV4dCBmb3IgdGVzdGluZyBkaWQgbm90IHRo
cm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTIDwgW2luaXRpYWxpemVdIEFsbCBhc3NlcnRpb25zIHBh
c3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4aXN0ZW5jZV0gIAotRkFJTCBY
IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGRvZXMgbm90IGV4aXN0LiBHb3QgdW5kZWZpbmVkLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbZXhpc3RlbmNlXSAx
IG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGRvZXMgZXhpc3Qu
IAorUEFTUyA8IFtleGlzdGVuY2VdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gW3BhcmFtZXRlcnNdICAKK1BBU1MgICBudW1iZXJPZklucHV0cyBp
cyBlcXVhbCB0byAxLiAKK1BBU1MgICBudW1iZXJPZk91dHB1dHMgaXMgZXF1YWwgdG8gMS4gCitQ
QVNTICAgY2hhbm5lbENvdW50TW9kZSBpcyBlcXVhbCB0byBtYXguIAorUEFTUyAgIGNoYW5uZWxJ
bnRlcnByZXRhdGlvbiBpcyBlcXVhbCB0byBzcGVha2Vycy4gCitQQVNTIDwgW3BhcmFtZXRlcnNd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDQgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2V4
Y2VwdGlvbnMtY3JlYXRlSUlSRmlsdGVyXSAgCi1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKCkgdGhy
ZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24u
IChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRl
cicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFy
cmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3Qg
YSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5
KDEpKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIuIAotUEFTUyAg
IGNyZWF0ZUlJUkZpbHRlcihudWxsLCBudWxsKSB0aHJldyBUeXBlRXJyb3I6ICJjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJUkZp
bHRlcihudWxsLCBudWxsKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVk
KSIuIAotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbXSwgW10pIHRocmV3ICJUeXBlRXJyb3IiIGlu
c3RlYWQgb2YgTm90U3VwcG9ydGVkRXJyb3IuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCBYIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFtdKSB0aHJldyAiVHlwZUVycm9y
IiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoW10sIFsxXSkgdGhyZXcgIlR5cGVF
cnJvciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXko
MjApLCBuZXcgRmxvYXQzMkFycmF5KDIwKSkgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAi
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIoZmIsIGZiKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5k
ZWZpbmVkKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNy
ZWF0ZUlJUkZpbHRlcihuZXcgRmxvYXQzMkFycmF5KDIxKSwgWzFdKSB0aHJldyAiVHlwZUVycm9y
IiBpbnN0ZWFkIG9mIE5vdFN1cHBvcnRlZEVycm9yLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBuZXcgRmxvYXQzMkFycmF5
KDIxKSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBOb3RTdXBwb3J0ZWRFcnJvci4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVy
KFsxXSwgbmV3IEZsb2F0MzJBcnJheSgyKSkgdGhyZXcgIlR5cGVFcnJvciIgaW5zdGVhZCBvZiBJ
bnZhbGlkU3RhdGVFcnJvci4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1G
QUlMIFggY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBbMV0pIHRocmV3ICJU
eXBlRXJyb3IiIGluc3RlYWQgb2YgSW52YWxpZFN0YXRlRXJyb3IuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQotUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCBOYU4s
IEluZmluaXR5XSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMg
bm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgSW5m
aW5pdHksIE5hTl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4g
Ci1QQVNTICAgY3JlYXRlSUlSRmlsdGVyKFsxLCBOYU4sIEluZmluaXR5XSwgWzFdKSB0aHJldyBU
eXBlRXJyb3I6ICJjb250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcihbMSwgSW5maW5pdHksIE5hTl0sIFsxXSknLCAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiLiAKLVBBU1MgICBjcmVhdGVJSVJG
aWx0ZXIoWzEsICdhYmMnLCBbXV0sIFsxXSkgdGhyZXcgVHlwZUVycm9yOiAiY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0
ZXIoWzEsICdhYmMnLCBbXV0sIFsxXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVu
ZGVmaW5lZCkiLiAKLUZBSUwgPCBbZXhjZXB0aW9ucy1jcmVhdGVJSVJGaWx0ZXJdIDggb3V0IG9m
IDE0IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcigpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBl
bm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJy
YXkoMSkpIHRocmV3IFR5cGVFcnJvcjogIk5vdCBlbm91Z2ggYXJndW1lbnRzIi4gCitQQVNTICAg
Y3JlYXRlSUlSRmlsdGVyKG51bGwsIG51bGwpIHRocmV3IFR5cGVFcnJvcjogIlZhbHVlIGlzIG5v
dCBhIHNlcXVlbmNlIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFtdLCBbXSkgdGhyZXcgTm90
U3VwcG9ydGVkRXJyb3I6ICJmZWVkZm9yd2FyZCBhcnJheSBtdXN0IGhhdmUgYSBsZW5ndGggYmV0
d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFtdKSB0aHJldyBO
b3RTdXBwb3J0ZWRFcnJvcjogImZlZWRiYWNrIGFycmF5IG11c3QgaGF2ZSBhIGxlbmd0aCBiZXR3
ZWVuIDEgYW5kIDIwIi4gCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKFtdLCBbMV0pIHRocmV3IE5v
dFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3RoIGJl
dHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJh
eSgyMCksIG5ldyBGbG9hdDMyQXJyYXkoMjApKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CitQQVNTICAgY3JlYXRlSUlSRmlsdGVyKG5ldyBGbG9hdDMyQXJyYXkoMjEpLCBbMV0pIHRocmV3
IE5vdFN1cHBvcnRlZEVycm9yOiAiZmVlZGZvcndhcmQgYXJyYXkgbXVzdCBoYXZlIGEgbGVuZ3Ro
IGJldHdlZW4gMSBhbmQgMjAiLiAKK1BBU1MgICBjcmVhdGVJSVJGaWx0ZXIoWzFdLCBuZXcgRmxv
YXQzMkFycmF5KDIxKSkgdGhyZXcgTm90U3VwcG9ydGVkRXJyb3I6ICJmZWVkYmFjayBhcnJheSBt
dXN0IGhhdmUgYSBsZW5ndGggYmV0d2VlbiAxIGFuZCAyMCIuIAorUEFTUyAgIGNyZWF0ZUlJUkZp
bHRlcihbMV0sIG5ldyBGbG9hdDMyQXJyYXkoMikpIHRocmV3IEludmFsaWRTdGF0ZUVycm9yOiAi
Zmlyc3QgdmFsdWUgb2YgZmVlZGJhY2sgYXJyYXkgY2Fubm90IGJlIHplcm8iLiAKK1BBU1MgICBj
cmVhdGVJSVJGaWx0ZXIobmV3IEZsb2F0MzJBcnJheSgxMCksIFsxXSkgdGhyZXcgSW52YWxpZFN0
YXRlRXJyb3I6ICJmZWVkZm9yd2FyZCBhcnJheSBtdXN0IGNvbnRhaW4gYSBub24temVybyB2YWx1
ZSIuIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlcihbMV0sIFsxLCBOYU4sIEluZmluaXR5XSkgdGhy
ZXcgVHlwZUVycm9yOiAiVGhlIHByb3ZpZGVkIHZhbHVlIGlzIG5vbi1maW5pdGUiLiAKK1BBU1Mg
ICBjcmVhdGVJSVJGaWx0ZXIoWzEsIE5hTiwgSW5maW5pdHldLCBbMV0pIHRocmV3IFR5cGVFcnJv
cjogIlRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNTICAgY3JlYXRlSUlS
RmlsdGVyKFsxLCAnYWJjJywgW11dLCBbMV0pIHRocmV3IFR5cGVFcnJvcjogIlRoZSBwcm92aWRl
ZCB2YWx1ZSBpcyBub24tZmluaXRlIi4gCitQQVNTIDwgW2V4Y2VwdGlvbnMtY3JlYXRlSUlSRmls
dGVyXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxNCBhc3NlcnRpb25zKSAKIFBBU1Mg
PiBbZXhjZXB0aW9ucy1nZXRGcmVxdWVuY3lEYXRhXSAgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5O
RVIgRklOSVNIRUQ6IDIgb3V0IG9mIDUgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGdldEZyZXF1ZW5jeVJlc3BvbnNlKG51bGws
IG5ldyBGbG9hdDMyQXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXkoMSkpIHRocmV3IFR5cGVFcnJv
cjogIkFyZ3VtZW50IDEgKCdmcmVxdWVuY3lIeicpIHRvIElJUkZpbHRlck5vZGUuZ2V0RnJlcXVl
bmN5UmVzcG9uc2UgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBGbG9hdDMyQXJyYXkiLiAKK1BBU1Mg
ICBnZXRGcmVxdWVuY3lSZXNwb25zZShuZXcgRmxvYXQzMkFycmF5KDEpLCBudWxsLCBuZXcgRmxv
YXQzMkFycmF5KDEpKSB0aHJldyBUeXBlRXJyb3I6ICJBcmd1bWVudCAyICgnbWFnUmVzcG9uc2Un
KSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4gaW5zdGFu
Y2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNTICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2UobmV3IEZs
b2F0MzJBcnJheSgxKSwgbmV3IEZsb2F0MzJBcnJheSgxKSwgbnVsbCkgdGhyZXcgVHlwZUVycm9y
OiAiQXJndW1lbnQgMyAoJ3BoYXNlUmVzcG9uc2UnKSB0byBJSVJGaWx0ZXJOb2RlLmdldEZyZXF1
ZW5jeVJlc3BvbnNlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRmxvYXQzMkFycmF5Ii4gCitQQVNT
ICAgZ2V0RnJlcXVlbmN5UmVzcG9uc2UobmV3IEZsb2F0MzJBcnJheSgxMCksIG5ldyBGbG9hdDMy
QXJyYXkoMSksIG5ldyBGbG9hdDMyQXJyYXkoMjApKSB0aHJldyBJbnZhbGlkQWNjZXNzRXJyb3I6
ICJBcnJheXMgbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCIuIAorUEFTUyAgIGdldEZyZXF1ZW5j
eVJlc3BvbnNlKG5ldyBGbG9hdDMyQXJyYXkoMTApLCBuZXcgRmxvYXQzMkFycmF5KDIwKSwgbmV3
IEZsb2F0MzJBcnJheSgxKSkgdGhyZXcgSW52YWxpZEFjY2Vzc0Vycm9yOiAiQXJyYXlzIG11c3Qg
aGF2ZSB0aGUgc2FtZSBsZW5ndGgiLiAKK1BBU1MgPCBbZXhjZXB0aW9ucy1nZXRGcmVxdWVuY3lE
YXRhXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA1IGFzc2VydGlvbnMpIAorUEFTUyAj
IEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA1IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZp
bHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNl
L2lpcmZpbHRlci1leHBlY3RlZC50eHQKaW5kZXggZGViZGI3ZTJlZTQ1OGI5YzIxNTlkZTY4N2Zl
YTA5YWY3MzJjYzM3Zi4uYmVmYjNiYTVhMWJiMzliMjgxNjU4MzU2OTJjYWEyYjk3NThhNWMxMiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS9paXJmaWx0
ZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZh
Y2UvaWlyZmlsdGVyLWV4cGVjdGVkLnR4dApAQCAtMSw0MSArMSw3MCBAQAogCiBQQVNTICMgQVVE
SVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCi1GQUlMIEV4ZWN1dGluZyAiY29lZmZpY2llbnQtbm9y
bWFsaXphdGlvbiIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6
IG9iamVjdCAiVHlwZUVycm9yOiBUeXBlIGVycm9yIgotRkFJTCBFeGVjdXRpbmcgIm9uZS16ZXJv
IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJU
eXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4g
J2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFswLjUsIDAuNV0sIFsxXSknLCAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAib25lLXBvbGUiIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVF
cnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXIoWzFdLCBbMSwgY10pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmls
dGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjA6IGxvd3Bhc3MiIHByb21pc2Vf
dGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjog
Y29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIy
XSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMg
dW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICIxOiBoaWdocGFzcyIgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBjb250ZXh0
LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcigKLSAgICAgICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwg
Y29lZi5hMSwgY29lZi5hMl0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmlu
ZWQpIgotRkFJTCBFeGVjdXRpbmcgIjI6IGJhbmRwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxl
ZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRl
SUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVy
KAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmEx
LCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1G
QUlMIEV4ZWN1dGluZyAiMzogbm90Y2giIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAg
ICAgICAgIFtjb2VmLmIwLCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJd
KScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0
aW5nICI0OiBhbGxwYXNzIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBh
IGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBb
Y29lZi5iMCwgY29lZi5iMSwgY29lZi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAiNTog
bG93c2hlbGYiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rp
b24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIw
LCBjb2VmLmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICI2OiBoaWdoc2hl
bGYiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IlR5cGVFcnJvcjogY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIoCi0gICAgICAgICAgICAgIFtjb2VmLmIwLCBjb2Vm
LmIxLCBjb2VmLmIyXSwgWzEsIGNvZWYuYTEsIGNvZWYuYTJdKScsICdjb250ZXh0LmNyZWF0ZUlJ
UkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0aW5nICI3OiBwZWFraW5nIiBwcm9t
aXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJy
b3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRl
eHQuY3JlYXRlSUlSRmlsdGVyKAotICAgICAgICAgICAgICBbY29lZi5iMCwgY29lZi5iMSwgY29l
Zi5iMl0sIFsxLCBjb2VmLmExLCBjb2VmLmEyXSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIn
IGlzIHVuZGVmaW5lZCkiCi1GQUlMIEV4ZWN1dGluZyAibXVsdGktY2hhbm5lbCIgcHJvbWlzZV90
ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiBj
b250ZXh0LmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdjb250ZXh0LmNy
ZWF0ZUlJUkZpbHRlcihmZiwgZmIpJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRl
ZmluZWQpIgotRkFJTCBFeGVjdXRpbmcgIjR0aC1vcmRlci1paXIiIHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogY29udGV4dC5j
cmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVhdGVJSVJG
aWx0ZXIoY2FzY2FkZS5mZiwgY2FzY2FkZS5mYiknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXIn
IGlzIHVuZGVmaW5lZCkiCitQQVNTIEV4ZWN1dGluZyAiY29lZmZpY2llbnQtbm9ybWFsaXphdGlv
biIgCitQQVNTIEV4ZWN1dGluZyAib25lLXplcm8iIAorUEFTUyBFeGVjdXRpbmcgIm9uZS1wb2xl
IiAKK1BBU1MgRXhlY3V0aW5nICIwOiBsb3dwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICIxOiBoaWdo
cGFzcyIgCitQQVNTIEV4ZWN1dGluZyAiMjogYmFuZHBhc3MiIAorUEFTUyBFeGVjdXRpbmcgIjM6
IG5vdGNoIiAKK1BBU1MgRXhlY3V0aW5nICI0OiBhbGxwYXNzIiAKK1BBU1MgRXhlY3V0aW5nICI1
OiBsb3dzaGVsZiIgCitQQVNTIEV4ZWN1dGluZyAiNjogaGlnaHNoZWxmIiAKK1BBU1MgRXhlY3V0
aW5nICI3OiBwZWFraW5nIiAKK1BBU1MgRXhlY3V0aW5nICJtdWx0aS1jaGFubmVsIiAKK1BBU1Mg
RXhlY3V0aW5nICI0dGgtb3JkZXItaWlyIiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtj
b2VmZmljaWVudC1ub3JtYWxpemF0aW9uXSAgCi1GQUlMIFggY3JlYXRlSUlSRmlsdGVyIHdpdGgg
bm9ybWFsaXplZCBjb2VmZmljaWVudHMgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAiY29u
dGV4dC5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnY29udGV4dC5jcmVh
dGVJSVJGaWx0ZXIoZmYsIGZiMSknLCAnY29udGV4dC5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVm
aW5lZCkiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjcmVh
dGVJSVJGaWx0ZXIgd2l0aCB1bm5vcm1hbGl6ZWQgY29lZmZpY2llbnRzIGluY29ycmVjdGx5IHRo
cmV3IFR5cGVFcnJvcjogImNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9u
LiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKGZmLCBmYjIpJywgJ2NvbnRleHQuY3JlYXRl
SUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCitQQVNTICAgY3JlYXRlSUlSRmlsdGVyIHdpdGggbm9ybWFsaXplZCBjb2VmZmljaWVu
dHMgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGNyZWF0ZUlJUkZpbHRlciB3
aXRoIHVubm9ybWFsaXplZCBjb2VmZmljaWVudHMgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAorUEFTUyAgIE91dHB1dCBvZiBJSVIgZmlsdGVyIHdpdGggdW5ub3JtYWxpemVkIGNvZWZmaWNp
ZW50cyBlcXVhbHMgWzEsLTAuODk5OTk5OTc2MTU4MTQyMSwwLjgxMDAwMDAwMjM4NDE4NTgsLTAu
NzI4OTk5OTcyMzQzNDQ0OCwwLjY1NjA5OTk3NTEwOTEwMDMsLTAuNTkwNDg5OTgzNTU4NjU0OCww
LjUzMTQ0MDk3MzI4MTg2MDQsLTAuNDc4Mjk2OTA1NzU1OTk2NywwLjQzMDQ2NzIxODE2MDYyOTMs
LTAuMzg3NDIwNDc1NDgyOTQwNywwLjM0ODY3ODQzOTg1NTU3NTU2LC0wLjMxMzgxMDU4NjkyOTMy
MTMsMC4yODI0Mjk1NDYxMTc3ODI2LC0wLjI1NDE4NjU3MDY0NDM3ODY2LDAuMjI4NzY3OTMxNDYx
MzM0MjMsLTAuMjA1ODkxMTMyMzU0NzM2MzMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVy
YW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoyLjE5NThlLTM4LCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uIAorUEFTUyA8IFtjb2VmZmljaWVudC1ub3JtYWxpemF0aW9uXSBBbGwgYXNzZXJ0aW9u
cyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAogUEFTUyA+IFtvbmUtemVyb10gIAorUEFT
UyAgIElJUiAxLXplcm8gb3V0cHV0IGVxdWFscyBbMC41LDAuNSwwLDAsMCwwLDAsMCwwLDAsMCww
LDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFtvbmUtemVyb10g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbb25l
LXBvbGVdICAKK1BBU1MgICBJSVIgMS1wb2xlIG91dHB1dCBlcXVhbHMgWzEsLTAuOSwwLjgxLC0w
LjcyOTAwMDAwMDAwMDAwMDEsMC42NTYxMDAwMDAwMDAwMDAxLC0wLjU5MDQ5MDAwMDAwMDAwMDIs
MC41MzE0NDEwMDAwMDAwMDAyLC0wLjQ3ODI5NjkwMDAwMDAwMDE0LDAuNDMwNDY3MjEwMDAwMDAw
MTYsLTAuMzg3NDIwNDg5MDAwMDAwMTUsMC4zNDg2Nzg0NDAxMDAwMDAxNSwtMC4zMTM4MTA1OTYw
OTAwMDAxNywwLjI4MjQyOTUzNjQ4MTAwMDE3LC0wLjI1NDE4NjU4MjgzMjkwMDEzLDAuMjI4NzY3
OTI0NTQ5NjEwMTIsLTAuMjA1ODkxMTMyMDk0NjQ5MS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2Ug
dG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjIuNzY1N2UtOCwicmVsYXRpdmVUaHJl
c2hvbGQiOjB9LiAKK1BBU1MgPCBbb25lLXBvbGVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzA6IGxvd3Bhc3NdICAKK1BBU1MgICBJSVJGaWx0
ZXIgZm9yIEJpcXVhZCBsb3dwYXNzIGVxdWFscyBbMC4wMDIwNjc2MjI0OTU4MTUxNTgsMC4wMTAy
NjIwMzg1NTg3MjE1NDIsMC4wMjY0MDgzNDQ1MDcyMTc0MDcsMC4wNTAxNDYxOTYwMzc1MzA5LDAu
MDgxMDYyNzM0MTI3MDQ0NjgsMC4xMTg2OTc1MTY2MjAxNTkxNSwwLjE2MjU0NzY0Nzk1MzAzMzQ1
LDAuMjEyMDczMjA2OTAxNTUwMywwLjI2NjcwMjY4MTc3OTg2MTQ1LDAuMzI1ODM4NzQ0NjQwMzUw
MzQsMC4zODg4NjM3MTI1NDkyMDk2LDAuNDU1MTQ1NDE4NjQzOTUxNCwwLjUyNDA0Mjg0NDc3MjMz
ODksMC41OTQ5MTE0NTYxMDgwOTMzLDAuNjY3MTA5MDcyMjA4NDA0NSwwLjc0MDAwMDU0NTk3ODU0
NjEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwNDk4MzR9LiAKK1BBU1MgICBTTlIgZm9y
IElJUkZJbHRlciBmb3IgQmlxdWFkIGxvd3Bhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRv
IDkxLjIyMS4gCitQQVNTIDwgWzA6IGxvd3Bhc3NdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzE6IGhpZ2hwYXNzXSAgCitQQVNTICAgSUlSRmls
dGVyIGZvciBCaXF1YWQgaGlnaHBhc3MgZXF1YWxzIFswLjk4MzY3MTAwOTU0MDU1NzksMC45NDc0
Nzg2NTIwMDA0MjcyLDAuOTA0NDgyNDI0MjU5MTg1OCwwLjg1NTIzMjExOTU2MDI0MTcsMC44MDAz
MTMyOTM5MzM4Njg0LDAuNzQwMzQxOTYxMzgzODE5NiwwLjY3NTk1ODIxNjE5MDMzODEsMC42MDc4
MjAzMzIwNTAzMjM1LDAuNTM2NTk4OTIwODIyMTQzNiwwLjQ2Mjk3MTAzMTY2NTgwMiwwLjM4NzYx
NDIyMDM4MDc4MzEsMC4zMTEyMDEwMDYxNzQwODc1LDAuMjM0MzkzNTM3MDQ0NTI1MTUsMC4xNTc4
MzgyNzAwNjgxNjg2NCwwLjA4MjE2MTE2NTc3Mzg2ODU2LDAuMDA3OTYzMDU2Njc2MDg5NzY0Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MC4wMDAwMDI5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwM30uIAorUEFTUyAgIFNOUiBmb3Ig
SUlSRklsdGVyIGZvciBCaXF1YWQgaGlnaHBhc3MgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRv
IDEwNS40NTkuIAorUEFTUyA8IFsxOiBoaWdocGFzc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbMjogYmFuZHBhc3NdICAKK1BBU1MgICBJSVJG
aWx0ZXIgZm9yIEJpcXVhZCBiYW5kcGFzcyBlcXVhbHMgWzAuMDA0NTU0MjQ0Njg5NjQzMzgzLDAu
MDEzNTgzMjE1ODg0ODY0MzMsMC4wMjI0MTY1MDAzNzQ2NzQ3OTcsMC4wMzA5ODIxMDUwNjE0MTE4
NTgsMC4wMzkyMTA5MzA0NjY2NTE5MTcsMC4wNDcwMzczMTQ2MjM1OTQyODQsMC4wNTQzOTk1NjEx
MzY5NjA5OCwwLjA2MTI0MDQwODU2OTU3NDM1NiwwLjA2NzUwNzQ2ODE2Mzk2NzEzLDAuMDczMTUz
NjI5ODk5MDI0OTYsMC4wNzgxMzczODI4NjQ5NTIwOSwwLjA4MjQyMzE1MDUzOTM5ODIsMC4wODU5
ODE0ODA3NzcyNjM2NCwwLjA4ODc4OTI5OTEzMDQzOTc2LDAuMDkwODI5OTY4NDUyNDUzNjEsMC4w
OTIwOTM0NTI4MTEyNDExNS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsi
YWJzb2x1dGVUaHJlc2hvbGQiOjJlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDg3fS4gCitQ
QVNTICAgU05SIGZvciBJSVJGSWx0ZXIgZm9yIEJpcXVhZCBiYW5kcGFzcyBpcyBncmVhdGVyIHRo
YW4gb3IgZXF1YWwgdG8gMTA0LjA2LiAKK1BBU1MgPCBbMjogYmFuZHBhc3NdIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gWzM6IG5vdGNoXSAgCitQ
QVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgbm90Y2ggZXF1YWxzIFswLjk5NTQ0NTcyODMwMjAw
MiwwLjk4NjQxNjc1NzEwNjc4MSwwLjk3NzU4MzUyNzU2NTAwMjQsMC45NjkwMTc5MjI4NzgyNjU0
LDAuOTYwNzg5MDg0NDM0NTA5MywwLjk1Mjk2MjY5NjU1MjI3NjYsMC45NDU2MDA0NTAwMzg5MDk5
LDAuOTM4NzU5NTY1MzUzMzkzNiwwLjkzMjQ5MjU1NDE4Nzc3NDcsMC45MjY4NDYzODUwMDIxMzYy
LDAuOTIxODYyNjAyMjMzODg2NywwLjkxNzU3Njg0OTQ2MDYwMTgsMC45MTQwMTg1MTE3NzIxNTU4
LDAuOTExMjEwNzE1NzcwNzIxNCwwLjkwOTE3MDAzMTU0NzU0NjQsMC45MDc5MDY1MzIyODc1OTc3
Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9s
ZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjAuMDAwMDQyMn0uIAorUEFTUyAgIFNOUiBmb3IgSUlS
RklsdGVyIGZvciBCaXF1YWQgbm90Y2ggaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDkxLjMx
Mi4gCitQQVNTIDwgWzM6IG5vdGNoXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFz
c2VydGlvbnMpIAogUEFTUyA+IFs0OiBhbGxwYXNzXSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBC
aXF1YWQgYWxscGFzcyBlcXVhbHMgWzAuOTkwODkxNTE2MjA4NjQ4NywwLjk3MjgzMzU3MzgxODIw
NjgsMC45NTUxNjY5OTU1MjUzNjAxLDAuOTM4MDM1Nzg2MTUxODg2LDAuOTIxNTc4MTY4ODY5MDE4
NiwwLjkwNTkyNTM5MzEwNDU1MzIsMC44OTEyMDA5MDAwNzc4MTk4LDAuODc3NTE5MTkwMzExNDMx
OSwwLjg2NDk4NTA0ODc3MDkwNDUsMC44NTM2OTI3NzAwMDQyNzI1LDAuODQzNzI1MjA0NDY3Nzcz
NCwwLjgzNTE1MzY5ODkyMTIwMzYsMC44MjgwMzcwMjM1NDQzMTE1LDAuODIyNDIxNDMxNTQxNDQy
OSwwLjgxODM0MDA2MzA5NTA5MjgsMC44MTU4MTMxMjQxNzk4NDAxLi4uXSB3aXRoIGFuIGVsZW1l
bnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJl
c2hvbGQiOjAuMDAwMDQzMX0uIAorUEFTUyAgIFNOUiBmb3IgSUlSRklsdGVyIGZvciBCaXF1YWQg
YWxscGFzcyBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gOTEuMzE5LiAKK1BBU1MgPCBbNDog
YWxscGFzc10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbNTogbG93c2hlbGZdICAKK1BBU1MgICBJSVJGaWx0ZXIgZm9yIEJpcXVhZCBsb3dzaGVs
ZiBlcXVhbHMgWzEuMDM4NDgwMjgxODI5ODM0LDEuMTE2NTcyMjYwODU2NjI4NCwxLjE5NjY0NDA2
Nzc2NDI4MjIsMS4yNzgxNTE1MTIxNDU5OTYsMS4zNjA1OTQ2MzAyNDEzOTQsMS40NDM1MTU0MTk5
NjAwMjIsMS41MjY0OTYxNzE5NTEyOTQsMS42MDkxNTc2ODE0NjUxNDksMS42OTExNTcxMDI1ODQ4
Mzg5LDEuNzcyMTg2NjM2OTI0NzQzNywxLjg1MTk3MDkxMTAyNjAwMSwxLjkzMDI2NjI2MTEwMDc2
OSwyLjAwNjg1Nzg3MjAwOTI3NzMsMi4wODE1NTg0NjU5NTc2NDE2LDIuMTU0MjA2OTkxMTk1Njc4
NywyLjIyNDY2NjExODYyMTgyNi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9m
IHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAyOTh9LiAK
K1BBU1MgICBTTlIgZm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGxvd3NoZWxmIGlzIGdyZWF0ZXIg
dGhhbiBvciBlcXVhbCB0byA5MC42MDkuIAorUEFTUyA8IFs1OiBsb3dzaGVsZl0gQWxsIGFzc2Vy
dGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNjogaGlnaHNoZWxm
XSAgCitQQVNTICAgSUlSRmlsdGVyIGZvciBCaXF1YWQgaGlnaHNoZWxmIGVxdWFscyBbMy4wNDUx
MDE0MDQxOTAwNjM1LDIuODE2MTE0NjY0MDc3NzU5LDIuNTk4NTQyNDUxODU4NTIwNSwyLjM5MzU1
Nzc4Njk0MTUyODMsMi4yMDE5NzUzNDU2MTE1NzIzLDIuMDI0Mjk2OTk4OTc3NjYxLDEuODYwNzUz
Nzc0NjQyOTQ0MywxLjcxMTM0NjYyNjI4MTczODMsMS41NzU4ODIzMTU2MzU2ODEyLDEuNDU0MDA3
MDI5NTMzMzg2MiwxLjM0NTIzNjg5NzQ2ODU2NywxLjI0ODk4NDgxMzY5MDE4NTUsMS4xNjQ1ODUz
NTE5NDM5Njk3LDEuMDkxMzE1NzQ2MzA3MzczLDEuMDI4NDE1Njc5OTMxNjQwNiwwLjk3NTEwMjk2
MTA2MzM4NS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVU
aHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAxMjR9LiAKK1BBU1MgICBTTlIg
Zm9yIElJUkZJbHRlciBmb3IgQmlxdWFkIGhpZ2hzaGVsZiBpcyBncmVhdGVyIHRoYW4gb3IgZXF1
YWwgdG8gMTAzLjE1OS4gCitQQVNTIDwgWzY6IGhpZ2hzaGVsZl0gQWxsIGFzc2VydGlvbnMgcGFz
c2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbNzogcGVha2luZ10gIAorUEFTUyAg
IElJUkZpbHRlciBmb3IgQmlxdWFkIHBlYWtpbmcgZXF1YWxzIFsxLjAwNTU0ODcxNTU5MTQzMDcs
MS4wMTY1NzEyODMzNDA0NTQsMS4wMjczOTg1ODYyNzMxOTM0LDEuMDM3OTQxMDk4MjEzMTk1OCwx
LjA0ODExMTkxNTU4ODM3OSwxLjA1NzgyNzk0OTUyMzkyNTgsMS4wNjcwMTAxNjQyNjA4NjQzLDEu
MDc1NTg0NDExNjIxMDkzOCwxLjA4MzQ4MjE0NjI2MzEyMjYsMS4wOTA2NDA3ODMzMDk5MzY1LDEu
MDk3MDA0MDU1OTc2ODY3NywxLjEwMjUyMjk2OTI0NTkxMDYsMS4xMDcxNTU0NDIyMzc4NTQsMS4x
MTA4Njc1MDAzMDUxNzU4LDEuMTEzNjMyNjc4OTg1NTk1NywxLjExNTQzMjczOTI1NzgxMjUuLi5d
IHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjow
LCJyZWxhdGl2ZVRocmVzaG9sZCI6MC4wMDAwNTA1fS4gCitQQVNTICAgU05SIGZvciBJSVJGSWx0
ZXIgZm9yIEJpcXVhZCBwZWFraW5nIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byA5MS41MDQu
IAorUEFTUyA8IFs3OiBwZWFraW5nXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFz
c2VydGlvbnMpIAogUEFTUyA+IFttdWx0aS1jaGFubmVsXSAgCitQQVNTICAgTWF4IGRpZmZlcmVu
Y2UgYmV0d2VlbiBJSVIgYW5kIEJpcXVhZCBvbiBjaGFubmVsIDAgaXMgbGVzcyB0aGFuIG9yIGVx
dWFsIHRvIDAuMDAwMDM3NjcxLiAKK1BBU1MgICBNYXggZGlmZmVyZW5jZSBiZXR3ZWVuIElJUiBh
bmQgQmlxdWFkIG9uIGNoYW5uZWwgMSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMC4wMDAwMzAw
NzEuIAorUEFTUyAgIE1heCBkaWZmZXJlbmNlIGJldHdlZW4gSUlSIGFuZCBCaXF1YWQgb24gY2hh
bm5lbCAyIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAwLjAwMDAyNjI0MS4gCitQQVNTIDwgW211
bHRpLWNoYW5uZWxdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDMgYXNzZXJ0aW9ucykg
CiBQQVNTID4gWzR0aC1vcmRlci1paXJdICAKLUZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5J
U0hFRDogMSBvdXQgb2YgMTMgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIDQtdGggb3JkZXIgSUlSRmlsdGVyIChiaXF1YWQgcmVm
KSBlcXVhbHMgWzAuMDAwMDA0MTgxNzE5MzA1MDUxOTU2LDAuMDAwMDMyOTY1Nzk1OTgwOTk5MjQ2
LDAuMDAwMTI5Mzk3NjgyMDMwNjg1MjUsMC4wMDAzNDc3MzY1ODI2MjU2NTczLDAuMDAwNzM4NzI3
Mjc4MDc2MTEyMywwLjAwMTM0NDY4OTc1MDExMjU5MzIsMC4wMDIxOTkzNzYyMzQ3ODQ3MjIzLDAu
MDAzMzI3OTU1OTU3NTAyMTI2NywwLjAwNDc0NzExNjkzODIzMzM3NTUsMC4wMDY0NjUyODE4MjU1
MTI2NDgsMC4wMDg0ODI5MjI3OTk4ODUyNzMsMC4wMTA3OTI5NzA2NTczNDg2MzMsMC4wMTMzODEz
MDMyODgwNDI1NDUsMC4wMTYyMjczMTIzODYwMzU5MiwwLjAxOTMwNDUxOTUxOTIwOTg2MiwwLjAy
MjU4MTI1MTMzODEyNDI3NS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsi
YWJzb2x1dGVUaHJlc2hvbGQiOjEuNTllLTcsInJlbGF0aXZlVGhyZXNob2xkIjowLjAwMDAyMTF9
LiAKK1BBU1MgICBTTlIgb2YgNC10aCBvcmRlciBJSVJGaWx0ZXIgKGJpcXVhZCByZWYpIGlzIGdy
ZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMDguOTQ3LiAKK1BBU1MgPCBbNHRoLW9yZGVyLWlpcl0g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKK1BBU1MgIyBBVURJ
VCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMTMgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVy
LWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmls
dGVybm9kZS1pbnRlcmZhY2UvaWlyZmlsdGVyLWdldEZyZXF1ZW5jeVJlc3BvbnNlLWV4cGVjdGVk
LnR4dAppbmRleCBjMWMxNmI0NTZiNzQzZWM2N2RiZDZhZDBkY2IyNDNkNzdlNGFlMmNhLi44M2M0
ZDg0YjU1OTM1ZWEyNmM4MzkxMTRiZWM5Y2YxMGE2M2U2NWUxIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL2lpcmZpbHRlci1nZXRGcmVxdWVuY3lSZXNw
b25zZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVy
ZmFjZS9paXJmaWx0ZXItZ2V0RnJlcXVlbmN5UmVzcG9uc2UtZXhwZWN0ZWQudHh0CkBAIC0xLDEy
ICsxLDIyIEBACiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKLUZBSUwgRXhl
Y3V0aW5nICIxLXBvbGUgSUlSIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0
aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmlsdGVyIGlzIG5v
dCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKFsxXSwgWzEsIC0wLjld
KScsICdjb250ZXh0LmNyZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIKLUZBSUwgRXhlY3V0
aW5nICJjb21wYXJlIElJUiBhbmQgYmlxdWFkIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IGNvbnRleHQuY3JlYXRlSUlSRmls
dGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyKAotICAg
ICAgICAgICAgW2NvZWYuYjAsIGNvZWYuYjEsIGNvZWYuYjJdLCBbMSwgY29lZi5hMSwgY29lZi5h
Ml0pJywgJ2NvbnRleHQuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQpIgotRkFJTCBFeGVj
dXRpbmcgImdldEZyZXF1ZW5jeVJlc3BvbnNlIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWpl
Y3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJp
YWJsZTogSUlSRmlsdGVyTm9kZSIKK1BBU1MgRXhlY3V0aW5nICIxLXBvbGUgSUlSIiAKK1BBU1Mg
RXhlY3V0aW5nICJjb21wYXJlIElJUiBhbmQgYmlxdWFkIiAKK1BBU1MgRXhlY3V0aW5nICJnZXRG
cmVxdWVuY3lSZXNwb25zZSIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbMS1wb2xlIElJ
Ul0gIAorUEFTUyAgIDEtcG9sZSBJSVIgTWFnbml0dWRlIFJlc3BvbnNlIGVxdWFscyBbMTAsOS45
OTU1NjE1OTk3MzE0NDUsOS45ODIyODE2ODQ4NzU0ODgsOS45NjAyNjYxMTMyODEyNSw5LjkyOTY4
ODQ1MzY3NDMxNiw5Ljg5MDc4NTIxNzI4NTE1Niw5Ljg0Mzg1MjA0MzE1MTg1NSw5Ljc4OTIzODky
OTc0ODUzNSw5LjcyNzM0MTY1MTkxNjUwNCw5LjY1ODU5MjIyNDEyMTA5NCw5LjU4MzQ1NTA4NTc1
NDM5NSw5LjUwMjQxODUxODA2NjQwNiw5LjQxNTk4MzIwMDA3MzI0Miw5LjMyNDY1OTM0NzUzNDE4
LDkuMjI4OTU4MTI5ODgyODEyLDkuMTI5Mzg0MDQwODMyNTIuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMjg2MTEsInJlbGF0
aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgMS1wb2xlIElJUiBQaGFzZSBSZXNwb25zZSBlcXVh
bHMgWzAsLTAuMDI4MjY1NTAyMzAzODM4NzMsLTAuMDU2NDc4MTI0MTExODkwNzksLTAuMDg0NTg1
NTQ3NDQ3MjA0NTksLTAuMTEyNTM2NTU3MDE4NzU2ODcsLTAuMTQwMjgxNTcyOTM3OTY1NCwtMC4x
Njc3NzMwOTc3NTM1MjQ3OCwtMC4xOTQ5NjYxNjcyMTE1MzI2LC0wLjIyMTgxODY4NTUzMTYxNjIs
LTAuMjQ4MjkxNzc1NTg0MjIwOSwtMC4yNzQzNDk5NTc3MDQ1NDQwNywtMC4yOTk5NjEyMzkwOTk1
MDI1NiwtMC4zMjUwOTc0NDE2NzMyNzg4LC0wLjM0OTczMzg4OTEwMjkzNTgsLTAuMzczODQ5NzE5
NzYyODAyMSwtMC4zOTc0Mjc0Njk0OTE5NTg2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MS43ODgyZS03LCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uIAorUEFTUyA8IFsxLXBvbGUgSUlSXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFtjb21wYXJlIElJUiBhbmQgYmlxdWFkXSAgCitQQVNT
ICAgSUlSIE1hZ25pdHVkZSBSZXNwb25zZSBlcXVhbHMgWzEsMS4wMDI4MzQ1NTg0ODY5Mzg1LDEu
MDExMzQ3ODg5OTAwMjA3NSwxLjAyNTU1NDg5NTQwMTAwMSwxLjA0NTQyODI3NjA2MjAxMTcsMS4w
NzA4MDUzMTEyMDMwMDMsMS4xMDEyMjU0OTUzMzg0NCwxLjEzNTY3MTk3MzIyODQ1NDYsMS4xNzIx
OTUwNzY5NDI0NDM4LDEuMjA3NDU0MzIzNzY4NjE1NywxLjIzNjM1NjM3NzYwMTYyMzUsMS4yNTIy
MDk3ODI2MDA0MDI4LDEuMjQ3OTYyMjM2NDA0NDE5LDEuMjE4NjQ0NjE4OTg4MDM3LDEuMTYzOTA1
ODU4OTkzNTMwMywxLjA4ODY2NDg4OTMzNTYzMjMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzQxOSwicmVsYXRpdmVUaHJl
c2hvbGQiOjB9LiAKK1BBU1MgICBJSVIgUGhhc2UgUmVzcG9uc2UgZXF1YWxzIFswLC0wLjA2MTMx
NTMyNDE1NzQ3NjQyNSwtMC4xMjM5MTEzNzMzMTcyNDE2NywtMC4xODkxMjIyNDQ3MTU2OTA2LC0w
LjI1ODM4NjkzOTc2NDAyMjgsLTAuMzMzMjkzNzk1NTg1NjMyMywtMC40MTU2MDcwNjQ5NjIzODcx
LC0wLjUwNzI1MDI0OTM4NTgzMzcsLTAuNjEwMjAyNTUwODg4MDYxNSwtMC43MjYyNDAwMzg4NzE3
NjUxLC0wLjg1NjQ0OTE4NjgwMTkxMDQsLTEuMDAwNTA2MTYyNjQzNDMyNiwtMS4xNTU5MjczMDA0
NTMxODYsLTEuMzE3NzgwOTcxNTI3MDk5NiwtMS40NzkzODk1NDgzMDE2OTY4LC0xLjYzMzk1OTc3
MDIwMjYzNjcuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLjAwMDAyNzY1NywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBb
Y29tcGFyZSBJSVIgYW5kIGJpcXVhZF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBh
c3NlcnRpb25zKSAKIFBBU1MgPiBbZ2V0RnJlcXVlbmN5UmVzcG9uc2VdIFRlc3Qgb3V0LW9mLWJv
dW5kcyBmcmVxdWVuY3kgdmFsdWVzIAorUEFTUyAgIE1hZ25pdHVkZSByZXNwb25zZSBhdCBmcmVx
dWVuY3kgLTEgaXMgTmFOLiAKK1BBU1MgICBNYWduaXR1ZGUgcmVzcG9uc2UgYXQgZnJlcXVlbmN5
IDI0MDAxIGlzIE5hTi4gCitQQVNTICAgUGhhc2UgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IC0xIGlz
IE5hTi4gCitQQVNTICAgUGhhc2UgcmVzcG9uc2UgYXQgZnJlcXVlbmN5IDI0MDAxIGlzIE5hTi4g
CitQQVNTIDwgW2dldEZyZXF1ZW5jeVJlc3BvbnNlXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0
b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAz
IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWlp
cmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWlpcmZpbHRlcm5vZGUtaW50ZXJmYWNlL3Rlc3QtaWlyZmlsdGVybm9kZS1l
eHBlY3RlZC50eHQKaW5kZXggYmY2ZGZjZjg2YWZjZmE1MWZlYWFiMDVhZjBiZjAwZTE2OWExODgw
Mi4uMTJlNzE3MDIxMDJkN2NjNTNhMWQ2MjRkMjFjZjVkYTY2YTg0MTZkYSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1paXJmaWx0ZXJub2RlLWludGVyZmFjZS90ZXN0LWlpcmZpbHRlcm5vZGUt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtaWlyZmlsdGVybm9kZS1pbnRlcmZhY2Uv
dGVzdC1paXJmaWx0ZXJub2RlLWV4cGVjdGVkLnR4dApAQCAtMSwyMiArMSwxMCBAQAogCiBQQVNT
IElJUkZpbHRlck5vZGUgY29lZmZpY2llbnRzIGFyZSBjaGVja2VkIHByb3Blcmx5IAotRkFJTCBm
ZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSBlbXB0eSBhc3NlcnRfdGhyb3dzX2Rv
bTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFy
ZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlS
RmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBh
cmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEg
RE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwg
dG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIGZlZWRiYWNrIGNvZWZmaWNpZW50cyBjYW4g
bm90IGJlIGVtcHR5IGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewot
ICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9i
amVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJ
biAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicg
aXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gTm90U3VwcG9ydGVkRXJy
b3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDkKLUZB
SUwgbW9yZSB0aGFuIDIwIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50cyBjYW4gbm90IGJlIHVzZWQg
YXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7Ci0gICAgICAgIGFjLmNy
ZWF0ZUlJUkZpbHRlcihhcmcxLCBhcmcyKQotICAgICAgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJy
b3I6IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdhYy5jcmVhdGVJ
SVJGaWx0ZXIoYXJnMSwgYXJnMiknLCAnYWMuY3JlYXRlSUlSRmlsdGVyJyBpcyB1bmRlZmluZWQp
IiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb3RTdXBwb3J0ZWRFcnJvcjogcHJvcGVydHkg
ImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgOQotRkFJTCBtb3JlIHRoYW4g
MjAgZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgdXNlZCBhc3NlcnRfdGhyb3dzX2Rv
bTogZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsKLSAgICAgICAgYWMuY3JlYXRlSUlSRmlsdGVyKGFy
ZzEsIGFyZzIpCi0gICAgICB9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogYWMuY3JlYXRlSUlS
RmlsdGVyIGlzIG5vdCBhIGZ1bmN0aW9uLiAoSW4gJ2FjLmNyZWF0ZUlJUkZpbHRlcihhcmcxLCBh
cmcyKScsICdhYy5jcmVhdGVJSVJGaWx0ZXInIGlzIHVuZGVmaW5lZCkiIHRoYXQgaXMgbm90IGEg
RE9NRXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwg
dG8gdW5kZWZpbmVkLCBleHBlY3RlZCA5Ci1GQUlMIGF0IGxlYXN0IG9uZSBmZWVkZm9yd2FyZCBj
b2VmZmljaWVudCBtdXN0IGJlIG5vbi16ZXJvIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAi
ZnVuY3Rpb24gKCkgewotICAgICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAg
ICAgIH0iIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90
IGEgZnVuY3Rpb24uIChJbiAnYWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNy
ZWF0ZUlJUkZpbHRlcicgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24g
SW52YWxpZFN0YXRlRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQs
IGV4cGVjdGVkIDExCi1GQUlMIHRoZSBmaXJzdCBmZWVkYmFjayBjb2VmZmljaWVudCBtdXN0IGJl
IG5vbi16ZXJvIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgewotICAg
ICAgICBhYy5jcmVhdGVJSVJGaWx0ZXIoYXJnMSwgYXJnMikKLSAgICAgIH0iIHRocmV3IG9iamVj
dCAiVHlwZUVycm9yOiBhYy5jcmVhdGVJSVJGaWx0ZXIgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
YWMuY3JlYXRlSUlSRmlsdGVyKGFyZzEsIGFyZzIpJywgJ2FjLmNyZWF0ZUlJUkZpbHRlcicgaXMg
dW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3I6
IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDExCi1GQUlM
IElJUkZpbHRlck5vZGUgZ2V0RnJlcXVlbmN5UmVzcG9uc2UgaGFuZGxlcyBpbnZhbGlkIGZyZXF1
ZW5jaWVzIHByb3Blcmx5IGFjLmNyZWF0ZUlJUkZpbHRlciBpcyBub3QgYSBmdW5jdGlvbi4gKElu
ICdhYy5jcmVhdGVJSVJGaWx0ZXIoWzAuNSwgMC41XSwgWzEuMF0pJywgJ2FjLmNyZWF0ZUlJUkZp
bHRlcicgaXMgdW5kZWZpbmVkKQorUEFTUyBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5v
dCBiZSBlbXB0eSAKK1BBU1MgZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUgZW1wdHkg
CitQQVNTIG1vcmUgdGhhbiAyMCBmZWVkZm9yd2FyZCBjb2VmZmljaWVudHMgY2FuIG5vdCBiZSB1
c2VkIAorUEFTUyBtb3JlIHRoYW4gMjAgZmVlZGJhY2sgY29lZmZpY2llbnRzIGNhbiBub3QgYmUg
dXNlZCAKK1BBU1MgYXQgbGVhc3Qgb25lIGZlZWRmb3J3YXJkIGNvZWZmaWNpZW50IG11c3QgYmUg
bm9uLXplcm8gCitQQVNTIHRoZSBmaXJzdCBmZWVkYmFjayBjb2VmZmljaWVudCBtdXN0IGJlIG5v
bi16ZXJvIAorUEFTUyBJSVJGaWx0ZXJOb2RlIGdldEZyZXF1ZW5jeVJlc3BvbnNlIGhhbmRsZXMg
aW52YWxpZCBmcmVxdWVuY2llcyBwcm9wZXJseSAKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>