<?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>216027</bug_id>
          
          <creation_ts>2020-08-31 20:33:54 -0700</creation_ts>
          <short_desc>Add proper k-rate automation support for BiquadFilterNode</short_desc>
          <delta_ts>2020-09-01 09:40:15 -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></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>cjerdonek</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1684368</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-31 20:33:54 -0700</bug_when>
    <thetext>Add proper k-rate automation support for BiquadFilterNode.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684369</commentid>
    <comment_count>1</comment_count>
      <attachid>407653</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-31 20:41:05 -0700</bug_when>
    <thetext>Created attachment 407653
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684374</commentid>
    <comment_count>2</comment_count>
      <attachid>407655</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-31 21:00:53 -0700</bug_when>
    <thetext>Created attachment 407655
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684402</commentid>
    <comment_count>3</comment_count>
      <attachid>407655</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-01 01:42:06 -0700</bug_when>
    <thetext>Comment on attachment 407655
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        based on Chromium&apos;s implementation.

Do they have API/Unit tests we could also run, for instance to cover Biquad implementation?

&gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:62
&gt; +        float detune[AudioNode::ProcessingSizeInFrames]; // in Cents

We are allocating on the stack arrays of float but this is only really used in the if below, not the else.
Could we move these arrays to inside the if statement?

&gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:87
&gt; +            updateCoefficients(1, cutoffFrequency, q, gain, detune);

Could we write it as the following?
auto cutoffFrequency = biquadProcessor()-&gt;parameter1().finalValue();
...
updateCoefficients(1, &amp;cutoffFrequency, &amp;q, &amp;gain, &amp;detune);

&gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:145
&gt; +    updateTailTime(numberOfFrames - 1);

We could ASSERT that numberOfFrames is not null.

&gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:177
&gt;      for (int k = 0; k &lt; nFrequencies; ++k)

Preexisting, but it seems odd nFrequencies is an int.

&gt; Source/WebCore/Modules/webaudio/BiquadProcessor.cpp:128
&gt; +    // |response_kernel| with these values.

s/|response_kernel|/responseKernel.
Comment on one line.

&gt; Source/WebCore/platform/audio/Biquad.cpp:71
&gt; +    setNormalizedCoefficients(0, 1, 0, 0, 1, 0, 0);

This seems a bit mysterious, especially the first 0 is an index, not a coefficient.
Is there a way we could make that clearer? Rename setNormalizedCoefficients, name the first value or group parameters maybe.

&gt; Source/WebCore/platform/audio/Biquad.cpp:81
&gt; +        int n = framesToProcess;

Why int?

&gt; Source/WebCore/platform/audio/Biquad.cpp:89
&gt; +        const double* b0 = m_b0.data();

auto?

&gt; Source/WebCore/platform/audio/Biquad.cpp:-102
&gt; -    }

Can we return early here?

&gt; Source/WebCore/platform/audio/Biquad.cpp:128
&gt; +        double* outputP = m_outputBuffer.data();

auto*?

&gt; Source/WebCore/platform/audio/Biquad.cpp:150
&gt; +        m_y2 = destP[framesToProcess - 2];

Should we assert framesToProcess is above 2?

&gt; Source/WebCore/platform/audio/Biquad.cpp:814
&gt; +        ASSERT(std::isfinite(tailFrame));

return early?

&gt; Source/WebCore/platform/audio/Biquad.cpp:846
&gt; +        }

Ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684470</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-09-01 08:40:45 -0700</bug_when>
    <thetext>(In reply to youenn fablet from comment #3)
&gt; Comment on attachment 407655 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=407655&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:9
&gt; &gt; +        based on Chromium&apos;s implementation.
&gt; 
&gt; Do they have API/Unit tests we could also run, for instance to cover Biquad
&gt; implementation?

I did not find any such API/unit tests by grepping. Biquad is tested by layout tests though. 

&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:62
&gt; &gt; +        float detune[AudioNode::ProcessingSizeInFrames]; // in Cents
&gt; 
&gt; We are allocating on the stack arrays of float but this is only really used
&gt; in the if below, not the else.
&gt; Could we move these arrays to inside the if statement?
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:87
&gt; &gt; +            updateCoefficients(1, cutoffFrequency, q, gain, detune);
&gt; 
&gt; Could we write it as the following?
&gt; auto cutoffFrequency = biquadProcessor()-&gt;parameter1().finalValue();
&gt; ...
&gt; updateCoefficients(1, &amp;cutoffFrequency, &amp;q, &amp;gain, &amp;detune);
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:145
&gt; &gt; +    updateTailTime(numberOfFrames - 1);
&gt; 
&gt; We could ASSERT that numberOfFrames is not null.
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/BiquadDSPKernel.cpp:177
&gt; &gt;      for (int k = 0; k &lt; nFrequencies; ++k)
&gt; 
&gt; Preexisting, but it seems odd nFrequencies is an int.
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/BiquadProcessor.cpp:128
&gt; &gt; +    // |response_kernel| with these values.
&gt; 
&gt; s/|response_kernel|/responseKernel.
&gt; Comment on one line.
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:71
&gt; &gt; +    setNormalizedCoefficients(0, 1, 0, 0, 1, 0, 0);
&gt; 
&gt; This seems a bit mysterious, especially the first 0 is an index, not a
&gt; coefficient.
&gt; Is there a way we could make that clearer? Rename setNormalizedCoefficients,
&gt; name the first value or group parameters maybe.
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:81
&gt; &gt; +        int n = framesToProcess;
&gt; 
&gt; Why int?
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:89
&gt; &gt; +        const double* b0 = m_b0.data();
&gt; 
&gt; auto?
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:-102
&gt; &gt; -    }
&gt; 
&gt; Can we return early here?
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:128
&gt; &gt; +        double* outputP = m_outputBuffer.data();
&gt; 
&gt; auto*?
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:150
&gt; &gt; +        m_y2 = destP[framesToProcess - 2];
&gt; 
&gt; Should we assert framesToProcess is above 2?
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:814
&gt; &gt; +        ASSERT(std::isfinite(tailFrame));
&gt; 
&gt; return early?
&gt; 
&gt; &gt; Source/WebCore/platform/audio/Biquad.cpp:846
&gt; &gt; +        }
&gt; 
&gt; Ditto

Applied all those changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684473</commentid>
    <comment_count>5</comment_count>
      <attachid>407682</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-09-01 08:42:39 -0700</bug_when>
    <thetext>Created attachment 407682
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684481</commentid>
    <comment_count>6</comment_count>
      <attachid>407683</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-09-01 08:54:55 -0700</bug_when>
    <thetext>Created attachment 407683
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684504</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-01 09:39:57 -0700</bug_when>
    <thetext>Committed r266398: &lt;https://trac.webkit.org/changeset/266398&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 407683.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684505</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-01 09:40:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/68149072&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407653</attachid>
            <date>2020-08-31 20:41:05 -0700</date>
            <delta_ts>2020-08-31 21:00:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216027-20200831204104.patch</filename>
            <type>text/plain</type>
            <size>89713</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2Mzc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmEzYTczNThmNmJhMWU3
MzM3NjYzYTY1OTEzYTY1OTgzZmYxMmU0Zi4uMTQ4MmMyMjc4NTg0MmIyMjViZDMzMjZjM2UyN2Qx
NmVkMzc5NTA0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIwLTA4LTMxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHByb3BlciBrLXJhdGUg
YXV0b21hdGlvbiBzdXBwb3J0IGZvciBCaXF1YWRGaWx0ZXJOb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYwMjcKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgcHJvcGVyIGstcmF0ZSBhdXRvbWF0
aW9uIHN1cHBvcnQgZm9yIEJpcXVhZEZpbHRlck5vZGUuIFRoaXMgcGF0Y2ggaXMKKyAgICAgICAg
YmFzZWQgb24gQ2hyb21pdW0ncyBpbXBsZW1lbnRhdGlvbi4KKworICAgICAgICBObyBuZXcgdGVz
dHMsIHJlYmFzZWxpbmVkIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogTW9kdWxlcy93ZWJh
dWRpby9CaXF1YWREU1BLZXJuZWwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aGFzQ29uc3RhbnRW
YWx1ZXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkRFNQS2VybmVsOjp1cGRhdGVDb2VmZmlj
aWVudHNJZk5lY2Vzc2FyeSk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnVw
ZGF0ZUNvZWZmaWNpZW50cyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnBy
b2Nlc3MpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkRFNQS2VybmVsOjpnZXRGcmVxdWVuY3lS
ZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnRhaWxUaW1lIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6dXBkYXRlVGFpbFRpbWUp
OgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmlxdWFkRFNQS2VybmVsLmg6CisgICAgICAg
ICogTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6QmlxdWFkUHJvY2Vzc29yOjpjaGVja0ZvckRpcnR5Q29lZmZpY2llbnRzKToKKyAgICAgICAg
KFdlYkNvcmU6OkJpcXVhZFByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29yLmg6CisgICAgICAgICogcGxhdGZv
cm0vYXVkaW8vQmlxdWFkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6QmlxdWFkKToK
KyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpC
aXF1YWQ6OnByb2Nlc3NGYXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6cmVzZXQpOgor
ICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRMb3dwYXNzUGFyYW1zKToKKyAgICAgICAgKFdl
YkNvcmU6OkJpcXVhZDo6c2V0SGlnaHBhc3NQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6Qmlx
dWFkOjpzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVh
ZDo6c2V0TG93U2hlbGZQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRIaWdo
U2hlbGZQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRQZWFraW5nUGFyYW1z
KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6c2V0QWxscGFzc1BhcmFtcyk6CisgICAgICAg
IChXZWJDb3JlOjpCaXF1YWQ6OnNldE5vdGNoUGFyYW1zKToKKyAgICAgICAgKFdlYkNvcmU6OkJp
cXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpnZXRG
cmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpyZXBlYXRlZFJvb3RSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpyb290RmluZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkJp
cXVhZDo6dGFpbEZyYW1lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9CaXF1YWQuaDoKKwog
MjAyMC0wOC0zMSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAg
ICAgICBBdm9pZCBjb21wdXRpbmcgbWV0YWRhdGEgZm9yIGlkZW1wb3RlbnQgdGV4dCBhdXRvc2l6
aW5nIG9uIG1hY09TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlv
L0JpcXVhZERTUEtlcm5lbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jp
cXVhZERTUEtlcm5lbC5jcHAKaW5kZXggMTY5YWE2NWFlM2UzODVmNGJiOTg0MDhkNGVmNDgyMjJk
MDAxM2IwMi4uOWUyNzAyNWQ4YTE4MTNiMjZjMDZlYzNhYjlmZTk2ZmZjODRhMGU4NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFkRFNQS2VybmVsLmNw
cApAQCAtNDEsNzggKzQxLDEwOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBzZXR0aW5ncyBv
ZiB0aGUgQmlxdWFkLgogc3RhdGljIGNvbnN0IGRvdWJsZSBNYXhCaXF1YWREZWxheVRpbWUgPSAw
LjI7CiAKLXZvaWQgQmlxdWFkRFNQS2VybmVsOjp1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2Fy
eShib29sIHVzZVNtb290aGluZywgYm9vbCBmb3JjZVVwZGF0ZSkKK3N0YXRpYyBib29sIGhhc0Nv
bnN0YW50VmFsdWVzKGZsb2F0KiB2YWx1ZXMsIGludCBmcmFtZXNUb1Byb2Nlc3MpCiB7Ci0gICAg
aWYgKGZvcmNlVXBkYXRlIHx8IGJpcXVhZFByb2Nlc3NvcigpLT5maWx0ZXJDb2VmZmljaWVudHNE
aXJ0eSgpKSB7Ci0gICAgICAgIGRvdWJsZSB2YWx1ZTE7Ci0gICAgICAgIGRvdWJsZSB2YWx1ZTI7
Ci0gICAgICAgIGRvdWJsZSBnYWluOwotICAgICAgICBkb3VibGUgZGV0dW5lOyAvLyBpbiBDZW50
cwotCi0gICAgICAgIGJvb2wgc2hvdWxkVXNlQVJhdGUgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFy
YW1ldGVyMSgpLmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCi0gICAg
ICAgICAgICB8fCBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMigpLmF1dG9tYXRpb25SYXRl
KCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCi0gICAgICAgICAgICB8fCBiaXF1YWRQcm9jZXNz
b3IoKS0+cGFyYW1ldGVyMygpLmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFS
YXRlCi0gICAgICAgICAgICB8fCBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmF1dG9t
YXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlOwotICAgICAgICBpZiAoYmlxdWFk
UHJvY2Vzc29yKCktPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkgJiYgc2hvdWxkVXNlQVJhdGUp
IHsKLSAgICAgICAgICAgIHZhbHVlMSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIxKCku
ZmluYWxWYWx1ZSgpOwotICAgICAgICAgICAgdmFsdWUyID0gYmlxdWFkUHJvY2Vzc29yKCktPnBh
cmFtZXRlcjIoKS5maW5hbFZhbHVlKCk7Ci0gICAgICAgICAgICBnYWluID0gYmlxdWFkUHJvY2Vz
c29yKCktPnBhcmFtZXRlcjMoKS5maW5hbFZhbHVlKCk7Ci0gICAgICAgICAgICBkZXR1bmUgPSBi
aXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmZpbmFsVmFsdWUoKTsKLSAgICAgICAgfSBl
bHNlIGlmICh1c2VTbW9vdGhpbmcpIHsKLSAgICAgICAgICAgIHZhbHVlMSA9IGJpcXVhZFByb2Nl
c3NvcigpLT5wYXJhbWV0ZXIxKCkuc21vb3RoZWRWYWx1ZSgpOwotICAgICAgICAgICAgdmFsdWUy
ID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjIoKS5zbW9vdGhlZFZhbHVlKCk7Ci0gICAg
ICAgICAgICBnYWluID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMoKS5zbW9vdGhlZFZh
bHVlKCk7Ci0gICAgICAgICAgICBkZXR1bmUgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVy
NCgpLnNtb290aGVkVmFsdWUoKTsKKyAgICAvLyBGSVhNRTogVXNlIFNJTUQgdG8gb3B0aW1pemUg
dGhpcy4gVGhpcyB3b3VsZCBzcGVlZCB1cCBwcm9jZXNzaW5nIGJ5IGEgZmFjdG9yIG9mIDQKKyAg
ICAvLyBiZWNhdXNlIHdlIGNhbiBwcm9jZXNzIDQgZmxvYXRzIGF0IGEgdGltZS4KKyAgICBmbG9h
dCB2YWx1ZSA9IHZhbHVlc1swXTsKKyAgICBmb3IgKGludCBrID0gMTsgayA8IGZyYW1lc1RvUHJv
Y2VzczsgKytrKSB7CisgICAgICAgIGlmICh2YWx1ZXNba10gIT0gdmFsdWUpCisgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIHJldHVybiB0cnVlOworfQorCit2b2lkIEJpcXVh
ZERTUEtlcm5lbDo6dXBkYXRlQ29lZmZpY2llbnRzSWZOZWNlc3Nhcnkoc2l6ZV90IGZyYW1lc1Rv
UHJvY2VzcykKK3sKKyAgICBpZiAoYmlxdWFkUHJvY2Vzc29yKCktPmZpbHRlckNvZWZmaWNpZW50
c0RpcnR5KCkpIHsKKyAgICAgICAgZmxvYXQgY3V0b2ZmRnJlcXVlbmN5W0F1ZGlvTm9kZTo6UHJv
Y2Vzc2luZ1NpemVJbkZyYW1lc107CisgICAgICAgIGZsb2F0IHFbQXVkaW9Ob2RlOjpQcm9jZXNz
aW5nU2l6ZUluRnJhbWVzXTsKKyAgICAgICAgZmxvYXQgZ2FpbltBdWRpb05vZGU6OlByb2Nlc3Np
bmdTaXplSW5GcmFtZXNdOworICAgICAgICBmbG9hdCBkZXR1bmVbQXVkaW9Ob2RlOjpQcm9jZXNz
aW5nU2l6ZUluRnJhbWVzXTsgLy8gaW4gQ2VudHMKKworICAgICAgICBBU1NFUlQoZnJhbWVzVG9Q
cm9jZXNzIDw9IEF1ZGlvTm9kZTo6UHJvY2Vzc2luZ1NpemVJbkZyYW1lcyk7CisKKyAgICAgICAg
aWYgKGJpcXVhZFByb2Nlc3NvcigpLT5oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpICYmIGJpcXVh
ZFByb2Nlc3NvcigpLT5zaG91bGRVc2VBUmF0ZSgpKSB7CisgICAgICAgICAgICBiaXF1YWRQcm9j
ZXNzb3IoKS0+cGFyYW1ldGVyMSgpLmNhbGN1bGF0ZVNhbXBsZUFjY3VyYXRlVmFsdWVzKGN1dG9m
ZkZyZXF1ZW5jeSwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICAgICAgICAgIGJpcXVhZFByb2Nlc3Nv
cigpLT5wYXJhbWV0ZXIyKCkuY2FsY3VsYXRlU2FtcGxlQWNjdXJhdGVWYWx1ZXMocSwgZnJhbWVz
VG9Qcm9jZXNzKTsKKyAgICAgICAgICAgIGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIzKCku
Y2FsY3VsYXRlU2FtcGxlQWNjdXJhdGVWYWx1ZXMoZ2FpbiwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAg
ICAgICAgICAgIGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXI0KCkuY2FsY3VsYXRlU2FtcGxl
QWNjdXJhdGVWYWx1ZXMoZGV0dW5lLCBmcmFtZXNUb1Byb2Nlc3MpOworCisgICAgICAgICAgICAv
LyBJZiBhbGwgdGhlIHZhbHVlcyBhcmUgYWN0dWFsbHkgY29uc3RhbnQgZm9yIHRoaXMgcmVuZGVy
IChvciB0aGUKKyAgICAgICAgICAgIC8vIGF1dG9tYXRpb24gcmF0ZSBpcyAiay1yYXRlIiBmb3Ig
YWxsIG9mIHRoZSBBdWRpb1BhcmFtcyksIHdlIGRvbid0IG5lZWQKKyAgICAgICAgICAgIC8vIHRv
IGNvbXB1dGUgZmlsdGVyIGNvZWZmaWNpZW50cyBmb3IgZWFjaCBmcmFtZSBzaW5jZSB0aGV5IHdv
dWxkIGJlIHRoZQorICAgICAgICAgICAgLy8gc2FtZSBhcyB0aGUgZmlyc3QuCisgICAgICAgICAg
ICBib29sIGlzQ29uc3RhbnQgPSBoYXNDb25zdGFudFZhbHVlcyhjdXRvZmZGcmVxdWVuY3ksIGZy
YW1lc1RvUHJvY2VzcykKKyAgICAgICAgICAgICAgICAmJiBoYXNDb25zdGFudFZhbHVlcyhxLCBm
cmFtZXNUb1Byb2Nlc3MpCisgICAgICAgICAgICAgICAgJiYgaGFzQ29uc3RhbnRWYWx1ZXMoZ2Fp
biwgZnJhbWVzVG9Qcm9jZXNzKQorICAgICAgICAgICAgICAgICYmIGhhc0NvbnN0YW50VmFsdWVz
KGRldHVuZSwgZnJhbWVzVG9Qcm9jZXNzKTsKKworICAgICAgICAgICAgdXBkYXRlQ29lZmZpY2ll
bnRzKGlzQ29uc3RhbnQgPyAxIDogZnJhbWVzVG9Qcm9jZXNzLCBjdXRvZmZGcmVxdWVuY3ksIHEs
IGdhaW4sIGRldHVuZSk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB2YWx1ZTEgPSBi
aXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMSgpLnZhbHVlKCk7Ci0gICAgICAgICAgICB2YWx1
ZTIgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMigpLnZhbHVlKCk7Ci0gICAgICAgICAg
ICBnYWluID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMoKS52YWx1ZSgpOwotICAgICAg
ICAgICAgZGV0dW5lID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjQoKS52YWx1ZSgpOwor
ICAgICAgICAgICAgY3V0b2ZmRnJlcXVlbmN5WzBdID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFt
ZXRlcjEoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICBxWzBdID0gYmlxdWFkUHJvY2Vzc29y
KCktPnBhcmFtZXRlcjIoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICBnYWluWzBdID0gYmlx
dWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICBk
ZXR1bmVbMF0gPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmZpbmFsVmFsdWUoKTsK
KyAgICAgICAgICAgIHVwZGF0ZUNvZWZmaWNpZW50cygxLCBjdXRvZmZGcmVxdWVuY3ksIHEsIGdh
aW4sIGRldHVuZSk7CiAgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgQmlxdWFkRFNQS2VybmVs
Ojp1cGRhdGVDb2VmZmljaWVudHMoc2l6ZV90IG51bWJlck9mRnJhbWVzLCBjb25zdCBmbG9hdCog
Y3V0b2ZmRnJlcXVlbmN5LCBjb25zdCBmbG9hdCogcSwgY29uc3QgZmxvYXQqIGdhaW4sIGNvbnN0
IGZsb2F0KiBkZXR1bmUpCit7CisgICAgLy8gQ29udmVydCBmcm9tIEhlcnR6IHRvIG5vcm1hbGl6
ZWQgZnJlcXVlbmN5IDAgLT4gMS4KKyAgICBkb3VibGUgbnlxdWlzdCA9IHRoaXMtPm55cXVpc3Qo
KTsKKworICAgIG1fYmlxdWFkLnNldEhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKG51bWJlck9mRnJh
bWVzID4gMSk7CiAKLSAgICAgICAgLy8gQ29udmVydCBmcm9tIEhlcnR6IHRvIG5vcm1hbGl6ZWQg
ZnJlcXVlbmN5IDAgLT4gMS4KLSAgICAgICAgZG91YmxlIG55cXVpc3QgPSB0aGlzLT5ueXF1aXN0
KCk7Ci0gICAgICAgIGRvdWJsZSBub3JtYWxpemVkRnJlcXVlbmN5ID0gdmFsdWUxIC8gbnlxdWlz
dDsKKyAgICBmb3IgKHNpemVfdCBrID0gMDsgayA8IG51bWJlck9mRnJhbWVzOyArK2spIHsKKyAg
ICAgICAgZG91YmxlIG5vcm1hbGl6ZWRGcmVxdWVuY3kgPSBjdXRvZmZGcmVxdWVuY3lba10gLyBu
eXF1aXN0OwogCiAgICAgICAgIC8vIE9mZnNldCBmcmVxdWVuY3kgYnkgZGV0dW5lLgotICAgICAg
ICBpZiAoZGV0dW5lKQotICAgICAgICAgICAgbm9ybWFsaXplZEZyZXF1ZW5jeSAqPSBwb3coMiwg
ZGV0dW5lIC8gMTIwMCk7CisgICAgICAgIGlmIChkZXR1bmVba10pIHsKKyAgICAgICAgICAgIC8v
IERldHVuZSBtdWx0aXBsaWVzIHRoZSBmcmVxdWVuY3kgYnkgMl4oZGV0dW5lW2tdIC8gMTIwMCku
CisgICAgICAgICAgICBub3JtYWxpemVkRnJlcXVlbmN5ICo9IHN0ZDo6ZXhwMihkZXR1bmVba10g
LyAxMjAwKTsKKyAgICAgICAgfQogCi0gICAgICAgIC8vIENvbmZpZ3VyZSB0aGUgYmlxdWFkIHdp
dGggdGhlIG5ldyBmaWx0ZXIgcGFyYW1ldGVycyBmb3IgdGhlIGFwcHJvcHJpYXRlIHR5cGUgb2Yg
ZmlsdGVyLgorICAgICAgICAvLyBDb25maWd1cmUgdGhlIGJpcXVhZCB3aXRoIHRoZSBuZXcgZmls
dGVyIHBhcmFtZXRlcnMgZm9yIHRoZSBhcHByb3ByaWF0ZQorICAgICAgICAvLyB0eXBlIG9mIGZp
bHRlci4KICAgICAgICAgc3dpdGNoIChiaXF1YWRQcm9jZXNzb3IoKS0+dHlwZSgpKSB7CiAgICAg
ICAgIGNhc2UgQmlxdWFkRmlsdGVyVHlwZTo6TG93cGFzczoKLSAgICAgICAgICAgIG1fYmlxdWFk
LnNldExvd3Bhc3NQYXJhbXMobm9ybWFsaXplZEZyZXF1ZW5jeSwgdmFsdWUyKTsKKyAgICAgICAg
ICAgIG1fYmlxdWFkLnNldExvd3Bhc3NQYXJhbXMoaywgbm9ybWFsaXplZEZyZXF1ZW5jeSwgcVtr
XSk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6
OkhpZ2hwYXNzOgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0SGlnaHBhc3NQYXJhbXMobm9ybWFs
aXplZEZyZXF1ZW5jeSwgdmFsdWUyKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNldEhpZ2hwYXNz
UGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHFba10pOwogICAgICAgICAgICAgYnJlYWs7
CiAKICAgICAgICAgY2FzZSBCaXF1YWRGaWx0ZXJUeXBlOjpCYW5kcGFzczoKLSAgICAgICAgICAg
IG1fYmlxdWFkLnNldEJhbmRwYXNzUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMik7
CisgICAgICAgICAgICBtX2JpcXVhZC5zZXRCYW5kcGFzc1BhcmFtcyhrLCBub3JtYWxpemVkRnJl
cXVlbmN5LCBxW2tdKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgQmlxdWFk
RmlsdGVyVHlwZTo6TG93c2hlbGY6Ci0gICAgICAgICAgICBtX2JpcXVhZC5zZXRMb3dTaGVsZlBh
cmFtcyhub3JtYWxpemVkRnJlcXVlbmN5LCBnYWluKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNl
dExvd1NoZWxmUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVuY3ksIGdhaW5ba10pOwogICAgICAg
ICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBCaXF1YWRGaWx0ZXJUeXBlOjpIaWdoc2hlbGY6
Ci0gICAgICAgICAgICBtX2JpcXVhZC5zZXRIaWdoU2hlbGZQYXJhbXMobm9ybWFsaXplZEZyZXF1
ZW5jeSwgZ2Fpbik7CisgICAgICAgICAgICBtX2JpcXVhZC5zZXRIaWdoU2hlbGZQYXJhbXMoaywg
bm9ybWFsaXplZEZyZXF1ZW5jeSwgZ2FpbltrXSk7CiAgICAgICAgICAgICBicmVhazsKIAogICAg
ICAgICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6OlBlYWtpbmc6Ci0gICAgICAgICAgICBtX2JpcXVh
ZC5zZXRQZWFraW5nUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMiwgZ2Fpbik7Cisg
ICAgICAgICAgICBtX2JpcXVhZC5zZXRQZWFraW5nUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVu
Y3ksIHFba10sIGdhaW5ba10pOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBC
aXF1YWRGaWx0ZXJUeXBlOjpOb3RjaDoKLSAgICAgICAgICAgIG1fYmlxdWFkLnNldE5vdGNoUGFy
YW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMik7CisgICAgICAgICAgICBtX2JpcXVhZC5z
ZXROb3RjaFBhcmFtcyhrLCBub3JtYWxpemVkRnJlcXVlbmN5LCBxW2tdKTsKICAgICAgICAgICAg
IGJyZWFrOwogCiAgICAgICAgIGNhc2UgQmlxdWFkRmlsdGVyVHlwZTo6QWxscGFzczoKLSAgICAg
ICAgICAgIG1fYmlxdWFkLnNldEFsbHBhc3NQYXJhbXMobm9ybWFsaXplZEZyZXF1ZW5jeSwgdmFs
dWUyKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNldEFsbHBhc3NQYXJhbXMoaywgbm9ybWFsaXpl
ZEZyZXF1ZW5jeSwgcVtrXSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgIH0K
KworICAgIHVwZGF0ZVRhaWxUaW1lKG51bWJlck9mRnJhbWVzIC0gMSk7CiB9CiAKIHZvaWQgQmlx
dWFkRFNQS2VybmVsOjpwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZsb2F0KiBkZXN0aW5h
dGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKQEAgLTEyMyw3ICsxNTMsNyBAQCB2b2lkIEJp
cXVhZERTUEtlcm5lbDo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGlu
YXRpb24sIHNpemVfdCBmcgogICAgIC8vIEZJWE1FOiBhcyBhbiBvcHRpbWl6YXRpb24sIGltcGxl
bWVudCBhIHdheSB0aGF0IGEgQmlxdWFkIG9iamVjdCBjYW4gc2ltcGx5IGNvcHkgaXRzIGludGVy
bmFsIGZpbHRlciBjb2VmZmljaWVudHMgZnJvbSBhbm90aGVyIEJpcXVhZCBvYmplY3QuCiAgICAg
Ly8gVGhlbiByZS1mYWN0b3IgdGhpcyBjb2RlIHRvIG9ubHkgcnVuIGZvciB0aGUgZmlyc3QgQmlx
dWFkRFNQS2VybmVsIG9mIGVhY2ggQmlxdWFkUHJvY2Vzc29yLgogCi0gICAgdXBkYXRlQ29lZmZp
Y2llbnRzSWZOZWNlc3NhcnkodHJ1ZSwgZmFsc2UpOworICAgIHVwZGF0ZUNvZWZmaWNpZW50c0lm
TmVjZXNzYXJ5KGZyYW1lc1RvUHJvY2Vzcyk7CiAKICAgICBtX2JpcXVhZC5wcm9jZXNzKHNvdXJj
ZSwgZGVzdGluYXRpb24sIGZyYW1lc1RvUHJvY2Vzcyk7CiB9CkBAIC0xNDUsMjEgKzE3NSwxNCBA
QCB2b2lkIEJpcXVhZERTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoaW50IG5GcmVxdWVu
Y2llcywKICAgICAvLyBDb252ZXJ0IGZyb20gZnJlcXVlbmN5IGluIEh6IHRvIG5vcm1hbGl6ZWQg
ZnJlcXVlbmN5ICgwIC0+IDEpLAogICAgIC8vIHdpdGggMSBlcXVhbCB0byB0aGUgTnlxdWlzdCBm
cmVxdWVuY3kuCiAgICAgZm9yIChpbnQgayA9IDA7IGsgPCBuRnJlcXVlbmNpZXM7ICsraykKLSAg
ICAgICAgZnJlcXVlbmN5W2tdID0gbmFycm93UHJlY2lzaW9uVG9GbG9hdChmcmVxdWVuY3lIeltr
XSAvIG55cXVpc3QpOwotCi0gICAgLy8gV2Ugd2FudCB0byBnZXQgdGhlIGZpbmFsIHZhbHVlcyBv
ZiB0aGUgY29lZmZpY2llbnRzIGFuZCBjb21wdXRlCi0gICAgLy8gdGhlIHJlc3BvbnNlIGZyb20g
dGhhdCBpbnN0ZWFkIG9mIHNvbWUgaW50ZXJtZWRpYXRlIHNtb290aGVkCi0gICAgLy8gc2V0LiBG
b3JjZWZ1bGx5IHVwZGF0ZSB0aGUgY29lZmZpY2llbnRzIGV2ZW4gaWYgdGhleSBhcmUgbm90Ci0g
ICAgLy8gZGlydHkuCi0KLSAgICB1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2FyeShmYWxzZSwg
dHJ1ZSk7CisgICAgICAgIGZyZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsK
IAogICAgIG1fYmlxdWFkLmdldEZyZXF1ZW5jeVJlc3BvbnNlKG5GcmVxdWVuY2llcywgZnJlcXVl
bmN5LmRhdGEoKSwgbWFnUmVzcG9uc2UsIHBoYXNlUmVzcG9uc2UpOwogfQogCiBkb3VibGUgQmlx
dWFkRFNQS2VybmVsOjp0YWlsVGltZSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIE1heEJpcXVhZERl
bGF5VGltZTsKKyAgICByZXR1cm4gbV90YWlsVGltZTsKIH0KIAogZG91YmxlIEJpcXVhZERTUEtl
cm5lbDo6bGF0ZW5jeVRpbWUoKSBjb25zdApAQCAtMTY3LDYgKzE5MCwyMSBAQCBkb3VibGUgQmlx
dWFkRFNQS2VybmVsOjpsYXRlbmN5VGltZSgpIGNvbnN0CiAgICAgcmV0dXJuIDA7CiB9CiAKK3Zv
aWQgQmlxdWFkRFNQS2VybmVsOjp1cGRhdGVUYWlsVGltZShzaXplX3QgY29lZkluZGV4KQorewor
ICAgIC8vIEEgcmVhc29uYWJsZSB1cHBlciBsaW1pdCBmb3IgdGhlIHRhaWwgdGltZS4gV2hpbGUg
aXQncyBlYXN5IHRvCisgICAgLy8gY3JlYXRlIGJpcXVhZCBmaWx0ZXJzIHdob3NlIHRhaWwgdGlt
ZSBjYW4gYmUgbXVjaCBsYXJnZXIgdGhhbgorICAgIC8vIHRoaXMsIGxpbWl0IHRoZSBtYXhpbXVt
IHRvIHRoaXMgdmFsdWUgc28gdGhhdCB3ZSBkb24ndCBrZWVwIHN1Y2gKKyAgICAvLyBub2RlcyBh
bGl2ZSAiZm9yZXZlciIuCisgICAgLy8gVE9ETzogV2hhdCBpcyBhIHJlYXNvbmFibGUgdXBwZXIg
bGltaXQ/CisgICAgY29uc3RleHByIGRvdWJsZSBtYXhUYWlsVGltZSA9IDMwOworCisgICAgZG91
YmxlIHNhbXBsZVJhdGUgPSB0aGlzLT5zYW1wbGVSYXRlKCk7CisgICAgZG91YmxlIHRhaWwgPSBt
X2JpcXVhZC50YWlsRnJhbWUoY29lZkluZGV4LCBtYXhUYWlsVGltZSAqIHNhbXBsZVJhdGUpIC8g
c2FtcGxlUmF0ZTsKKworICAgIG1fdGFpbFRpbWUgPSBzdGQ6OmNsYW1wKHRhaWwsIDAuMCwgbWF4
VGFpbFRpbWUpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9CaXF1YWREU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlx
dWFkRFNQS2VybmVsLmgKaW5kZXggN2FlMTYxYTE2MmMzM2NhMjIwZmU2Y2UyMTU3ZGJkMTVhODc0
MzI5Ni4uMDNjMThkOGM4YTgyMGZiZWQ5ZDJhNzUzYTcxODVlZTYyODM3NzFjNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZERTUEtlcm5lbC5oCkBAIC01
NSw2ICs1NSw4IEBAIHB1YmxpYzoKICAgICBkb3VibGUgdGFpbFRpbWUoKSBjb25zdCBvdmVycmlk
ZTsKICAgICBkb3VibGUgbGF0ZW5jeVRpbWUoKSBjb25zdCBvdmVycmlkZTsKIAorICAgIHZvaWQg
dXBkYXRlQ29lZmZpY2llbnRzKHNpemVfdCBudW1iZXJPZkZyYW1lcywgY29uc3QgZmxvYXQqIGN1
dG9mZkZyZXF1ZW5jeSwgY29uc3QgZmxvYXQqIHEsIGNvbnN0IGZsb2F0KiBnYWluLCBjb25zdCBm
bG9hdCogZGV0dW5lKTsKKwogcHJpdmF0ZToKICAgICBCaXF1YWQgbV9iaXF1YWQ7CiAgICAgQmlx
dWFkUHJvY2Vzc29yKiBiaXF1YWRQcm9jZXNzb3IoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxCaXF1
YWRQcm9jZXNzb3IqPihwcm9jZXNzb3IoKSk7IH0KQEAgLTY2LDcgKzY4LDEwIEBAIHByaXZhdGU6
CiAgICAgLy8gdXNlZC4gSWYgfGZvcmNlVXBkYXRlfCBpcyB0cnVlLCB3ZSB1cGRhdGUgdGhlIGNv
ZWZmaWNpZW50cyBldmVuCiAgICAgLy8gaWYgdGhleSBhcmUgbm90IGRpcnR5LiAoVXNlZCB3aGVu
IGNvbXB1dGluZyB0aGUgZnJlcXVlbmN5CiAgICAgLy8gcmVzcG9uc2UuKQotICAgIHZvaWQgdXBk
YXRlQ29lZmZpY2llbnRzSWZOZWNlc3NhcnkoYm9vbCB1c2VTbW9vdGhpbmcsIGJvb2wgZm9yY2VV
cGRhdGUpOworICAgIHZvaWQgdXBkYXRlQ29lZmZpY2llbnRzSWZOZWNlc3Nhcnkoc2l6ZV90IGZy
YW1lc1RvUHJvY2Vzcyk7CisgICAgdm9pZCB1cGRhdGVUYWlsVGltZShzaXplX3QgY29lZkluZGV4
KTsKKworICAgIGRvdWJsZSBtX3RhaWxUaW1lIHsgc3RkOjpudW1lcmljX2xpbWl0czxkb3VibGU+
OjppbmZpbml0eSgpIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5jcHAKaW5kZXgg
ZGM5ZGEwN2YzNTVmMDYzZGNiODYyNWMwYTU0MTIzMjA5ZGU0ODExYi4uY2I4NTMxZTc1MzRlNWU5
NmUyNWJmMzU4ZTdkMTVlNWJlMDFkYTA0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29yLmNwcApAQCAtNjgsNiArNjgsMTEgQEAgdm9p
ZCBCaXF1YWRQcm9jZXNzb3I6OmNoZWNrRm9yRGlydHlDb2VmZmljaWVudHMoKQogICAgIGlmICht
X3BhcmFtZXRlcjEtPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkgfHwgbV9wYXJhbWV0ZXIyLT5o
YXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpIHx8IG1fcGFyYW1ldGVyMy0+aGFzU2FtcGxlQWNjdXJh
dGVWYWx1ZXMoKSB8fCBtX3BhcmFtZXRlcjQtPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkpIHsK
ICAgICAgICAgbV9maWx0ZXJDb2VmZmljaWVudHNEaXJ0eSA9IHRydWU7CiAgICAgICAgIG1faGFz
U2FtcGxlQWNjdXJhdGVWYWx1ZXMgPSB0cnVlOworCisgICAgICAgIG1fc2hvdWxkVXNlQVJhdGUg
PSBtX3BhcmFtZXRlcjEtPmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRl
CisgICAgICAgICAgICB8fCBtX3BhcmFtZXRlcjItPmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21h
dGlvblJhdGU6OkFSYXRlCisgICAgICAgICAgICB8fCBtX3BhcmFtZXRlcjMtPmF1dG9tYXRpb25S
YXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCisgICAgICAgICAgICB8fCBtX3BhcmFtZXRl
cjQtPmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlOwogICAgIH0gZWxz
ZSB7CiAgICAgICAgIGlmIChtX2hhc0p1c3RSZXNldCkgewogICAgICAgICAgICAgLy8gU25hcCB0
byBleGFjdCB2YWx1ZXMgZmlyc3QgdGltZSBhZnRlciByZXNldCwgdGhlbiBzbW9vdGggZm9yIHN1
YnNlcXVlbnQgY2hhbmdlcy4KQEAgLTExOSw2ICsxMjQsMTQgQEAgdm9pZCBCaXF1YWRQcm9jZXNz
b3I6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKGludCBuRnJlcXVlbmNpZXMsIGNvbnN0IGZsb2F0KiBm
cmVxdWUKICAgICAKICAgICBhdXRvIHJlc3BvbnNlS2VybmVsID0gbWFrZVVuaXF1ZTxCaXF1YWRE
U1BLZXJuZWw+KHRoaXMpOwogCisgICAgLy8gR2V0IGEgY29weSBvZiB0aGUgY3VycmVudCBiaXF1
YWQgZmlsdGVyIGNvZWZmaWNpZW50cyBzbyB3ZSBjYW4gdXBkYXRlCisgICAgLy8gfHJlc3BvbnNl
X2tlcm5lbHwgd2l0aCB0aGVzZSB2YWx1ZXMuCisgICAgZmxvYXQgY3V0b2ZmRnJlcXVlbmN5ID0g
cGFyYW1ldGVyMSgpLnZhbHVlKCk7CisgICAgZmxvYXQgcSA9IHBhcmFtZXRlcjIoKS52YWx1ZSgp
OworICAgIGZsb2F0IGdhaW4gPSBwYXJhbWV0ZXIzKCkudmFsdWUoKTsKKyAgICBmbG9hdCBkZXR1
bmUgPSBwYXJhbWV0ZXI0KCkudmFsdWUoKTsKKworICAgIHJlc3BvbnNlS2VybmVsLT51cGRhdGVD
b2VmZmljaWVudHMoMSwgJmN1dG9mZkZyZXF1ZW5jeSwgJnEsICZnYWluLCAmZGV0dW5lKTsKICAg
ICByZXNwb25zZUtlcm5lbC0+Z2V0RnJlcXVlbmN5UmVzcG9uc2UobkZyZXF1ZW5jaWVzLCBmcmVx
dWVuY3lIeiwgbWFnUmVzcG9uc2UsIHBoYXNlUmVzcG9uc2UpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuaAppbmRleCBkYWNjYzI1
NTgxY2U0N2NjODgxOTRiOGQyZDJkYzEzNmU3ZjRmODZiLi44NDk3YWM0NTA1Zjc2NzIyZmM1YmJk
NTU1OGVlNDgwMjZlZDQ4ZDViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vQmlxdWFkUHJvY2Vzc29yLmgKQEAgLTY4LDYgKzY4LDggQEAgcHVibGljOgogICAgIEJp
cXVhZEZpbHRlclR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQogICAgIHZvaWQg
c2V0VHlwZShCaXF1YWRGaWx0ZXJUeXBlKTsKIAorICAgIGJvb2wgc2hvdWxkVXNlQVJhdGUoKSBj
b25zdCB7IHJldHVybiBtX3Nob3VsZFVzZUFSYXRlOyB9CisKIHByaXZhdGU6CiAgICAgQmlxdWFk
RmlsdGVyVHlwZSBtX3R5cGU7CiAKQEAgLTgxLDYgKzgzLDggQEAgcHJpdmF0ZToKIAogICAgIC8v
IFNldCB0byB0cnVlIGlmIGFueSBvZiB0aGUgZmlsdGVyIHBhcmFtZXRlcnMgYXJlIHNhbXBsZS1h
Y2N1cmF0ZS4KICAgICBib29sIG1faGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXM7CisKKyAgICBib29s
IG1fc2hvdWxkVXNlQVJhdGUgeyB0cnVlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmNwcAppbmRleCAxNjg2YjU2YTc2
NDc1YTdkNjMwNWJiOTA4MDFmZWRlYTk0MmE5NTRiLi5iNzZiZjFmMWI0MmUyZGU2MjM3YzdkNWQ3
ZTg0Nzk3ZWZjMjg0Y2ZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRp
by9CaXF1YWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5j
cHAKQEAgLTQ1LDYgKzQ1LDggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjb25zdCBzaXpl
X3QgQmlxdWFkOjpNYXhGcmFtZXNUb1Byb2Nlc3MgPSAxMjg7CisKICNpZiBVU0UoQUNDRUxFUkFU
RSkKIGNvbnN0IGludCBrQnVmZmVyU2l6ZSA9IDEwMjQ7CiAjZW5kaWYKQEAgLTU3LDggKzU5LDE2
IEBAIEJpcXVhZDo6QmlxdWFkKCkKICAgICBtX291dHB1dEJ1ZmZlci5hbGxvY2F0ZShrQnVmZmVy
U2l6ZSArIDIpOwogI2VuZGlmCiAKKyAgICAvLyBBbGxvY2F0ZSBlbm91Z2ggc3BhY2UgZm9yIHRo
ZSBhLXJhdGUgZmlsdGVyIGNvZWZmaWNpZW50cyB0byBoYW5kbGUgYQorICAgIC8vIHJlbmRlcmlu
ZyBxdWFudHVtIG9mIDEyOCBmcmFtZXMuCisgICAgbV9iMC5hbGxvY2F0ZShNYXhGcmFtZXNUb1By
b2Nlc3MpOworICAgIG1fYjEuYWxsb2NhdGUoTWF4RnJhbWVzVG9Qcm9jZXNzKTsKKyAgICBtX2Iy
LmFsbG9jYXRlKE1heEZyYW1lc1RvUHJvY2Vzcyk7CisgICAgbV9hMS5hbGxvY2F0ZShNYXhGcmFt
ZXNUb1Byb2Nlc3MpOworICAgIG1fYTIuYWxsb2NhdGUoTWF4RnJhbWVzVG9Qcm9jZXNzKTsKKwog
ICAgIC8vIEluaXRpYWxpemUgYXMgcGFzcy10aHJ1IChzdHJhaWdodC13aXJlLCBubyBmaWx0ZXIg
ZWZmZWN0KQotICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwgMSwgMCwgMCk7
CisgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygwLCAxLCAwLCAwLCAxLCAwLCAwKTsKIAog
ICAgIHJlc2V0KCk7IC8vIGNsZWFyIGZpbHRlciBtZW1vcnkKIH0KQEAgLTY3LDUzICs3NywxMTQg
QEAgQmlxdWFkOjp+QmlxdWFkKCkgPSBkZWZhdWx0OwogCiB2b2lkIEJpcXVhZDo6cHJvY2Vzcyhj
b25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNz
KQogewotI2lmIFVTRShBQ0NFTEVSQVRFKQotICAgIC8vIFVzZSB2ZWNMaWIgaWYgYXZhaWxhYmxl
Ci0gICAgcHJvY2Vzc0Zhc3Qoc291cmNlUCwgZGVzdFAsIGZyYW1lc1RvUHJvY2Vzcyk7Ci0KLSNl
bHNlCisgICAgaWYgKGhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkpIHsKKyAgICAgICAgaW50IG4g
PSBmcmFtZXNUb1Byb2Nlc3M7CisKKyAgICAgICAgLy8gQ3JlYXRlIGxvY2FsIGNvcGllcyBvZiBt
ZW1iZXIgdmFyaWFibGVzCisgICAgICAgIGRvdWJsZSB4MSA9IG1feDE7CisgICAgICAgIGRvdWJs
ZSB4MiA9IG1feDI7CisgICAgICAgIGRvdWJsZSB5MSA9IG1feTE7CisgICAgICAgIGRvdWJsZSB5
MiA9IG1feTI7CisKKyAgICAgICAgY29uc3QgZG91YmxlKiBiMCA9IG1fYjAuZGF0YSgpOworICAg
ICAgICBjb25zdCBkb3VibGUqIGIxID0gbV9iMS5kYXRhKCk7CisgICAgICAgIGNvbnN0IGRvdWJs
ZSogYjIgPSBtX2IyLmRhdGEoKTsKKyAgICAgICAgY29uc3QgZG91YmxlKiBhMSA9IG1fYTEuZGF0
YSgpOworICAgICAgICBjb25zdCBkb3VibGUqIGEyID0gbV9hMi5kYXRhKCk7CisKKyAgICAgICAg
Zm9yIChpbnQgayA9IDA7IGsgPCBuOyArK2spIHsKKyAgICAgICAgICAgIC8vIEZJWE1FOiB0aGlz
IGNhbiBiZSBvcHRpbWl6ZWQgYnkgcGlwZWxpbmluZyB0aGUgbXVsdGlwbHkgYWRkcy4uLgorICAg
ICAgICAgICAgZmxvYXQgeCA9ICpzb3VyY2VQKys7CisgICAgICAgICAgICBmbG9hdCB5ID0gYjBb
a10gKiB4ICsgYjFba10gKiB4MSArIGIyW2tdICogeDIgLSBhMVtrXSAqIHkxIC0gYTJba10gKiB5
MjsKKworICAgICAgICAgICAgKmRlc3RQKysgPSB5OworCisgICAgICAgICAgICAvLyBVcGRhdGUg
c3RhdGUgdmFyaWFibGVzCisgICAgICAgICAgICB4MiA9IHgxOworICAgICAgICAgICAgeDEgPSB4
OworICAgICAgICAgICAgeTIgPSB5MTsKKyAgICAgICAgICAgIHkxID0geTsKKyAgICAgICAgfQog
Ci0gICAgaW50IG4gPSBmcmFtZXNUb1Byb2Nlc3M7CisgICAgICAgIC8vIExvY2FsIHZhcmlhYmxl
cyBiYWNrIHRvIG1lbWJlci4gRmx1c2ggZGVub3JtYWxzIGhlcmUgc28gd2UKKyAgICAgICAgLy8g
ZG9uJ3Qgc2xvdyBkb3duIHRoZSBpbm5lciBsb29wIGFib3ZlLgorICAgICAgICBtX3gxID0gRGVu
b3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHgxKTsKKyAgICAgICAgbV94
MiA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxGbG9hdFRvWmVybyh4Mik7CisgICAg
ICAgIG1feTEgPSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRUb1plcm8oeTEp
OworICAgICAgICBtX3kyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9a
ZXJvKHkyKTsKKworICAgICAgICAvLyBUaGVyZSBpcyBhbiBhc3N1bXB0aW9uIGhlcmUgdGhhdCBv
bmNlIHdlIGhhdmUgc2FtcGxlIGFjY3VyYXRlIHZhbHVlcyB3ZQorICAgICAgICAvLyBjYW4gbmV2
ZXIgZ28gYmFjayB0byBub3QgaGF2aW5nIHNhbXBsZSBhY2N1cmF0ZSB2YWx1ZXMuIFRoaXMgaXMK
KyAgICAgICAgLy8gY3VycmVudGx5IHRydWUgaW4gdGhlIHdheSBBdWRpb1BhcmFtVGltbGluZSBp
cyBpbXBsZW1lbnRlZDogb25jZSBhbgorICAgICAgICAvLyBldmVudCBpcyBpbnNlcnRlZCwgc2Ft
cGxlIGFjY3VyYXRlIHByb2Nlc3NpbmcgaXMgYWx3YXlzIGVuYWJsZWQuCisgICAgICAgIC8vCisg
ICAgICAgIC8vIElmIHNvLCB0aGVuIHdlIG5ldmVyIGhhdmUgdG8gdXBkYXRlIHRoZSBzdGF0ZSB2
YXJpYWJsZXMgZm9yIHRoZSBNQUNPU1gKKyAgICAgICAgLy8gcGF0aC4gVGhlIHN0cnVjdHVyZSBv
ZiB0aGUgc3RhdGUgdmFyaWFibGUgaW4gdGhlc2UgY2FzZXMgYXJlbid0IHdlbGwKKyAgICAgICAg
Ly8gZG9jdW1lbnRlZCBzbyBpdCdzIG5vdCBjbGVhciBob3cgdG8gdXBkYXRlIHRoZW0gYW55d2F5
LgogCi0gICAgLy8gQ3JlYXRlIGxvY2FsIGNvcGllcyBvZiBtZW1iZXIgdmFyaWFibGVzCi0gICAg
ZG91YmxlIHgxID0gbV94MTsKLSAgICBkb3VibGUgeDIgPSBtX3gyOwotICAgIGRvdWJsZSB5MSA9
IG1feTE7Ci0gICAgZG91YmxlIHkyID0gbV95MjsKLQotICAgIGRvdWJsZSBiMCA9IG1fYjA7Ci0g
ICAgZG91YmxlIGIxID0gbV9iMTsKLSAgICBkb3VibGUgYjIgPSBtX2IyOwotICAgIGRvdWJsZSBh
MSA9IG1fYTE7Ci0gICAgZG91YmxlIGEyID0gbV9hMjsKLQotICAgIHdoaWxlIChuLS0pIHsKLSAg
ICAgICAgLy8gRklYTUU6IHRoaXMgY2FuIGJlIG9wdGltaXplZCBieSBwaXBlbGluaW5nIHRoZSBt
dWx0aXBseSBhZGRzLi4uCi0gICAgICAgIGZsb2F0IHggPSAqc291cmNlUCsrOwotICAgICAgICBm
bG9hdCB5ID0gYjAqeCArIGIxKngxICsgYjIqeDIgLSBhMSp5MSAtIGEyKnkyOwotCi0gICAgICAg
ICpkZXN0UCsrID0geTsKLQotICAgICAgICAvLyBVcGRhdGUgc3RhdGUgdmFyaWFibGVzCi0gICAg
ICAgIHgyID0geDE7Ci0gICAgICAgIHgxID0geDsKLSAgICAgICAgeTIgPSB5MTsKLSAgICAgICAg
eTEgPSB5OwotICAgIH0KKyAgICB9IGVsc2UgeworI2lmIFVTRShBQ0NFTEVSQVRFKQorICAgICAg
ICBkb3VibGUqIGlucHV0UCA9IG1faW5wdXRCdWZmZXIuZGF0YSgpOworICAgICAgICBkb3VibGUq
IG91dHB1dFAgPSBtX291dHB1dEJ1ZmZlci5kYXRhKCk7CisKKyAgICAgICAgLy8gU2V0IHVwIGZp
bHRlciBzdGF0ZS4gVGhpcyBpcyBuZWVkZWQgaW4gY2FzZSB3ZSdyZSBzd2l0Y2hpbmcgZnJvbQor
ICAgICAgICAvLyBmaWx0ZXJpbmcgd2l0aCB2YXJpYWJsZSBjb2VmZmljaWVudHMgKGkuZS4sIHdp
dGggYXV0b21hdGlvbnMpIHRvCisgICAgICAgIC8vIGZpeGVkIGNvZWZmaWNpZW50cyAod2l0aG91
dCBhdXRvbWF0aW9ucykuCisgICAgICAgIGlucHV0UFswXSA9IG1feDI7CisgICAgICAgIGlucHV0
UFsxXSA9IG1feDE7CisgICAgICAgIG91dHB1dFBbMF0gPSBtX3kyOworICAgICAgICBvdXRwdXRQ
WzFdID0gbV95MTsKKworICAgICAgICAvLyBVc2UgdmVjTGliIGlmIGF2YWlsYWJsZQorICAgICAg
ICBwcm9jZXNzRmFzdChzb3VyY2VQLCBkZXN0UCwgZnJhbWVzVG9Qcm9jZXNzKTsKKworICAgICAg
ICAvLyBDb3B5IHRoZSBsYXN0IGlucHV0cyBhbmQgb3V0cHV0cyB0byB0aGUgZmlsdGVyIG1lbW9y
eSB2YXJpYWJsZXMuCisgICAgICAgIC8vIFRoaXMgaXMgbmVlZGVkIGJlY2F1c2UgdGhlIG5leHQg
cmVuZGVyaW5nIHF1YW50dW0gbWlnaHQgYmUgYW4KKyAgICAgICAgLy8gYXV0b21hdGlvbiB3aGlj
aCBuZWVkcyB0aGUgaGlzdG9yeSB0byBjb250aW51ZSBjb3JyZWN0bHkuIEJlY2F1c2UKKyAgICAg
ICAgLy8gc291cmNlUCBhbmQgZGVzdFAgY2FuIGJlIHRoZSBzYW1lIGJsb2NrIG9mIG1lbW9yeSwg
d2UgY2FuJ3QgcmVhZCBmcm9tCisgICAgICAgIC8vIHNvdXJjZVAgdG8gZ2V0IHRoZSBsYXN0IGlu
cHV0cy4gRm9ydHVuYXRlbHksIHByb2Nlc3NGYXN0IGhhcyBwdXQgdGhlCisgICAgICAgIC8vIGxh
c3QgaW5wdXRzIGluIGlucHV0WzBdIGFuZCBpbnB1dFsxXS4KKyAgICAgICAgbV94MSA9IGlucHV0
UFsxXTsKKyAgICAgICAgbV94MiA9IGlucHV0UFswXTsKKyAgICAgICAgbV95MSA9IGRlc3RQW2Zy
YW1lc1RvUHJvY2VzcyAtIDFdOworICAgICAgICBtX3kyID0gZGVzdFBbZnJhbWVzVG9Qcm9jZXNz
IC0gMl07CisjZWxzZQorICAgICAgICBpbnQgbiA9IGZyYW1lc1RvUHJvY2VzczsKKworICAgICAg
ICAvLyBDcmVhdGUgbG9jYWwgY29waWVzIG9mIG1lbWJlciB2YXJpYWJsZXMKKyAgICAgICAgZG91
YmxlIHgxID0gbV94MTsKKyAgICAgICAgZG91YmxlIHgyID0gbV94MjsKKyAgICAgICAgZG91Ymxl
IHkxID0gbV95MTsKKyAgICAgICAgZG91YmxlIHkyID0gbV95MjsKKworICAgICAgICBkb3VibGUg
YjAgPSBtX2IwWzBdOworICAgICAgICBkb3VibGUgYjEgPSBtX2IxWzBdOworICAgICAgICBkb3Vi
bGUgYjIgPSBtX2IyWzBdOworICAgICAgICBkb3VibGUgYTEgPSBtX2ExWzBdOworICAgICAgICBk
b3VibGUgYTIgPSBtX2EyWzBdOworCisgICAgICAgIHdoaWxlIChuLS0pIHsKKyAgICAgICAgICAg
IC8vIEZJWE1FOiB0aGlzIGNhbiBiZSBvcHRpbWl6ZWQgYnkgcGlwZWxpbmluZyB0aGUgbXVsdGlw
bHkgYWRkcy4uLgorICAgICAgICAgICAgZmxvYXQgeCA9ICpzb3VyY2VQKys7CisgICAgICAgICAg
ICBmbG9hdCB5ID0gYjAgKiB4ICsgYjEgKiB4MSArIGIyICogeDIgLSBhMSAqIHkxIC0gYTIgKiB5
MjsKKworICAgICAgICAgICAgKmRlc3RQKysgPSB5OworCisgICAgICAgICAgICAvLyBVcGRhdGUg
c3RhdGUgdmFyaWFibGVzCisgICAgICAgICAgICB4MiA9IHgxOworICAgICAgICAgICAgeDEgPSB4
OworICAgICAgICAgICAgeTIgPSB5MTsKKyAgICAgICAgICAgIHkxID0geTsKKyAgICAgICAgfQog
Ci0gICAgLy8gTG9jYWwgdmFyaWFibGVzIGJhY2sgdG8gbWVtYmVyLiBGbHVzaCBkZW5vcm1hbHMg
aGVyZSBzbyB3ZQotICAgIC8vIGRvbid0IHNsb3cgZG93biB0aGUgaW5uZXIgbG9vcCBhYm92ZS4K
LSAgICBtX3gxID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHgx
KTsKLSAgICBtX3gyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJv
KHgyKTsKLSAgICBtX3kxID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9a
ZXJvKHkxKTsKLSAgICBtX3kyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0
VG9aZXJvKHkyKTsKLQotICAgIG1fYjAgPSBiMDsKLSAgICBtX2IxID0gYjE7Ci0gICAgbV9iMiA9
IGIyOwotICAgIG1fYTEgPSBhMTsKLSAgICBtX2EyID0gYTI7CisgICAgICAgIC8vIExvY2FsIHZh
cmlhYmxlcyBiYWNrIHRvIG1lbWJlci4gRmx1c2ggZGVub3JtYWxzIGhlcmUgc28gd2UKKyAgICAg
ICAgLy8gZG9uJ3Qgc2xvdyBkb3duIHRoZSBpbm5lciBsb29wIGFib3ZlLgorICAgICAgICB4MV8g
PSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRUb1plcm8oeDEpOworICAgICAg
ICB4Ml8gPSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRUb1plcm8oeDIpOwor
ICAgICAgICB5MV8gPSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRUb1plcm8o
eTEpOworICAgICAgICB5Ml8gPSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRU
b1plcm8oeTIpOwogI2VuZGlmCisgICAgfQogfQogCiAjaWYgVVNFKEFDQ0VMRVJBVEUpCkBAIC0x
MjMsMTEgKzE5NCwxMSBAQCB2b2lkIEJpcXVhZDo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNl
UCwgZmxvYXQqIGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQogdm9pZCBCaXF1YWQ6OnBy
b2Nlc3NGYXN0KGNvbnN0IGZsb2F0KiBzb3VyY2VQLCBmbG9hdCogZGVzdFAsIHNpemVfdCBmcmFt
ZXNUb1Byb2Nlc3MpCiB7CiAgICAgZG91YmxlIGZpbHRlckNvZWZmaWNpZW50c1s1XTsKLSAgICBm
aWx0ZXJDb2VmZmljaWVudHNbMF0gPSBtX2IwOwotICAgIGZpbHRlckNvZWZmaWNpZW50c1sxXSA9
IG1fYjE7Ci0gICAgZmlsdGVyQ29lZmZpY2llbnRzWzJdID0gbV9iMjsKLSAgICBmaWx0ZXJDb2Vm
ZmljaWVudHNbM10gPSBtX2ExOwotICAgIGZpbHRlckNvZWZmaWNpZW50c1s0XSA9IG1fYTI7Cisg
ICAgZmlsdGVyQ29lZmZpY2llbnRzWzBdID0gbV9iMFswXTsKKyAgICBmaWx0ZXJDb2VmZmljaWVu
dHNbMV0gPSBtX2IxWzBdOworICAgIGZpbHRlckNvZWZmaWNpZW50c1syXSA9IG1fYjJbMF07Cisg
ICAgZmlsdGVyQ29lZmZpY2llbnRzWzNdID0gbV9hMVswXTsKKyAgICBmaWx0ZXJDb2VmZmljaWVu
dHNbNF0gPSBtX2EyWzBdOwogCiAgICAgZG91YmxlKiBpbnB1dFAgPSBtX2lucHV0QnVmZmVyLmRh
dGEoKTsKICAgICBkb3VibGUqIG91dHB1dFAgPSBtX291dHB1dEJ1ZmZlci5kYXRhKCk7CkBAIC0x
NjEsNyArMjMyLDcgQEAgdm9pZCBCaXF1YWQ6OnByb2Nlc3NTbGljZUZhc3QoZG91YmxlKiBzb3Vy
Y2VQLCBkb3VibGUqIGRlc3RQLCBkb3VibGUqIGNvZWZmaWNpZW4KICAgICAvLyBVc2UgZG91Ymxl
LXByZWNpc2lvbiBmb3IgZmlsdGVyIHN0YWJpbGl0eQogICAgIHZEU1BfZGVxMjJEKHNvdXJjZVAs
IDEsIGNvZWZmaWNpZW50c1AsIGRlc3RQLCAxLCBmcmFtZXNUb1Byb2Nlc3MpOwogCi0gICAgLy8g
U2F2ZSBoaXN0b3J5LiAgTm90ZSB0aGF0IHNvdXJjZVAgYW5kIGRlc3RQIHJlZmVyZW5jZSBtX2lu
cHV0QnVmZmVyIGFuZCBtX291dHB1dEJ1ZmZlciByZXNwZWN0aXZlbHkuCisgICAgLy8gU2F2ZSBo
aXN0b3J5LiBOb3RlIHRoYXQgc291cmNlUCBhbmQgZGVzdFAgcmVmZXJlbmNlIG1faW5wdXRCdWZm
ZXIgYW5kIG1fb3V0cHV0QnVmZmVyIHJlc3BlY3RpdmVseS4KICAgICAvLyBUaGVzZSBidWZmZXJz
IGFyZSBhbGxvY2F0ZWQgKGluIHRoZSBjb25zdHJ1Y3Rvcikgd2l0aCBzcGFjZSBmb3IgdHdvIGV4
dHJhIHNhbXBsZXMgc28gaXQncyBPSyB0byBhY2Nlc3MKICAgICAvLyBhcnJheSB2YWx1ZXMgdHdv
IGJleW9uZCBmcmFtZXNUb1Byb2Nlc3MuCiAgICAgc291cmNlUFswXSA9IHNvdXJjZVBbZnJhbWVz
VG9Qcm9jZXNzIC0gMiArIDJdOwpAQCAtMTg0LDIxICsyNTUsMjAgQEAgdm9pZCBCaXF1YWQ6OnJl
c2V0KCkKICAgICBkb3VibGUqIG91dHB1dFAgPSBtX291dHB1dEJ1ZmZlci5kYXRhKCk7CiAgICAg
b3V0cHV0UFswXSA9IDA7CiAgICAgb3V0cHV0UFsxXSA9IDA7CisjZW5kaWYKIAotI2Vsc2UKICAg
ICBtX3gxID0gbV94MiA9IG1feTEgPSBtX3kyID0gMDsKLSNlbmRpZgorCiB9CiAKLXZvaWQgQmlx
dWFkOjpzZXRMb3dwYXNzUGFyYW1zKGRvdWJsZSBjdXRvZmYsIGRvdWJsZSByZXNvbmFuY2UpCit2
b2lkIEJpcXVhZDo6c2V0TG93cGFzc1BhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBjdXRvZmYs
IGRvdWJsZSByZXNvbmFuY2UpCiB7CiAgICAgLy8gTGltaXQgY3V0b2ZmIHRvIDAgdG8gMS4KICAg
ICBjdXRvZmYgPSBzdGQ6Om1heCgwLjAsIHN0ZDo6bWluKGN1dG9mZiwgMS4wKSk7CiAgICAgCiAg
ICAgaWYgKGN1dG9mZiA9PSAxKSB7CiAgICAgICAgIC8vIFdoZW4gY3V0b2ZmIGlzIDEsIHRoZSB6
LXRyYW5zZm9ybSBpcyAxLgotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDEsIDAs
IDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAg
IHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIDEsIDAsIDAsIDEsIDAsIDApOwogICAg
IH0gZWxzZSBpZiAoY3V0b2ZmID4gMCkgewogICAgICAgICAvLyBDb21wdXRlIGJpcXVhZCBjb2Vm
ZmljaWVudHMgZm9yIGxvd3Bhc3MgZmlsdGVyCiAgICAgICAgIHJlc29uYW5jZSA9IHN0ZDo6bWF4
KDAuMCwgcmVzb25hbmNlKTsgLy8gY2FuJ3QgZ28gbmVnYXRpdmUKQEAgLTIxNywyNCArMjg3LDIy
IEBAIHZvaWQgQmlxdWFkOjpzZXRMb3dwYXNzUGFyYW1zKGRvdWJsZSBjdXRvZmYsIGRvdWJsZSBy
ZXNvbmFuY2UpCiAgICAgICAgIGRvdWJsZSBhMSA9IC0yICogY29zdzsKICAgICAgICAgZG91Ymxl
IGEyID0gMSAtIGFscGhhOwogCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoYjAs
IGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMo
aW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8v
IFdoZW4gY3V0b2ZmIGlzIHplcm8sIG5vdGhpbmcgZ2V0cyB0aHJvdWdoIHRoZSBmaWx0ZXIsIHNv
IHNldAogICAgICAgICAvLyBjb2VmZmljaWVudHMgdXAgY29ycmVjdGx5LgotICAgICAgICBzZXRO
b3JtYWxpemVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5k
ZXgsIDAsIDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6OnNldEhpZ2hw
YXNzUGFyYW1zKGRvdWJsZSBjdXRvZmYsIGRvdWJsZSByZXNvbmFuY2UpCit2b2lkIEJpcXVhZDo6
c2V0SGlnaHBhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgY3V0b2ZmLCBkb3VibGUgcmVz
b25hbmNlKQogewogICAgIC8vIExpbWl0IGN1dG9mZiB0byAwIHRvIDEuCiAgICAgY3V0b2ZmID0g
c3RkOjptYXgoMC4wLCBzdGQ6Om1pbihjdXRvZmYsIDEuMCkpOwogCiAgICAgaWYgKGN1dG9mZiA9
PSAxKSB7CiAgICAgICAgIC8vIFRoZSB6LXRyYW5zZm9ybSBpcyAwLgotICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgs
IDAsIDAsIDAsIDEsIDAsIDApOwogICAgIH0gZWxzZSBpZiAoY3V0b2ZmID4gMCkgewogICAgICAg
ICAvLyBDb21wdXRlIGJpcXVhZCBjb2VmZmljaWVudHMgZm9yIGhpZ2hwYXNzIGZpbHRlcgogICAg
ICAgICByZXNvbmFuY2UgPSBzdGQ6Om1heCgwLjAsIHJlc29uYW5jZSk7IC8vIGNhbid0IGdvIG5l
Z2F0aXZlCkBAIC0yNTMsMjkgKzMyMSwyOCBAQCB2b2lkIEJpcXVhZDo6c2V0SGlnaHBhc3NQYXJh
bXMoZG91YmxlIGN1dG9mZiwgZG91YmxlIHJlc29uYW5jZSkKICAgICAgICAgZG91YmxlIGExID0g
LTIgKiBjb3N3OwogICAgICAgICBkb3VibGUgYTIgPSAxIC0gYWxwaGE7CiAKLSAgICAgICAgc2V0
Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAg
c2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7
CiAgICAgfSBlbHNlIHsKICAgICAgIC8vIFdoZW4gY3V0b2ZmIGlzIHplcm8sIHdlIG5lZWQgdG8g
YmUgY2FyZWZ1bCBiZWNhdXNlIHRoZSBhYm92ZQogICAgICAgLy8gZ2l2ZXMgYSBxdWFkcmF0aWMg
ZGl2aWRlZCBieSB0aGUgc2FtZSBxdWFkcmF0aWMsIHdpdGggcG9sZXMKICAgICAgIC8vIGFuZCB6
ZXJvcyBvbiB0aGUgdW5pdCBjaXJjbGUgaW4gdGhlIHNhbWUgcGxhY2UuIFdoZW4gY3V0b2ZmCiAg
ICAgICAvLyBpcyB6ZXJvLCB0aGUgei10cmFuc2Zvcm0gaXMgMS4KLSAgICAgICAgc2V0Tm9ybWFs
aXplZENvZWZmaWNpZW50cygxLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAx
LCAwLCAwLCAxLCAwLCAwKTsKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXROb3JtYWxpemVk
Q29lZmZpY2llbnRzKGRvdWJsZSBiMCwgZG91YmxlIGIxLCBkb3VibGUgYjIsIGRvdWJsZSBhMCwg
ZG91YmxlIGExLCBkb3VibGUgYTIpCit2b2lkIEJpcXVhZDo6c2V0Tm9ybWFsaXplZENvZWZmaWNp
ZW50cyhzaXplX3QgaW5kZXgsIGRvdWJsZSBiMCwgZG91YmxlIGIxLCBkb3VibGUgYjIsIGRvdWJs
ZSBhMCwgZG91YmxlIGExLCBkb3VibGUgYTIpCiB7CiAgICAgZG91YmxlIGEwSW52ZXJzZSA9IDEg
LyBhMDsKICAgICAKLSAgICBtX2IwID0gYjAgKiBhMEludmVyc2U7Ci0gICAgbV9iMSA9IGIxICog
YTBJbnZlcnNlOwotICAgIG1fYjIgPSBiMiAqIGEwSW52ZXJzZTsKLSAgICBtX2ExID0gYTEgKiBh
MEludmVyc2U7Ci0gICAgbV9hMiA9IGEyICogYTBJbnZlcnNlOworICAgIG1fYjBbaW5kZXhdID0g
YjAgKiBhMEludmVyc2U7CisgICAgbV9iMVtpbmRleF0gPSBiMSAqIGEwSW52ZXJzZTsKKyAgICBt
X2IyW2luZGV4XSA9IGIyICogYTBJbnZlcnNlOworICAgIG1fYTFbaW5kZXhdID0gYTEgKiBhMElu
dmVyc2U7CisgICAgbV9hMltpbmRleF0gPSBhMiAqIGEwSW52ZXJzZTsKIH0KIAotdm9pZCBCaXF1
YWQ6OnNldExvd1NoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBkYkdhaW4pCit2
b2lkIEJpcXVhZDo6c2V0TG93U2hlbGZQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVl
bmN5LCBkb3VibGUgZGJHYWluKQogewogICAgIC8vIENsaXAgZnJlcXVlbmNpZXMgdG8gYmV0d2Vl
biAwIGFuZCAxLCBpbmNsdXNpdmUuCiAgICAgZnJlcXVlbmN5ID0gc3RkOjptYXgoMC4wLCBzdGQ6
Om1pbihmcmVxdWVuY3ksIDEuMCkpOwpAQCAtMjg0LDggKzM1MSw3IEBAIHZvaWQgQmlxdWFkOjpz
ZXRMb3dTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKQogCiAgICAg
aWYgKGZyZXF1ZW5jeSA9PSAxKSB7CiAgICAgICAgIC8vIFRoZSB6LXRyYW5zZm9ybSBpcyBhIGNv
bnN0YW50IGdhaW4uCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoQSAqIEEsIDAs
IDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAg
IHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIEEgKiBBLCAwLCAwLCAxLCAwLCAwKTsK
ICAgICB9IGVsc2UgaWYgKGZyZXF1ZW5jeSA+IDApIHsKICAgICAgICAgZG91YmxlIHcwID0gcGlE
b3VibGUgKiBmcmVxdWVuY3k7CiAgICAgICAgIGRvdWJsZSBTID0gMTsgLy8gZmlsdGVyIHNsb3Bl
ICgxIGlzIG1heCB2YWx1ZSkKQEAgLTMwMiwxNSArMzY4LDE0IEBAIHZvaWQgQmlxdWFkOjpzZXRM
b3dTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKQogICAgICAgICBk
b3VibGUgYTEgPSAtMiAqIChhTWludXNPbmUgKyBhUGx1c09uZSAqIGspOwogICAgICAgICBkb3Vi
bGUgYTIgPSBhUGx1c09uZSArIGFNaW51c09uZSAqIGsgLSBrMjsKIAotICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOworICAgICAgICBzZXRO
b3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAg
ICB9IGVsc2UgewogICAgICAgICAvLyBXaGVuIGZyZXF1ZW5jeSBpcyAwLCB0aGUgei10cmFuc2Zv
cm0gaXMgMS4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygxLCAwLCAwLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9CiB9CiAK
LXZvaWQgQmlxdWFkOjpzZXRIaWdoU2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91Ymxl
IGRiR2FpbikKK3ZvaWQgQmlxdWFkOjpzZXRIaWdoU2hlbGZQYXJhbXMoc2l6ZV90IGluZGV4LCBk
b3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKQogewogICAgIC8vIENsaXAgZnJlcXVlbmNp
ZXMgdG8gYmV0d2VlbiAwIGFuZCAxLCBpbmNsdXNpdmUuCiAgICAgZnJlcXVlbmN5ID0gc3RkOjpt
YXgoMC4wLCBzdGQ6Om1pbihmcmVxdWVuY3ksIDEuMCkpOwpAQCAtMzE5LDggKzM4NCw3IEBAIHZv
aWQgQmlxdWFkOjpzZXRIaWdoU2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRi
R2FpbikKIAogICAgIGlmIChmcmVxdWVuY3kgPT0gMSkgewogICAgICAgICAvLyBUaGUgei10cmFu
c2Zvcm0gaXMgMS4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygxLCAwLCAwLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXRO
b3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9IGVs
c2UgaWYgKGZyZXF1ZW5jeSA+IDApIHsKICAgICAgICAgZG91YmxlIHcwID0gcGlEb3VibGUgKiBm
cmVxdWVuY3k7CiAgICAgICAgIGRvdWJsZSBTID0gMTsgLy8gZmlsdGVyIHNsb3BlICgxIGlzIG1h
eCB2YWx1ZSkKQEAgLTMzNywxNSArNDAxLDE0IEBAIHZvaWQgQmlxdWFkOjpzZXRIaWdoU2hlbGZQ
YXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKICAgICAgICAgZG91YmxlIGEx
ID0gMiAqIChhTWludXNPbmUgLSBhUGx1c09uZSAqIGspOwogICAgICAgICBkb3VibGUgYTIgPSBh
UGx1c09uZSAtIGFNaW51c09uZSAqIGsgLSBrMjsKIAotICAgICAgICBzZXROb3JtYWxpemVkQ29l
ZmZpY2llbnRzKGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOworICAgICAgICBzZXROb3JtYWxpemVk
Q29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICB9IGVsc2Ug
ewogICAgICAgICAvLyBXaGVuIGZyZXF1ZW5jeSA9IDAsIHRoZSBmaWx0ZXIgaXMganVzdCBhIGdh
aW4sIEFeMi4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhBICogQSwgMCwgMCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0
Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgQSAqIEEsIDAsIDAsIDEsIDAsIDApOwogICAg
IH0KIH0KIAotdm9pZCBCaXF1YWQ6OnNldFBlYWtpbmdQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwg
ZG91YmxlIFEsIGRvdWJsZSBkYkdhaW4pCit2b2lkIEJpcXVhZDo6c2V0UGVha2luZ1BhcmFtcyhz
aXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRLCBkb3VibGUgZGJHYWluKQog
ewogICAgIC8vIENsaXAgZnJlcXVlbmNpZXMgdG8gYmV0d2VlbiAwIGFuZCAxLCBpbmNsdXNpdmUu
CiAgICAgZnJlcXVlbmN5ID0gc3RkOjptYXgoMC4wLCBzdGQ6Om1pbihmcmVxdWVuY3ksIDEuMCkp
OwpAQCAtMzY4LDIyICs0MzEsMjAgQEAgdm9pZCBCaXF1YWQ6OnNldFBlYWtpbmdQYXJhbXMoZG91
YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEsIGRvdWJsZSBkYkdhaW4pCiAgICAgICAgICAgICBkb3Vi
bGUgYTEgPSAtMiAqIGs7CiAgICAgICAgICAgICBkb3VibGUgYTIgPSAxIC0gYWxwaGEgLyBBOwog
Ci0gICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGIwLCBiMSwgYjIsIGEwLCBh
MSwgYTIpOworICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgYjAs
IGIxLCBiMiwgYTAsIGExLCBhMik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvLyBX
aGVuIFEgPSAwLCB0aGUgYWJvdmUgZm9ybXVsYXMgaGF2ZSBwcm9ibGVtcy4gSWYgd2UgbG9vayBh
dAogICAgICAgICAgICAgLy8gdGhlIHotdHJhbnNmb3JtLCB3ZSBjYW4gc2VlIHRoYXQgdGhlIGxp
bWl0IGFzIFEtPjAgaXMgQV4yLCBzbwogICAgICAgICAgICAgLy8gc2V0IHRoZSBmaWx0ZXIgdGhh
dCB3YXkuCi0gICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKEEgKiBBLCAwLCAw
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAg
ICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIEEgKiBBLCAwLCAwLCAxLCAw
LCAwKTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7CiAgICAgICAgIC8vIFdoZW4gZnJlcXVlbmN5
IGlzIDAgb3IgMSwgdGhlIHotdHJhbnNmb3JtIGlzIDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAx
LCAwLCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwg
MCwgMSwgMCwgMCk7CiAgICAgfQogfQogCi12b2lkIEJpcXVhZDo6c2V0QWxscGFzc1BhcmFtcyhk
b3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSkKK3ZvaWQgQmlxdWFkOjpzZXRBbGxwYXNzUGFyYW1z
KHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCiB7CiAgICAgLy8gQ2xp
cCBmcmVxdWVuY2llcyB0byBiZXR3ZWVuIDAgYW5kIDEsIGluY2x1c2l2ZS4KICAgICBmcmVxdWVu
Y3kgPSBzdGQ6Om1heCgwLjAsIHN0ZDo6bWluKGZyZXF1ZW5jeSwgMS4wKSk7CkBAIC00MDQsMjIg
KzQ2NSwyMCBAQCB2b2lkIEJpcXVhZDo6c2V0QWxscGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5
LCBkb3VibGUgUSkKICAgICAgICAgICAgIGRvdWJsZSBhMSA9IC0yICogazsKICAgICAgICAgICAg
IGRvdWJsZSBhMiA9IDEgLSBhbHBoYTsKIAotICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZm
aWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAgICAgIHNldE5vcm1hbGl6
ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOwogICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgLy8gV2hlbiBRID0gMCwgdGhlIGFib3ZlIGZvcm11bGFzIGhh
dmUgcHJvYmxlbXMuIElmIHdlIGxvb2sgYXQKICAgICAgICAgICAgIC8vIHRoZSB6LXRyYW5zZm9y
bSwgd2UgY2FuIHNlZSB0aGF0IHRoZSBsaW1pdCBhcyBRLT4wIGlzIC0xLCBzbwogICAgICAgICAg
ICAgLy8gc2V0IHRoZSBmaWx0ZXIgdGhhdCB3YXkuCi0gICAgICAgICAgICBzZXROb3JtYWxpemVk
Q29lZmZpY2llbnRzKC0xLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAxLCAwLCAwKTsKKyAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5k
ZXgsIC0xLCAwLCAwLCAxLCAwLCAwKTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7CiAgICAgICAg
IC8vIFdoZW4gZnJlcXVlbmN5IGlzIDAgb3IgMSwgdGhlIHotdHJhbnNmb3JtIGlzIDEuCi0gICAg
ICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNp
ZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfQogfQogCi12b2lkIEJpcXVhZDo6
c2V0Tm90Y2hQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCit2b2lkIEJpcXVhZDo6
c2V0Tm90Y2hQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSkK
IHsKICAgICAvLyBDbGlwIGZyZXF1ZW5jaWVzIHRvIGJldHdlZW4gMCBhbmQgMSwgaW5jbHVzaXZl
LgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwgc3RkOjptaW4oZnJlcXVlbmN5LCAxLjAp
KTsKQEAgLTQ0MCwyMiArNDk5LDIwIEBAIHZvaWQgQmlxdWFkOjpzZXROb3RjaFBhcmFtcyhkb3Vi
bGUgZnJlcXVlbmN5LCBkb3VibGUgUSkKICAgICAgICAgICAgIGRvdWJsZSBhMSA9IC0yICogazsK
ICAgICAgICAgICAgIGRvdWJsZSBhMiA9IDEgLSBhbHBoYTsKIAotICAgICAgICAgICAgc2V0Tm9y
bWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAgICAg
IHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIp
OwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gV2hlbiBRID0gMCwgdGhlIGFib3Zl
IGZvcm11bGFzIGhhdmUgcHJvYmxlbXMuIElmIHdlIGxvb2sgYXQKICAgICAgICAgICAgIC8vIHRo
ZSB6LXRyYW5zZm9ybSwgd2UgY2FuIHNlZSB0aGF0IHRoZSBsaW1pdCBhcyBRLT4wIGlzIDAsIHNv
CiAgICAgICAgICAgICAvLyBzZXQgdGhlIGZpbHRlciB0aGF0IHdheS4KLSAgICAgICAgICAgIHNl
dE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMCwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZp
Y2llbnRzKGluZGV4LCAwLCAwLCAwLCAxLCAwLCAwKTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7
CiAgICAgICAgIC8vIFdoZW4gZnJlcXVlbmN5IGlzIDAgb3IgMSwgdGhlIHotdHJhbnNmb3JtIGlz
IDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXpl
ZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfQogfQogCi12b2lk
IEJpcXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCit2
b2lkIEJpcXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVl
bmN5LCBkb3VibGUgUSkKIHsKICAgICAvLyBObyBuZWdhdGl2ZSBmcmVxdWVuY2llcyBhbGxvd2Vk
LgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwgZnJlcXVlbmN5KTsKQEAgLTQ3NiwxMyAr
NTMzLDEyIEBAIHZvaWQgQmlxdWFkOjpzZXRCYW5kcGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5
LCBkb3VibGUgUSkKICAgICAgICAgICAgIGRvdWJsZSBhMSA9IC0yICogazsKICAgICAgICAgICAg
IGRvdWJsZSBhMiA9IDEgLSBhbHBoYTsKIAotICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZm
aWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAgICAgIHNldE5vcm1hbGl6
ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOwogICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgLy8gV2hlbiBRID0gMCwgdGhlIGFib3ZlIGZvcm11bGFzIGhh
dmUgcHJvYmxlbXMuIElmIHdlIGxvb2sgYXQKICAgICAgICAgICAgIC8vIHRoZSB6LXRyYW5zZm9y
bSwgd2UgY2FuIHNlZSB0aGF0IHRoZSBsaW1pdCBhcyBRLT4wIGlzIDEsIHNvCiAgICAgICAgICAg
ICAvLyBzZXQgdGhlIGZpbHRlciB0aGF0IHdheS4KLSAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMSwgMCwgMCk7CisgICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4
LCAxLCAwLCAwLCAxLCAwLCAwKTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7CiAgICAgICAgIC8v
IFdoZW4gdGhlIGN1dG9mZiBpcyB6ZXJvLCB0aGUgei10cmFuc2Zvcm0gYXBwcm9hY2hlcyAwLCBp
ZiBRCkBAIC00OTAsMzkgKzU0NiwxNyBAQCB2b2lkIEJpcXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMo
ZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCiAgICAgICAgIC8vIHByZXR0eSBtdWNoIHVuZGVm
aW5lZC4gV2hhdCBzaG91bGQgd2UgZG8gaW4gdGhpcyBjYXNlPwogICAgICAgICAvLyBGb3Igbm93
LCBqdXN0IG1ha2UgdGhlIGZpbHRlciAwLiBXaGVuIHRoZSBjdXRvZmYgaXMgMSwgdGhlCiAgICAg
ICAgIC8vIHotdHJhbnNmb3JtIGFsc28gYXBwcm9hY2hlcyAwLgotICAgICAgICBzZXROb3JtYWxp
emVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIDAs
IDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6OnNldFplcm9Qb2xlUGFp
cnMoc3RkOjpjb21wbGV4PGRvdWJsZT4gemVybywgc3RkOjpjb21wbGV4PGRvdWJsZT4gcG9sZSkK
LXsKLSAgICBkb3VibGUgYjAgPSAxOwotICAgIGRvdWJsZSBiMSA9IC0yICogemVyby5yZWFsKCk7
Ci0KLSAgICBkb3VibGUgemVyb01hZyA9IGFicyh6ZXJvKTsKLSAgICBkb3VibGUgYjIgPSB6ZXJv
TWFnICogemVyb01hZzsKLQotICAgIGRvdWJsZSBhMSA9IC0yICogcG9sZS5yZWFsKCk7Ci0KLSAg
ICBkb3VibGUgcG9sZU1hZyA9IGFicyhwb2xlKTsKLSAgICBkb3VibGUgYTIgPSBwb2xlTWFnICog
cG9sZU1hZzsKLSAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGIwLCBiMSwgYjIsIDEsIGEx
LCBhMik7Ci19Ci0KLXZvaWQgQmlxdWFkOjpzZXRBbGxwYXNzUG9sZShzdGQ6OmNvbXBsZXg8ZG91
YmxlPiBwb2xlKQotewotICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IHplcm8gPSBzdGQ6OmNvbXBs
ZXg8ZG91YmxlPigxLCAwKSAvIHBvbGU7Ci0gICAgc2V0WmVyb1BvbGVQYWlycyh6ZXJvLCBwb2xl
KTsKLX0KLQogdm9pZCBCaXF1YWQ6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKGludCBuRnJlcXVlbmNp
ZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmxvYXQqIGZyZXF1
ZW5jeSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdCogbWFnUmVzcG9u
c2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQqIHBoYXNlUmVzcG9u
c2UpCiB7CiAgICAgLy8gRXZhbHVhdGUgdGhlIFotdHJhbnNmb3JtIG9mIHRoZSBmaWx0ZXIgYXQg
Z2l2ZW4gbm9ybWFsaXplZAotICAgIC8vIGZyZXF1ZW5jeSBmcm9tIDAgdG8gMS4gICgxIGNvcnJl
c3BvbmRzIHRvIHRoZSBOeXF1aXN0CisgICAgLy8gZnJlcXVlbmN5IGZyb20gMCB0byAxLiAoMSBj
b3JyZXNwb25kcyB0byB0aGUgTnlxdWlzdAogICAgIC8vIGZyZXF1ZW5jeS4pCiAgICAgLy8KICAg
ICAvLyBUaGUgei10cmFuc2Zvcm0gb2YgdGhlIGZpbHRlciBpcwpAQCAtNTM4LDExICs1NzIsMTEg
QEAgdm9pZCBCaXF1YWQ6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKGludCBuRnJlcXVlbmNpZXMsCiAg
ICAgLy8gd2l0aCB6MSA9IDEveiBhbmQgeiA9IGV4cChqKnBpKmZyZXF1ZW5jeSkuIEhlbmNlIHox
ID0gZXhwKC1qKnBpKmZyZXF1ZW5jeSkKIAogICAgIC8vIE1ha2UgbG9jYWwgY29waWVzIG9mIHRo
ZSBjb2VmZmljaWVudHMgYXMgYSBtaWNyby1vcHRpbWl6YXRpb24uCi0gICAgZG91YmxlIGIwID0g
bV9iMDsKLSAgICBkb3VibGUgYjEgPSBtX2IxOwotICAgIGRvdWJsZSBiMiA9IG1fYjI7Ci0gICAg
ZG91YmxlIGExID0gbV9hMTsKLSAgICBkb3VibGUgYTIgPSBtX2EyOworICAgIGRvdWJsZSBiMCA9
IG1fYjBbMF07CisgICAgZG91YmxlIGIxID0gbV9iMVswXTsKKyAgICBkb3VibGUgYjIgPSBtX2Iy
WzBdOworICAgIGRvdWJsZSBhMSA9IG1fYTFbMF07CisgICAgZG91YmxlIGEyID0gbV9hMlswXTsK
ICAgICAKICAgICBmb3IgKGludCBrID0gMDsgayA8IG5GcmVxdWVuY2llczsgKytrKSB7CiAgICAg
ICAgIGRvdWJsZSBvbWVnYSA9IC1waURvdWJsZSAqIGZyZXF1ZW5jeVtrXTsKQEAgLTU1NSw2ICs1
ODksMzA0IEBAIHZvaWQgQmlxdWFkOjpnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5j
aWVzLAogICAgIH0KIH0KIAorc3RhdGljIGRvdWJsZSByZXBlYXRlZFJvb3RSZXNwb25zZShkb3Vi
bGUgbiwgZG91YmxlIGMxLCBkb3VibGUgYzIsIGRvdWJsZSByLCBkb3VibGUgbG9nRVBTKQorewor
ICAgIC8vIFRoZSByZXNwb25zZSBpcyBoKG4pID0gcl4obi0yKSpbYzEqKG4rMSkqcl4yK2MyXS4g
V2UncmUgbG9va2luZworICAgIC8vIGZvciBuIHN1Y2ggdGhhdCB8aChuKXwgPSBlcHMuIEVxdWl2
YWxlbnRseSwgd2Ugd2FudCBhIHJvb3QKKyAgICAvLyBvZiB0aGUgZXF1YXRpb24gbG9nKHxoKG4p
fCkgLSBsb2coZXBzKSA9IDAgb3IKKyAgICAvLworICAgIC8vICAgKG4tMikqbG9nKHIpICsgbG9n
KHxjMSoobisxKSpyXjIrYzJ8KSAtIGxvZyhlcHMpCisgICAgLy8KKyAgICAvLyBUaGlzIGhlbHBz
IHdpdGggZmluZGluZyBhIG51ZW1yaWNhbCBzb2x1dGlvbiBiZWNhdXNlIHRoaXMKKyAgICAvLyBh
cHByb3hpbWF0ZWx5IGxpbmVhcml6ZXMgdGhlIHJlc3BvbnNlIGZvciBsYXJnZSBuLgorCisgICAg
cmV0dXJuIChuIC0gMikgKiBzdGQ6OmxvZyhyKSArIHN0ZDo6bG9nKHN0ZDo6ZmFicyhjMSAqIChu
ICsgMSkgKiByICogciArIGMyKSkgLSBsb2dFUFM7Cit9CisKKworLy8gUmVndWxhIEZhbHNpIHJv
b3QgZmluZGVyLCBJbGxpbm9pcyB2YXJpYW50CisvLyAoaHR0cHM6Ly9lbi53aWtpcGVkaWEub3Jn
L3dpa2kvRmFsc2VfcG9zaXRpb25fbWV0aG9kI1RoZV9JbGxpbm9pc19hbGdvcml0aG0pLgorLy8K
Ky8vIFRoaXMgZmluZHMgYSByb290IG9mIHRoZSByZXBlYXRlZCByb290IHJlc3BvbnNlIHdoZXJl
IHRoZSByb290IGlzCisvLyBhc3N1bWVkIHRvIGxpZSBiZXR3ZWVuIHxsb3d8IGFuZCB8aGlnaHwu
IFRoZSByZXNwb25zZSBpcyBnaXZlbiBieQorLy8gfGMxfCwgfGMyfCwgYW5kIHxyfCBhcyBkZXRl
cm1pbmVkIGJ5IHxSZXBlYXRlZFJvb3RSZXNwb25zZXwuCisvLyB8bG9nRVBTfCBpcyB0aGUgbG9n
IHRoZSB0aGUgbWF4aW11bSBhbGxvd2VkIGFtcGxpdHVkZSBpbiB0aGUKKy8vIHJlc3BvbnNlLgor
c3RhdGljIGRvdWJsZSByb290RmluZGVyKGRvdWJsZSBsb3csIGRvdWJsZSBoaWdoLCBkb3VibGUg
bG9nRVBTLCBkb3VibGUgYzEsIGRvdWJsZSBjMiwgZG91YmxlIHIpCit7CisgICAgLy8gRGVzaXJl
ZCBhY2N1cmF5IG9mIHRoZSByb290IChpbiBmcmFtZXMpLiBUaGlzIGRvZXNuJ3QgbmVlZCB0byBi
ZQorICAgIC8vIHN1cGVyLWFjY3VyYXRlLCBzbyBoYWxmIGZyYW1lIGlzIGdvb2QgZW5vdWdoLCBh
bmQgc2hvdWxkIGJlIGxlc3MKKyAgICAvLyB0aGFuIDEgYmVjYXVzZSB0aGUgYWxnb3JpdGhtIG1h
eSBwcmVtYXR1cmVseSB0ZXJtaW5hdGUuCisgICAgY29uc3RleHByIGRvdWJsZSBhY2N1cmFjeVRo
cmVzaG9sZCA9IDAuNTsKKyAgICAvLyBNYXggbnVtYmVyIG9mIGl0ZXJhdGlvbnMgdG8gZG8uIElm
IHdlIGhhdmVuJ3QgY29udmVyZ2VkIGJ5IG5vdywKKyAgICAvLyBqdXN0IHJldHVybiB3aGF0ZXZl
ciB3ZSd2ZSBmb3VuZC4KKyAgICBjb25zdGV4cHIgaW50IG1heEl0ZXJhdGlvbnMgPSAxMDsKKwor
ICAgIGludCBzaWRlID0gMDsKKyAgICBkb3VibGUgcm9vdCA9IDA7CisgICAgZG91YmxlIGZMb3cg
PSByZXBlYXRlZFJvb3RSZXNwb25zZShsb3csIGMxLCBjMiwgciwgbG9nRVBTKTsKKyAgICBkb3Vi
bGUgZkhpZ2ggPSByZXBlYXRlZFJvb3RSZXNwb25zZShoaWdoLCBjMSwgYzIsIHIsIGxvZ0VQUyk7
CisKKyAgICAvLyBUaGUgZnVuY3Rpb24gdmFsdWVzIG11c3QgYmUgZmluaXRlIGFuZCBoYXZlIG9w
cG9zaXRlIHNpZ25zIQorICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKGZMb3cpKTsKKyAgICBBU1NF
UlQoc3RkOjppc2Zpbml0ZShmSGlnaCkpOworICAgIEFTU0VSVChmTG93ICogZkhpZ2ggPD0gMCk7
CisKKyAgICBpbnQgaXRlcmF0aW9uOworICAgIGZvciAoaXRlcmF0aW9uID0gMDsgaXRlcmF0aW9u
IDwgbWF4SXRlcmF0aW9uczsgKytpdGVyYXRpb24pIHsKKyAgICAgICAgcm9vdCA9IChmTG93ICog
aGlnaCAtIGZIaWdoICogbG93KSAvIChmTG93IC0gZkhpZ2gpOworICAgICAgICBpZiAoZmFicyho
aWdoIC0gbG93KSA8IGFjY3VyYWN5VGhyZXNob2xkICogc3RkOjpmYWJzKGhpZ2ggKyBsb3cpKQor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRvdWJsZSBmciA9IHJlcGVhdGVkUm9vdFJlc3Bv
bnNlKHJvb3QsIGMxLCBjMiwgciwgbG9nRVBTKTsKKworICAgICAgICBBU1NFUlQoc3RkOjppc2Zp
bml0ZShmcikpOworCisgICAgICAgIGlmIChmciAqIGZIaWdoID4gMCkgeworICAgICAgICAgICAg
Ly8gZnIgYW5kIGZIaWdoIGhhdmUgc2FtZSBzaWduLiBDb3B5IHJvb3QgdG8gZkhpZ2gKKyAgICAg
ICAgICAgIGhpZ2ggPSByb290OworICAgICAgICAgICAgZkhpZ2ggPSBmcjsKKyAgICAgICAgICAg
IHNpZGUgPSAtMTsKKyAgICAgICAgfSBlbHNlIGlmIChmTG93ICogZnIgPiAwKSB7CisgICAgICAg
ICAgICAvLyBmciBhbmQgZkxvdyBoYXZlIHNhbWUgc2lnbi4gQ29weSByb290IHRvIGZMb3cKKyAg
ICAgICAgICAgIGxvdyA9IHJvb3Q7CisgICAgICAgICAgICBmTG93ID0gZnI7CisgICAgICAgICAg
ICBpZiAoc2lkZSA9PSAxKQorICAgICAgICAgICAgICAgIGZIaWdoIC89IDI7CisgICAgICAgICAg
ICBzaWRlID0gMTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIGZMb3cgKiBmciBs
b29rcyBsaWtlIHplcm8sIHNvIGFzc3VtZSB3ZSd2ZSBjb252ZXJnZWQuCisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8vIFdhbnQgdG8ga25vdyBpZiB0aGUgbWF4
IG51bWJlciBvZiBpdGVyYXRpb25zIGlzIGV2ZXIgZXhjZWVkZWQgc28KKyAgICAvLyB3ZSBjYW4g
dW5kZXJzdGFuZCB3aHkgdGhhdCBoYXBwZW5lZC4KKyAgICBBU1NFUlQoaXRlcmF0aW9uIDwgbWF4
SXRlcmF0aW9ucyk7CisKKyAgICByZXR1cm4gcm9vdDsKK30KKworZG91YmxlIEJpcXVhZDo6dGFp
bEZyYW1lKHNpemVfdCBjb2VmSW5kZXgsIGRvdWJsZSBtYXhGcmFtZSkKK3sKKyAgICAvLyBUaGUg
QmlxdWFkIGZpbHRlciBpcyBnaXZlbiBieQorICAgIC8vCisgICAgLy8gICBIKHopID0gKGIwICsg
YjEveiArIGIyL3peMikvKDEgKyBhMS96ICsgYTIvel4yKS4KKyAgICAvLworICAgIC8vIFRvIGNv
bXB1dGUgdGhlIHRhaWwgdGltZSwgY29tcHV0ZSB0aGUgaW1wdWxzZSByZXNwb25zZSwgaChuKSwg
b2YKKyAgICAvLyBIKHopLCB3aGljaCB3ZSBjYW4gZG8gYW5hbHl0aWNhbGx5LiBGcm9tIHRoaXMg
aW1wdWxzZSByZXNwb25zZSwKKyAgICAvLyBmaW5kIHRoZSB2YWx1ZSBuMCB3aGVyZSB8aChuKXwg
PD0gZXBzIGZvciBuID49IG4wLgorICAgIC8vCisgICAgLy8gQXNzdW1lIGZpcnN0IHRoYXQgdGhl
IHR3byBwb2xlcyBvZiBIKHopIGFyZSBub3QgcmVwZWF0ZWQsIHNheSByMQorICAgIC8vIGFuZCBy
Mi4gVGhlbiwgd2UgY2FuIGNvbXB1dGUgYSBwYXJ0aWFsIGZyYWN0aW9uIGV4cGFuc2lvbiBvZgor
ICAgIC8vIEgoeik6CisgICAgLy8KKyAgICAvLyAgIEgoeikgPSAoYjArYjEveitiMi96XjIpL1so
MS1yMS96KSooMS1yMi96KV0KKyAgICAvLyAgICAgICAgPSBiMCArIEMyLyh6LXIyKSAtIEMxLyh6
LXIxKQorICAgIC8vCisgICAgLy8gIHdoZXJlCisgICAgLy8gICAgQzIgPSAoYjAqcjJeMitiMSpy
MitiMikvKHIyLXIxKQorICAgIC8vICAgIEMxID0gKGIwKnIxXjIrYjEqcjErYjIpLyhyMi1yMSkK
KyAgICAvLworICAgIC8vIEV4cGFuZCBIKHopIHRoZW4gdGhpcyBpbiBwb3dlcnMgb2YgMS96IGdp
dmVzOgorICAgIC8vCisgICAgLy8gICBIKHopID0gYjAgLShDMi9yMitDMS9yMSkgKyBzdW0oQzIq
cjJeKGktMSkvel5pICsgQzEqcjFeKGktMSkvel5pKQorICAgIC8vCisgICAgLy8gVGh1cywgZm9y
IG4gPiAxICh3ZSBkb24ndCBjYXJlIGFib3V0IHNtYWxsIG4pLAorICAgIC8vCisgICAgLy8gICBo
KG4pID0gQzIqcjJeKG4tMSkgKyBDMSpyMV4obi0xKQorICAgIC8vCisgICAgLy8gV2UgbmVlZCB0
byBmaW5kIG4wIHN1Y2ggdGhhdCB8aChuKXwgPCBlcHMgZm9yIG4gPiBuMC4KKyAgICAvLworICAg
IC8vIENhc2UgMTogcjEgYW5kIHIyIGFyZSByZWFsIGFuZCBkaXN0aW5jdCwgd2l0aCB8cjF8Pj18
cjJ8LgorICAgIC8vCisgICAgLy8gVGhlbgorICAgIC8vCisgICAgLy8gICBoKG4pID0gQzEqcjFe
KG4tMSkqKDEgKyBDMi9DMSoocjIvcjEpXihuLTEpKQorICAgIC8vCisgICAgLy8gc28KKyAgICAv
LworICAgIC8vICAgfGgobil8ID0gfEMxfCp8cjF8XihuLTEpKnwxK0MyL0MxKihyMi9yMSleKG4t
MSl8CisgICAgLy8gICAgICAgICAgPD0gfEMxfCp8cjF8XihuLTEpKlsxICsgfEMyL0MxfCp8cjIv
cjF8XihuLTEpXQorICAgIC8vICAgICAgICAgIDw9IHxDMXwqfHIxfF4obi0xKSpbMSArIHxDMi9D
MXxdCisgICAgLy8KKyAgICAvLyBzbworICAgIC8vCisgICAgLy8gICB8aChuKXwgPSB8QzF8Knxy
MXxeKG4tMSkqfDErQzIvQzEqKHIyL3IxKV4obi0xKXwKKyAgICAvLyAgICAgICAgICA8PSB8QzF8
KnxyMXxeKG4tMSkqWzEgKyB8QzIvQzF8KnxyMi9yMXxeKG4tMSldCisgICAgLy8gICAgICAgICAg
PD0gfEMxfCp8cjF8XihuLTEpKlsxICsgfEMyL0MxfF0KKyAgICAvLworICAgIC8vIGJ5IHVzaW5n
IHRoZSB0cmlhbmdsZSBpbmVxdWFsaXR5IGFuZCB0aGUgZmFjdCB0aGF0IHxyMnw8PXxyMXwuCisg
ICAgLy8gQW5kIHdlIHdhbnQgfGgobil8PD1lcHMgd2hpY2ggaXMgdHJ1ZSBpZgorICAgIC8vCisg
ICAgLy8gICB8QzF8KnxyMXxeKG4tMSkqWzEgKyB8QzIvQzF8XSA8PSBlcHMKKyAgICAvLworICAg
IC8vIG9yCisgICAgLy8KKyAgICAvLyAgIG4gPj0gMSArIGxvZyhlcHMvQykvbG9nKHxyMXwpCisg
ICAgLy8KKyAgICAvLyB3aGVyZSBDID0gfEMxfCpbMSt8QzIvQzF8XSA9IHxDMXwgKyB8QzJ8Lgor
ICAgIC8vCisgICAgLy8gQ2FzZSAyOiByMSBhbmQgcjIgYXJlIGNvbXBsZXgKKyAgICAvLworICAg
IC8vIFRobmUgd2UgY2FuIHdyaXRlIHIxPXIqZXhwKGkqcCkgYW5kIHIyPXIqZXhwKC1pKnApLiBT
bywKKyAgICAvLworICAgIC8vICAgfGgobil8ID0gfEMyKnJeKG4tMSkqZXhwKC1pKnAqKG4tMSkp
ICsgQzEqcl4obi0xKSpleHAoaSpwKihuLTEpKXwKKyAgICAvLyAgICAgICAgICA9IHxDMXwqcl4o
bi0xKSp8MSArIEMyL0MxKmV4cCgtaSpwKihuLTEpKS9leHAoaSpuKihuLTEpKXwKKyAgICAvLyAg
ICAgICAgICA8PSB8QzF8KnJeKG4tMSkqWzEgKyB8QzIvQzF8XQorICAgIC8vCisgICAgLy8gQWdh
aW4sIHRoaXMgaXMgZWFzaWx5IHNvbHZlZCB0byBnaXZlCisgICAgLy8KKyAgICAvLyAgIG4gPj0g
MSArIGxvZyhlcHMvQykvbG9nKHIpCisgICAgLy8KKyAgICAvLyB3aGVyZSBDID0gfEMxfCpbMSt8
QzIvQzF8XSA9IHxDMXwgKyB8QzJ8LgorICAgIC8vCisgICAgLy8gQ2FzZSAzOiBSZXBlYXRlZCBy
b290cywgcjE9cjI9ci4KKyAgICAvLworICAgIC8vIEluIHRoaXMgY2FzZSwKKyAgICAvLworICAg
IC8vICAgSCh6KSA9IChiMCtiMS96K2IyL3peMikvWygxLXIveileMgorICAgIC8vCisgICAgLy8g
RXhwYW5kaW5nIHRoaXMgaW4gcG93ZXJzIG9mIDEveiBnaXZlczoKKyAgICAvLworICAgIC8vICAg
SCh6KSA9IEMxKnN1bSgoaSsxKSpyXmkvel5pKSAtIEMyICogc3VtKHJeKGktMikvel5pKSArIGIy
L3JeMgorICAgIC8vICAgICAgICA9IGIyL3JeMiArIHN1bShbQzEqKGkrMSkqcl5pICsgQzIqcl4o
aS0yKV0vel5pKQorICAgIC8vIHdoZXJlCisgICAgLy8gICBDMSA9IChiMCpyXjIrYjEqcitiMikv
cl4yCisgICAgLy8gICBDMiA9IGIxKnIrMipiMgorICAgIC8vCisgICAgLy8gVGh1cywgdGhlIGlt
cHVsc2UgcmVzcG9uc2UgaXMKKyAgICAvLworICAgIC8vICAgaChuKSA9IEMxKihuKzEpKnJebiAr
IEMyKnJeKG4tMikKKyAgICAvLyAgICAgICAgPSByXihuLTIpKltDMSoobisxKSpyXjIrQzJdCisg
ICAgLy8KKyAgICAvLyBTbworICAgIC8vCisgICAgLy8gICB8aChuKXwgPSB8cnxeKG4tMikqfEMx
KihuKzEpKnJeMitDMnwKKyAgICAvLworICAgIC8vIFRvIGZpbmQgbiBzdWNoIHRoYXQgfGgobil8
IDwgZXBzLCB3ZSBuZWVkIGEgbnVtZXJpY2FsIG1ldGhvZCBpbgorICAgIC8vIGdlbmVyYWwsIHNv
IHRoZXJlJ3Mgbm8gcmVhbCByZWFzb24gdG8gc2ltcGxpZnkgdGhpcyBvciB1c2Ugb3RoZXIKKyAg
ICAvLyBhcHByb3hpbWF0aW9ucy4gSnVzdCBzb2x2ZSB8aChuKXw9ZXBzIGRpcmVjdGx5LgorICAg
IC8vCisgICAgLy8gVGh1cywgZm9yIGFuIHNldCBvZiBmaWx0ZXIgY29lZmZpY2llbnRzLCB3ZSBj
YW4gY29tcHV0ZSB0aGUgdGFpbAorICAgIC8vIHRpbWUuCisgICAgLy8KKworICAgIC8vIElmIHRo
ZSBtYXhpbXVtIGFtcGxpdHVkZSBvZiB0aGUgaW1wdWxzZSByZXNwb25zZSBpcyBsZXNzIHRoYW4K
KyAgICAvLyB0aGlzLCB3ZSBhc3N1bWUgdGhhdCB3ZSd2ZSByZWFjaGVkIHRoZSB0YWlsIG9mIHRo
ZSByZXNwb25zZS4KKyAgICAvLyBDdXJyZW50bHksIHRoaXMgbWVhbnMgdGhhdCB0aGUgaW1wdWxz
ZSBpcyBsZXNzIHRoYW4gMSBiaXQgb2YgYQorICAgIC8vIDE2LWJpdCBQQ00gdmFsdWUuCisgICAg
Y29uc3RleHByIGRvdWJsZSBtYXhUYWlsQW1wbGl0dWRlID0gMSAvIDMyNzY4LjA7CisKKyAgICAv
LyBGaW5kIHRoZSByb290cyBvZiAxK2ExL3orYTIvel4yID0gMC4gT3IgZXF1aXZhbGVudGx5LAor
ICAgIC8vIHpeMithMSp6K2EyID0gMC4gRnJvbSB0aGUgcXVhZHJhdGljIGZvcm11bGEgdGhlIHJv
b3RzIGFyZQorICAgIC8vICgtYTErLy1zcXJ0KGExXjItNCphMikpLzIuCisKKyAgICBkb3VibGUg
YTEgPSBtX2ExW2NvZWZJbmRleF07CisgICAgZG91YmxlIGEyID0gbV9hMltjb2VmSW5kZXhdOwor
ICAgIGRvdWJsZSBiMCA9IG1fYjBbY29lZkluZGV4XTsKKyAgICBkb3VibGUgYjEgPSBtX2IxW2Nv
ZWZJbmRleF07CisgICAgZG91YmxlIGIyID0gbV9iMltjb2VmSW5kZXhdOworCisgICAgZG91Ymxl
IHRhaWxGcmFtZSA9IDA7CisgICAgZG91YmxlIGRpc2NyaW0gPSBhMSAqIGExIC0gNCAqIGEyOwor
CisgICAgaWYgKGRpc2NyaW0gPiAwKSB7CisgICAgICAgIC8vIENvbXB1dGUgdGhlIHJlYWwgcm9v
dHMgc28gdGhhdCByMSBoYXMgdGhlIGxhcmdlc3QgbWFnbml0dWRlLgorICAgICAgICBkb3VibGUg
cnBsdXMgPSAoLWExICsgc3RkOjpzcXJ0KGRpc2NyaW0pKSAvIDI7CisgICAgICAgIGRvdWJsZSBy
bWludXMgPSAoLWExIC0gc3RkOjpzcXJ0KGRpc2NyaW0pKSAvIDI7CisgICAgICAgIGRvdWJsZSBy
MSA9IHN0ZDo6ZmFicyhycGx1cykgPj0gc3RkOjpmYWJzKHJtaW51cykgPyBycGx1cyA6IHJtaW51
czsKKyAgICAgICAgLy8gVXNlIHRoZSBmYWN0IHRoYXQgYTIgPSByMSpyMgorICAgICAgICBkb3Vi
bGUgcjIgPSBhMiAvIHIxOworCisgICAgICAgIGRvdWJsZSBjMSA9IChiMCAqIHIxICogcjEgKyBi
MSAqIHIxICsgYjIpIC8gKHIyIC0gcjEpOworICAgICAgICBkb3VibGUgYzIgPSAoYjAgKiByMiAq
IHIyICsgYjEgKiByMiArIGIyKSAvIChyMiAtIHIxKTsKKworICAgICAgICBBU1NFUlQoc3RkOjpp
c2Zpbml0ZShyMSkpOworICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShyMikpOworICAgICAg
ICBBU1NFUlQoc3RkOjppc2Zpbml0ZShjMSkpOworICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0
ZShjMikpOworCisgICAgICAgIC8vIEl0J3MgcG9zc2libGUgZm9yIG1heFRhaWxBbXBsaXR1ZGUg
dG8gYmUgZ3JlYXRlciB0aGFuIGMxICsgYzIuCisgICAgICAgIC8vIFRoaXMgbWF5IHByb2R1Y2Ug
YSBuZWdhdGl2ZSB0YWlsIGZyYW1lLiBKdXN0IGNsYW1wIHRoZSB0YWlsCisgICAgICAgIC8vIGZy
YW1lIHRvIDAuCisgICAgICAgIHRhaWxGcmFtZSA9IGNsYW1wVG8oMSArIHN0ZDo6bG9nKG1heFRh
aWxBbXBsaXR1ZGUgLyAoc3RkOjpmYWJzKGMxKSArIHN0ZDo6ZmFicyhjMikpKSAvIHN0ZDo6bG9n
KHN0ZDo6ZmFicyhyMSkpLCAwKTsKKworICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZSh0YWls
RnJhbWUpKTsKKyAgICB9IGVsc2UgaWYgKGRpc2NyaW0gPCAwKSB7CisgICAgICAgIC8vIFR3byBj
b21wbGV4IHJvb3RzLgorICAgICAgICAvLyBPbmUgcm9vdCBpcyAtYTEvMiArIGkqc3FydCgtZGlz
Y3JpbSkvMi4KKyAgICAgICAgZG91YmxlIHggPSAtYTEgLyAyOworICAgICAgICBkb3VibGUgeSA9
IHN0ZDo6c3FydCgtZGlzY3JpbSkgLyAyOworICAgICAgICBzdGQ6OmNvbXBsZXg8ZG91YmxlPiBy
MSh4LCB5KTsKKyAgICAgICAgc3RkOjpjb21wbGV4PGRvdWJsZT4gcjIoeCwgLXkpOworICAgICAg
ICBkb3VibGUgciA9IHN0ZDo6aHlwb3QoeCwgeSk7CisKKyAgICAgICAgQVNTRVJUKHN0ZDo6aXNm
aW5pdGUocikpOworCisgICAgICAgIC8vIEl0J3MgcG9zc2libGUgZm9yIHIgdG8gYmUgMS4gKExQ
RiB3aXRoIFEgdmVyeSBsYXJnZSBjYW4gY2F1c2UgdGhpcy4pCisgICAgICAgIGlmIChyID09IDEp
CisgICAgICAgICAgICB0YWlsRnJhbWUgPSBtYXhGcmFtZTsKKyAgICAgICAgZWxzZSB7CisgICAg
ICAgICAgICBkb3VibGUgYzEgPSBzdGQ6OmFicygoYjAgKiByMSAqIHIxICsgYjEgKiByMSArIGIy
KSAvIChyMiAtIHIxKSk7CisgICAgICAgICAgICBkb3VibGUgYzIgPSBzdGQ6OmFicygoYjAgKiBy
MiAqIHIyICsgYjEgKiByMiArIGIyKSAvIChyMiAtIHIxKSk7CisKKyAgICAgICAgICAgIEFTU0VS
VChzdGQ6OmlzZmluaXRlKGMxKSk7CisgICAgICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShj
MikpOworICAgICAgICAgICAgdGFpbEZyYW1lID0gMSArIHN0ZDo6bG9nKG1heFRhaWxBbXBsaXR1
ZGUgLyAoYzEgKyBjMikpIC8gc3RkOjpsb2cocik7CisgICAgICAgICAgICBpZiAoIWMxICYmICFj
MikgeworICAgICAgICAgICAgICAgIC8vIElmIGMxID0gYzIgPSAwLCB0aGVuIEgoeikgPSBiMC4g
SGVuY2UsIHRoZXJlJ3Mgbm8gdGFpbAorICAgICAgICAgICAgICAgIC8vIGJlY2F1c2UgdGhpcyBp
cyBqdXN0IGEgd2lyZSBmcm9tIGlucHV0IHRvIG91dHB1dC4KKyAgICAgICAgICAgICAgICB0YWls
RnJhbWUgPSAwOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAvLyBPdGhl
cndpc2UsIGNoZWNrIHRoYXQgdGhlIHRhaWwgaGFzIGZpbml0ZSBsZW5ndGguIE5vdAorICAgICAg
ICAgICAgICAgIC8vIHN0cmljdGx5IG5lY2Vzc2FyeSwgYnV0IHdlIHdhbnQgdG8ga25vdyBpZiB0
aGlzIGV2ZXIKKyAgICAgICAgICAgICAgICAvLyBoYXBwZW5zLgorICAgICAgICAgICAgICAgIEFT
U0VSVChzdGQ6OmlzZmluaXRlKHRhaWxGcmFtZSkpOworICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gUmVwZWF0ZWQgcm9vdHMuIFRoaXMgc2hvdWxkIGJl
IHByZXR0eSByYXJlIGJlY2F1c2UgYWxsIHRoZQorICAgICAgICAvLyBjb2VmZmljaWVudHMgbmVl
ZCB0byBiZSBqdXN0IHRoZSByaWdodCB2YWx1ZXMgdG8gZ2V0IGEKKyAgICAgICAgLy8gZGlzY3Jp
bWluYW50IG9mIGV4YWN0bHkgemVyby4KKyAgICAgICAgZG91YmxlIHIgPSAtYTEgLyAyOworCisg
ICAgICAgIGlmICghcikgeworICAgICAgICAgICAgLy8gRG91YmxlIHBvbGUgYXQgMC4gVGhpcyBq
dXN0IGRlbGF5cyB0aGUgc2lnbmFsIGJ5IDIgZnJhbWVzLAorICAgICAgICAgICAgLy8gc28gc2V0
IHRoZSB0YWlsIGZyYW1lIHRvIDIuCisgICAgICAgICAgICB0YWlsRnJhbWUgPSAyOworICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgZG91YmxlIGMxID0gKGIwICogciAqIHIgKyBiMSAqIHIg
KyBiMikgLyAociAqIHIpOworICAgICAgICAgICAgZG91YmxlIGMyID0gYjEgKiByICsgMiAqIGIy
OworCisgICAgICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShjMSkpOworICAgICAgICAgICAg
QVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzIpKTsKKworICAgICAgICAgICAgLy8gSXQgY2FuIGhhcHBl
biB0aGF0IGMxPWMyPTAuIFRoaXMgYmFzaWNhbGx5IG1lYW5zIHRoYXQgSCh6KSA9CisgICAgICAg
ICAgICAvLyBjb25zdGFudCwgd2hpY2ggaXMgdGhlIGxpbWl0aW5nIGNhc2UgZm9yIHNldmVyYWwg
b2YgdGhlCisgICAgICAgICAgICAvLyBiaXF1YWQgZmlsdGVycy4KKyAgICAgICAgICAgIGlmICgh
YzEgJiYgIWMyKQorICAgICAgICAgICAgICAgIHRhaWxGcmFtZSA9IDA7CisgICAgICAgICAgICBl
bHNlIHsKKyAgICAgICAgICAgICAgICAvLyBUaGUgZnVuY3Rpb24gYyoobisxKSpyXm4gaXMgbm90
IG1vbm90b25pYywgYnV0IGl0J3MgZWFzeSB0bworICAgICAgICAgICAgICAgIC8vIGZpbmQgdGhl
IG1heCBwb2ludCBzaW5jZSB0aGUgZGVyaXZhdGl2ZSBpcworICAgICAgICAgICAgICAgIC8vIGMq
cl5uKigxKyhuKzEpKmxvZyhyKSkuIFRoaXMgaGFzIGEgcm9vdCBhdAorICAgICAgICAgICAgICAg
IC8vIC0oMStsb2cocikpL2xvZyhyKS4gc28gd2UgY2FuIHN0YXJ0IG91ciBzZWFyY2ggZnJvbSB0
aGF0CisgICAgICAgICAgICAgICAgLy8gcG9pbnQgdG8gbWF4RnJhbWVzLgorCisgICAgICAgICAg
ICAgICAgZG91YmxlIGxvdyA9IHN0ZDo6Y2xhbXAoLSgxICsgc3RkOjpsb2cocikpIC8gc3RkOjps
b2cociksIDEuMCwgc3RhdGljX2Nhc3Q8ZG91YmxlPihtYXhGcmFtZSAtIDEpKTsKKyAgICAgICAg
ICAgICAgICBkb3VibGUgaGlnaCA9IG1heEZyYW1lOworCisgICAgICAgICAgICAgICAgQVNTRVJU
KHN0ZDo6aXNmaW5pdGUobG93KSk7CisgICAgICAgICAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5p
dGUoaGlnaCkpOworCisgICAgICAgICAgICAgICAgdGFpbEZyYW1lID0gcm9vdEZpbmRlcihsb3cs
IGhpZ2gsIHN0ZDo6bG9nKG1heFRhaWxBbXBsaXR1ZGUpLCBjMSwgYzIsIHIpOworICAgICAgICAg
ICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIHRhaWxGcmFtZTsKK30KKwogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQl9BVURJTykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmgKaW5kZXggNzEzNDk0YzkxNGQzMzc4NjQzZTI5
YTgwYmMzOWU3NzM2NmRmMTgyYi4uNzUwOTI3NDZkZDIyODNjOTAyMjEyNmQ2Y2YyNTE5Y2QzYTg3
YTc0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmgKQEAgLTQ2LDI2ICs0
NiwyMyBAQCBwdWJsaWM6CiAgICAgQmlxdWFkKCk7CiAgICAgfkJpcXVhZCgpOwogCisgICAgc3Rh
dGljIGNvbnN0IHNpemVfdCBNYXhGcmFtZXNUb1Byb2Nlc3M7CisKICAgICB2b2lkIHByb2Nlc3Mo
Y29uc3QgZmxvYXQqIHNvdXJjZVAsIGZsb2F0KiBkZXN0UCwgc2l6ZV90IGZyYW1lc1RvUHJvY2Vz
cyk7CiAKKyAgICBib29sIGhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkgY29uc3QgeyByZXR1cm4g
bV9oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlczsgfQorICAgIHZvaWQgc2V0SGFzU2FtcGxlQWNjdXJh
dGVWYWx1ZXMoYm9vbCBoYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcykgeyBtX2hhc1NhbXBsZUFjY3Vy
YXRlVmFsdWVzID0gaGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXM7IH0KKwogICAgIC8vIGZyZXF1ZW5j
eSBpcyAwIC0gMSBub3JtYWxpemVkLCByZXNvbmFuY2UgYW5kIGRiR2FpbiBhcmUgaW4gZGVjaWJl
bHMuCiAgICAgLy8gUSBpcyBhIHVuaXRsZXNzIHF1YWxpdHkgZmFjdG9yLgotICAgIHZvaWQgc2V0
TG93cGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgcmVzb25hbmNlKTsKLSAgICB2
b2lkIHNldEhpZ2hwYXNzUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSByZXNvbmFuY2Up
OwotICAgIHZvaWQgc2V0QmFuZHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEp
OwotICAgIHZvaWQgc2V0TG93U2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRi
R2Fpbik7Ci0gICAgdm9pZCBzZXRIaWdoU2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91
YmxlIGRiR2Fpbik7Ci0gICAgdm9pZCBzZXRQZWFraW5nUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ks
IGRvdWJsZSBRLCBkb3VibGUgZGJHYWluKTsKLSAgICB2b2lkIHNldEFsbHBhc3NQYXJhbXMoZG91
YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpOwotICAgIHZvaWQgc2V0Tm90Y2hQYXJhbXMoZG91Ymxl
IGZyZXF1ZW5jeSwgZG91YmxlIFEpOwotCi0gICAgLy8gU2V0IHRoZSBiaXF1YWQgY29lZmZpY2ll
bnRzIGdpdmVuIGEgc2luZ2xlIHplcm8gKG90aGVyIHplcm8gd2lsbCBiZSBjb25qdWdhdGUpCi0g
ICAgLy8gYW5kIGEgc2luZ2xlIHBvbGUgKG90aGVyIHBvbGUgd2lsbCBiZSBjb25qdWdhdGUpCi0g
ICAgdm9pZCBzZXRaZXJvUG9sZVBhaXJzKHN0ZDo6Y29tcGxleDxkb3VibGU+IHplcm8sIHN0ZDo6
Y29tcGxleDxkb3VibGU+IHBvbGUpOwotCi0gICAgLy8gU2V0IHRoZSBiaXF1YWQgY29lZmZpY2ll
bnRzIGdpdmVuIGEgc2luZ2xlIHBvbGUgKG90aGVyIHBvbGUgd2lsbCBiZSBjb25qdWdhdGUpCi0g
ICAgLy8gKFRoZSB6ZXJvZXMgd2lsbCBiZSB0aGUgaW52ZXJzZSBvZiB0aGUgcG9sZXMpCi0gICAg
dm9pZCBzZXRBbGxwYXNzUG9sZShzdGQ6OmNvbXBsZXg8ZG91YmxlPik7CisgICAgdm9pZCBzZXRM
b3dwYXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIHJlc29u
YW5jZSk7CisgICAgdm9pZCBzZXRIaWdocGFzc1BhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBm
cmVxdWVuY3ksIGRvdWJsZSByZXNvbmFuY2UpOworICAgIHZvaWQgc2V0QmFuZHBhc3NQYXJhbXMo
c2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSk7CisgICAgdm9pZCBzZXRM
b3dTaGVsZlBhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBkYkdh
aW4pOworICAgIHZvaWQgc2V0SGlnaFNoZWxmUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZy
ZXF1ZW5jeSwgZG91YmxlIGRiR2Fpbik7CisgICAgdm9pZCBzZXRQZWFraW5nUGFyYW1zKHNpemVf
dCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEsIGRvdWJsZSBkYkdhaW4pOworICAg
IHZvaWQgc2V0QWxscGFzc1BhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRv
dWJsZSBRKTsKKyAgICB2b2lkIHNldE5vdGNoUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZy
ZXF1ZW5jeSwgZG91YmxlIFEpOwogCiAgICAgLy8gUmVzZXRzIGZpbHRlciBzdGF0ZQogICAgIHZv
aWQgcmVzZXQoKTsKQEAgLTc3LDMyICs3NCw0MCBAQCBwdWJsaWM6CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBmbG9hdCogZnJlcXVlbmN5LAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZmxvYXQqIG1hZ1Jlc3BvbnNlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZmxvYXQqIHBoYXNlUmVzcG9uc2UpOworCisgICAgLy8gQ29tcHV0ZSB0YWlsIGZyYW1l
IGJhc2VkIG9uIHRoZSBmaWx0ZXIgY29lZmZpY2VudHMgYXQgaW5kZXgKKyAgICAvLyB8Y29lZklu
ZGV4fC4gVGhlIHRhaWwgZnJhbWUgaXMgdGhlIGZyYW1lIG51bWJlciB3aGVyZSB0aGUKKyAgICAv
LyBpbXB1bHNlIHJlc3BvbnNlIG9mIHRoZSBmaWx0ZXIgZmFsbHMgYmVsb3cgYSB0aHJlc2hvbGQg
dmFsdWUuCisgICAgLy8gVGhlIG1heGltdW0gYWxsb3dlZCBmcmFtZSB2YWx1ZSBpcyBnaXZlbiBi
eSB8bWF4RnJhbWV8LiBUaGlzCisgICAgLy8gbGltaXRzIGhvdyBtdWNoIHdvcmsgaXMgZG9uZSBp
biBjb21wdXRpbmcgdGhlIGZyYW1lIG51bWJlci4KKyAgICBkb3VibGUgdGFpbEZyYW1lKHNpemVf
dCBjb2VmSW5kZXgsIGRvdWJsZSBtYXhGcmFtZSk7CisKIHByaXZhdGU6Ci0gICAgdm9pZCBzZXRO
b3JtYWxpemVkQ29lZmZpY2llbnRzKGRvdWJsZSBiMCwgZG91YmxlIGIxLCBkb3VibGUgYjIsIGRv
dWJsZSBhMCwgZG91YmxlIGExLCBkb3VibGUgYTIpOwotICAgIAorICAgIHZvaWQgc2V0Tm9ybWFs
aXplZENvZWZmaWNpZW50cyhzaXplX3QgaW5kZXgsIGRvdWJsZSBiMCwgZG91YmxlIGIxLCBkb3Vi
bGUgYjIsIGRvdWJsZSBhMCwgZG91YmxlIGExLCBkb3VibGUgYTIpOworCiAgICAgLy8gRmlsdGVy
IGNvZWZmaWNpZW50cy4gVGhlIGZpbHRlciBpcyBkZWZpbmVkIGFzCiAgICAgLy8KICAgICAvLyB5
W25dICsgbV9hMSp5W24tMV0gKyBtX2EyKnlbbi0yXSA9IG1fYjAqeFtuXSArIG1fYjEqeFtuLTFd
ICsgbV9iMip4W24tMl0uCi0gICAgZG91YmxlIG1fYjA7Ci0gICAgZG91YmxlIG1fYjE7Ci0gICAg
ZG91YmxlIG1fYjI7Ci0gICAgZG91YmxlIG1fYTE7Ci0gICAgZG91YmxlIG1fYTI7CisgICAgQXVk
aW9Eb3VibGVBcnJheSBtX2IwOworICAgIEF1ZGlvRG91YmxlQXJyYXkgbV9iMTsKKyAgICBBdWRp
b0RvdWJsZUFycmF5IG1fYjI7CisgICAgQXVkaW9Eb3VibGVBcnJheSBtX2ExOworICAgIEF1ZGlv
RG91YmxlQXJyYXkgbV9hMjsKIAogI2lmIFVTRShBQ0NFTEVSQVRFKQogICAgIHZvaWQgcHJvY2Vz
c0Zhc3QoY29uc3QgZmxvYXQqIHNvdXJjZVAsIGZsb2F0KiBkZXN0UCwgc2l6ZV90IGZyYW1lc1Rv
UHJvY2Vzcyk7CiAgICAgdm9pZCBwcm9jZXNzU2xpY2VGYXN0KGRvdWJsZSogc291cmNlUCwgZG91
YmxlKiBkZXN0UCwgZG91YmxlKiBjb2VmZmljaWVudHNQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNz
KTsKLQogICAgIEF1ZGlvRG91YmxlQXJyYXkgbV9pbnB1dEJ1ZmZlcjsKICAgICBBdWRpb0RvdWJs
ZUFycmF5IG1fb3V0cHV0QnVmZmVyOworI2VuZGlmCiAKLSNlbHNlCiAgICAgLy8gRmlsdGVyIG1l
bW9yeQogICAgIGRvdWJsZSBtX3gxOyAvLyBpbnB1dCBkZWxheWVkIGJ5IDEgc2FtcGxlCiAgICAg
ZG91YmxlIG1feDI7IC8vIGlucHV0IGRlbGF5ZWQgYnkgMiBzYW1wbGVzCiAgICAgZG91YmxlIG1f
eTE7IC8vIG91dHB1dCBkZWxheWVkIGJ5IDEgc2FtcGxlCiAgICAgZG91YmxlIG1feTI7IC8vIG91
dHB1dCBkZWxheWVkIGJ5IDIgc2FtcGxlcwotI2VuZGlmCisKKyAgICBib29sIG1faGFzU2FtcGxl
QWNjdXJhdGVWYWx1ZXMgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggZjlhYWM2OThhNThkOTJjNTM0MTFhYWNh
NjM0YjhlNTA0ZjEzNWQ2Ni4uNWUxZDA0YTYxMDUxMjEzYmYwYTkwOGE0YmQwZGFkMjcyZjFmOTg1
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAt
MDgtMzEgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgcHJv
cGVyIGstcmF0ZSBhdXRvbWF0aW9uIHN1cHBvcnQgZm9yIEJpcXVhZEZpbHRlck5vZGUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjAyNworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlYmFzZWxpbmUgV1BU
IHRlc3RzIG5vdyB0aGF0IG1vcmUgY2hlY2tzIGFyZSBwYXNzaW5nLgorCisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50
ZXJmYWNlL2stcmF0ZS1iaXF1YWQtY29ubmVjdGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0t
aW50ZXJmYWNlL2stcmF0ZS1iaXF1YWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWlu
dGVyZmFjZS9iaXF1YWQtYXV0b21hdGlvbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUt
aW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wOC0zMSAgWW91
ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRlIGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLW1hbmRhdG9y
eS1nZXRTdGF0cy5odHRwcy5odG1sIHNvIHRoYXQgaXQgbm8gbG9uZ2VyIHRpbWVzIG91dCBpZiBm
aXJzdCB0ZXN0IGZhaWxzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50
ZXJmYWNlL2stcmF0ZS1iaXF1YWQtY29ubmVjdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1iaXF1YWQtY29ubmVjdGlvbi1leHBlY3Rl
ZC50eHQKaW5kZXggYzMwZTNlODg5MzUxZGQzNGY1YTQ3MzU1MTM5NjljMWUyNDg3YmNmOS4uOTMy
OGIxOTljOTA2MzM0ZmFhNjhiZDJlMTk3YmUzNzcxYjFlYzUwNyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRl
LWJpcXVhZC1jb25uZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMjgsNyArMjgsNyBAQCBQQVNTICAg
VGVzdCBCaXF1YWRGaWx0ZXJOb2RlKGNvbnRleHQsIHsidHlwZSI6ImJhbmRwYXNzIiwiZnJlcXVl
bmN5Ijo0NDAsIlEiOjB9KQogUEFTUyAgIFE6IG1vZC5vZmZzZXQuc2V0VmFsdWVBdFRpbWUoMCww
KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgUTogbW9kLm9mZnNldC5saW5l
YXJSYW1wVG9WYWx1ZUF0VGltZSgxMDAsMC4xMjUpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKIFBBU1MgICBrLXJhdGUgUSB3aXRoIGlucHV0OiBvdXRwdXRbMCwyMDQ4XSBlcXVhbHMgWzAs
MC45ODIyODcxNjg1MDI4MDc2LDAuMzY4MTI0MzA2MjAxOTM0OCwtMC44NDQzMjc4MDc0MjY0NTI2
LC0wLjY4NDU0NjcwOTA2MDY2OSwwLjU4Nzc4NTM2MzE5NzMyNjcsMC45MDQ4MjY2NDEwODI3NjM3
LC0wLjI0ODY5MDMwNzE0MDM1MDM0LC0wLjk5ODAyNjYwOTQyMDc3NjQsLTAuMTI1MzMyNDQ0OTA2
MjM0NzQsMC45NTEwNTY3MTg4MjYyOTQsMC40ODE3NTI4NDI2NjQ3MTg2MywtMC43NzA1MTM3MTMz
NTk4MzI4LC0wLjc3MDUxMjIyMzI0MzcxMzQsMC40ODE3NTQ2MDEwMDE3Mzk1LDAuOTUxMDU2MDAz
NTcwNTU2Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVU
aHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCi1QQVNTICAgay1yYXRlIFEgd2l0
aCBpbnB1dDogb3V0cHV0WzIwNDg6XSBlcXVhbHMgWzAuMDA1NjM1NTkzMDg2NDgxMDk0LDAuMDAz
NzE0NjU1MjkzMTUxNzM2MywwLjAwMTk5MDY5NTcxNjgxMzIwNjcsMC4wMDMyOTUyNjgxNjQ5NDc2
MjksMC4wMDQ4MzIyNjQwMzU5NDAxNywwLjAwMjgwMDcwNjMwODMzNTA2NiwtMC4wMDEyNzg5MzU2
OTg3OTIzMzg0LC0wLjAwMjgzMzY2NzIxMTIzNDU2OTUsLTAuMDAxNDM3NTQxMjEzODE3ODk0NSwt
MC4wMDEyNjcxNjcxNTc0OTM1MzE3LC0wLjAwNDA5OTUyMzY0ODYxOTY1MiwtMC4wMDYyNTYzNDQy
NjI1MTA1MzgsLTAuMDA0NDc5ODk3MjA4NTExODI5LC0wLjAwMTIwMTkyNDI4NTg1MTQxOSwtMC4w
MDA2NDUwOTc1Nzc5NDQzOTc5LC0wLjAwMjA4Njc1MjA5NDMyODQwMzUuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uIAorUEFTUyAgIGstcmF0ZSBRIHdpdGggaW5wdXQ6IG91dHB1dFsyMDQ4Ol0g
ZXF1YWxzIFswLjAwNTYzNTU5MjE1NTE1ODUyLDAuMDAzNzE0NjU0NTk0NjU5ODA1MywwLjAwMTk5
MDY5NTQ4Mzk4MjU2MywwLjAwMzI5NTI2ODYzMDYwODkxNjMsMC4wMDQ4MzIyNjQ5NjcyNjI3NDUs
MC4wMDI4MDA3MDc3MDUzMTg5Mjc4LC0wLjAwMTI3ODkzNDE4NTM5MzE1NDYsLTAuMDAyODMzNjY1
NTgxNDIwMDY0LC0wLjAwMTQzNzUzOTcwMDQxODcxMDcsLTAuMDAxMjY3MTY1ODc2OTI0OTkxNiwt
MC4wMDQwOTk1MjI3MTcyOTcwNzcsLTAuMDA2MjU2MzQ0MjYyNTEwNTM4LC0wLjAwNDQ3OTg5NzY3
NDE3MzExNywtMC4wMDEyMDE5MjUxMDA3NTg2NzE4LC0wLjAwMDY0NTA5ODc0MjA5NzYxNjIsLTAu
MDAyMDg2NzUzNzI0MTQyOTA5Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKIFBBU1MgPCBb
USBBdWRpb1BhcmFtXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA5IGFzc2VydGlvbnMp
IAogUEFTUyA+IFtHYWluIEF1ZGlvUGFyYW1dIGstcmF0ZSBpbnB1dCB3b3JrcyAKIFBBU1MgICBn
YWluOiBuZXcgT3NjaWxsYXRvck5vZGUoY29udGV4dCwge2ZyZXF1ZW5jeTogMTc2MH0pIGRpZCBu
b3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKQEAgLTUwLDcgKzUwLDcgQEAgUEFTUyAgIFRlc3QgQmlx
dWFkRmlsdGVyTm9kZShjb250ZXh0LCB7InR5cGUiOiJsb3dwYXNzIiwiZnJlcXVlbmN5IjoyMjAw
LCJkZXR1bmUKIFBBU1MgICBkZXR1bmU6IG1vZC5vZmZzZXQuc2V0VmFsdWVBdFRpbWUoMCwwKSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgZGV0dW5lOiBtb2Qub2Zmc2V0Lmxp
bmVhclJhbXBUb1ZhbHVlQXRUaW1lKC0xMzMyMy45NDUzNzAwOTQ0MjcsMC4xMjUpIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBrLXJhdGUgZGV0dW5lIHdpdGggaW5wdXQ6IG91
dHB1dFswLDIwNDhdIGVxdWFscyBbMCwwLjEzMTA2MTcxNzg2Nzg1MTI2LDAuNDg3NjE0OTg5Mjgw
NzAwNywwLjgyODA3MjQ4ODMwNzk1MjksMC45NzA4MDM5MTY0NTQzMTUyLDAuOTk4Nzg3NjQxNTI1
MjY4NiwwLjk0NzIzNzMxMjc5MzczMTcsMC43Nzc0NTM3ODAxNzQyNTU0LDAuNTAxODUxMjYwNjYy
MDc4OSwwLjE3MTU1OTQ1MzAxMDU1OTA4LC0wLjE3NDM5ODQ4MTg0NTg1NTcsLTAuNTAyMjc2ODM3
ODI1Nzc1MSwtMC43NzIxNDE1NzU4MTMyOTM1LC0wLjk0OTUwNTk4NDc4MzE3MjYsLTEuMDE0MjY1
MTc5NjM0MDk0MiwtMC45NTk2MTg1Njg0MjA0MTAyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0
b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9
LiAKLVBBU1MgICBrLXJhdGUgZGV0dW5lIHdpdGggaW5wdXQ6IG91dHB1dFsyMDQ4Ol0gZXF1YWxz
IFswLjAxMTg5MDkyNTQ2NzAxNDMxMywwLjAxMTkzODYyMjIyMTM1MDY3LDAuMDExOTg1NzQzNDE4
MzM1OTE1LDAuMDEyMDMyMjUzNjY3NzEyMjEyLDAuMDEyMDc4MTg5MjkxMDU5OTcsMC4wMTIxMjM2
NDUyODMyODE4MDMsMC4wMTIxNjg3NzM0NDk5NTczNywwLjAxMjIxMzc1NzI2MTYzMzg3MywwLjAx
MjI1ODc5MTM2NDcyOTQwNCwwLjAxMjMwNDA2Mjk1NTA4MTQ2MywwLjAxMjM0OTcyNDc2OTU5MjI4
NSwwLjAxMjM5NTg3ODMyMjQyMjUwNCwwLjAxMjQ0MjU2MjcyOTEyMDI1NSwwLjAxMjQ4OTc1MTkx
MjY1MzQ0NiwwLjAxMjUzNzM1MTgwOTQ0MjA0MywwLjAxMjU4NTIxODA2NDQ4Njk4Li4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVs
YXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBrLXJhdGUgZGV0dW5lIHdpdGggaW5wdXQ6IG91
dHB1dFsyMDQ4Ol0gZXF1YWxzIFswLjAxMTg5NTgxNzcwNDQ5ODc2OCwwLjAxMTk0MzUxODE4NDEy
NTQyMywwLjAxMTk5MDY0MjE3NTA3ODM5MiwwLjAxMjAzNzE1NjE0OTc0NDk4NywwLjAxMjA4MzA5
MzYzNTczNzg5NiwwLjAxMjEyODU1NDI4NDU3MjYwMSwwLjAxMjE3MzY4NTI0NTIxNTg5MywwLjAx
MjIxODY3MDkxOTUzNzU0NCwwLjAxMjI2MzcwODc0NzkyMzM3NCwwLjAxMjMwODk4NDA2MzU2NTcz
MSwwLjAxMjM1NDY0ODY3MjA0NDI3NywwLjAxMjQwMDgwNTAxODg0MjIyLDAuMDEyNDQ3NDkzMTUw
ODMwMjY5LDAuMDEyNDk0Njg1MTI4MzMxMTg0LDAuMDEyNTQyMjg3ODE5MDg3NTA1LDAuMDEyNTkw
MTU2ODY4MTAwMTY2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNv
bHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKIFBBU1MgPCBbRGV0dW5l
IEF1ZGlvUGFyYW1dIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDkgYXNzZXJ0aW9ucykg
CiBQQVNTID4gW0FsbCBrLXJhdGUgaW5wdXRzXSAgCiBQQVNTICAgQ3JlYXRlOiByZWZOb2RlID0g
bmV3IEJpcXVhZEZpbHRlck5vZGUoY29udGV4dCwgeyJ0eXBlIjoicGVha2luZyIsImZyZXF1ZW5j
eSI6MCwiZGV0dW5lIjowLCJnYWluIjowLCJRIjowfSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJh
dGUtYmlxdWFkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZh
Y2Uvay1yYXRlLWJpcXVhZC1leHBlY3RlZC50eHQKaW5kZXggMWUzMTE2ZTgwMDgzOTY2NDVmZmFh
YzdhNzZiNGRjZTNhYmI4YTI4MC4uOWVlNDlhN2Q3ODdlZGM4NzEyN2JjODdjMDZjN2ExMTcwNjg5
MjVhMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJh
dGUtYmlxdWFkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50
ZXJmYWNlL2stcmF0ZS1iaXF1YWQtZXhwZWN0ZWQudHh0CkBAIC0xNiw4ICsxNiw4IEBAIFBBU1Mg
ICBBbGwgay1yYXRlIHBhcmFtczogay1yYXRlIG5vZGU6IGZyZXF1ZW5jeS5saW5lYXJSYW1wVG9W
YWx1ZUF0VGltZSgwLDEpIGRpCiBQQVNTICAgQWxsIGstcmF0ZSBwYXJhbXM6IGEtcmF0ZSBub2Rl
OmZyZXF1ZW5jeS5zZXRWYWx1ZUF0VGltZSgzNTAsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAogUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBhLXJhdGUgbm9kZTpmcmVxdWVuY3kubGlu
ZWFyUmFtcFRvVmFsdWVBdFRpbWUoMCwxKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQ
QVNTICAgQWxsIGstcmF0ZSBwYXJhbXM6IE91dHB1dCBvZiBrLXJhdGUgQmlxdWFkRmlsdGVyTm9k
ZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMDA1NjcyNzM3OTU2MDQ3MDU4LDAuMDMx
NzYxNDIyNzUzMzM0MDQ1LDAuMDkxNTI4OTQ0NjcxMTU0MDIsMC4xODgyMjAzOTY2Mzc5MTY1Niww
LjMxNTI5MTE5NjEwNzg2NDQsMC40NTgwMjM5OTUxNjEwNTY1LDAuNTk2MjM2OTQ0MTk4NjA4NCww
LjcwNzY3MDk4NjY1MjM3NDMsMC43NzE1ODE2NDk3ODAyNzM0LDAuNzcyMDU1NTY2MzEwODgyNiww
LjcwMDYyMTQ4NTcxMDE0NCwwLjU1NzgyODY2NDc3OTY2MzEsMC4zNTM1OTg3NzM0Nzk0NjE2Nyww
LjEwNjMxNzUyNzU5MjE4MjE2LC0wLjE1OTIxMjMyMTA0MzAxNDUzLi4uXS4gCi1QQVNTICAgQWxs
IGstcmF0ZSBwYXJhbXM6IE91dHB1dCBvZiBhLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBpZGVu
dGljYWwgdG8gdGhlIGFycmF5IFswLDAuMDA1NjcyNzM3OTU2MDQ3MDU4LDAuMDMxNzYxNDIyNzUz
MzM0MDQ1LDAuMDkxNTI4OTQ0NjcxMTU0MDIsMC4xODgyMjAzOTY2Mzc5MTY1NiwwLjMxNTI5MTE5
NjEwNzg2NDQsMC40NTgwMjM5OTUxNjEwNTY1LDAuNTk2MjM2OTQ0MTk4NjA4NCwwLjcwNzY3MDk4
NjY1MjM3NDMsMC43NzE1ODE2NDk3ODAyNzM0LDAuNzcyMDU1NTY2MzEwODgyNiwwLjcwMDYyMTQ4
NTcxMDE0NCwwLjU1NzgyODY2NDc3OTY2MzEsMC4zNTM1OTg3NzM0Nzk0NjE2NywwLjEwNjMxNzUy
NzU5MjE4MjE2LC0wLjE1OTIxMjMyMTA0MzAxNDUzLi4uXS4gCi1QQVNTICAgQWxsIGstcmF0ZSBw
YXJhbXM6IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJO
b2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDc4NzIgZGlmZmVyZW50IHZhbHVlcyku
IAorUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRl
ck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjAwNTY3MTQwMjkwNTEzNjM0Nyww
LjAzMTc0OTIxNDk3NzAyNTk4NiwwLjA5MTQ4MzEyMzYwMDQ4Mjk0LDAuMTg4MTEwMDA4ODM1Nzky
NTQsMC4zMTUwODg2Mjk3MjI1OTUyLDAuNDU3NzE5NzczMDU0MTIyOSwwLjU5NTg1MzUwNzUxODc2
ODMsMC43MDcyNzEyMTgyOTk4NjU3LDAuNzcxMjY5MDIzNDE4NDI2NSwwLjc3MTk2MzgzNDc2MjU3
MzIsMC43MDA4OTUwNzEwMjk2NjMxLDAuNTU4NTk1MjQwMTE2MTE5NCwwLjM1NDkzOTM0MTU0NTEw
NSwwLjEwODIzODU2Mjk0MTU1MTIxLC0wLjE1Njc5ODYwMTE1MDUxMjcuLi5dLiAKK1BBU1MgICBB
bGwgay1yYXRlIHBhcmFtczogRGlmZmVyZW5jZSBiZXR3ZWVuIGEtcmF0ZSBhbmQgay1yYXRlIEJp
cXVhZEZpbHRlck5vZGUgaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgNzk5OSBkaWZmZXJl
bnQgdmFsdWVzKS4gCiBQQVNTIDwgW0JpcXVhZCBrLXJhdGUgQXVkaW9QYXJhbXMgKGFsbCldIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDExIGFzc2VydGlvbnMpIAogUEFTUyA+IFtCaXF1
YWQgay1yYXRlIFFdICAKIFBBU1MgICBrLXJhdGUgUTogU2V0dGluZyBRLmF1dG9tYXRpb25SYXRl
IHRvICJrLXJhdGUiIGlzIGVxdWFsIHRvIGstcmF0ZS4gCkBAIC0yNiw5ICsyNiw5IEBAIFBBU1Mg
ICBrLXJhdGUgUTogay1yYXRlIG5vZGU6IFEubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTAsMSkg
ZGlkIG5vdCB0aHJvdyBhbiBlCiBQQVNTICAgay1yYXRlIFE6IGEtcmF0ZSBub2RlOlEuc2V0VmFs
dWVBdFRpbWUoMSwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRl
IFE6IGEtcmF0ZSBub2RlOlEubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTAsMSkgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBROiBPdXRwdXQgb2Ygay1yYXRlIEJp
cXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDY3NTAwODI5
Njk2NjU1LDAuODI4MDQyMzg3OTYyMzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0NDY4NTEyNTM1
MDk1MjEsMS42ODk5NTk4ODM2ODk4ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2MjU0MTU1NjM1
ODMzNzQsMC44OTQ1OTg1NDM2NDM5NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAuNDI5NzIwMzQy
MTU5MjcxMjQsLTEuMTM2MjY4NzM0OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDksLTIuMjE3OTA3
MTkwMzIyODc2LC0yLjQ1MTE4MDY5NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3NC4uLl0uIAot
UEFTUyAgIGstcmF0ZSBROiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRl
bnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDY3NTAwODI5Njk2NjU1LDAuODI4MDQyMzg3OTYy
MzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0NDY4NTEyNTM1MDk1MjEsMS42ODk5NTk4ODM2ODk4
ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2MjU0MTU1NjM1ODMzNzQsMC44OTQ1OTg1NDM2NDM5
NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAuNDI5NzIwMzQyMTU5MjcxMjQsLTEuMTM2MjY4NzM0
OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDksLTIuMjE3OTA3MTkwMzIyODc2LC0yLjQ1MTE4MDY5
NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3NC4uLl0uIAotRkFJTCBYIGstcmF0ZSBROiBEaWZm
ZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBzaG91bGQg
aGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbQmlxdWFkIGstcmF0ZSBRXSAx
IG91dCBvZiA4IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQorUEFTUyAgIGstcmF0ZSBROiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZp
bHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDYyMDc2ODA3MDIyMDk1
LDAuODI3NzU2Mjg1NjY3NDE5NCwxLjIzNjQ1NTIwMjEwMjY2MTEsMS41NDM2MzY0NDEyMzA3NzQs
MS42ODg2Njg0ODk0NTYxNzY4LDEuNjMyMTYzNTI0NjI3Njg1NSwxLjM2MTg3OTgyNTU5MjA0MSww
Ljg5NTAwMjA2NzA4OTA4MDgsMC4yNzY1MzcyOTkxNTYxODg5NiwtMC40MjU5NjA4Njg1OTcwMzA2
NCwtMS4xMzA2NTg2MjY1NTYzOTY1LC0xLjc1MTY1NDE0ODEwMTgwNjYsLTIuMjA5ODU3NDYzODM2
NjcsLTIuNDQzMTcwMDcwNjQ4MTkzNCwtMi40MTQ2OTA3MzI5NTU5MzI2Li4uXS4gCitQQVNTICAg
ay1yYXRlIFE6IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0
ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDc5OTkgZGlmZmVyZW50IHZhbHVl
cykuIAorUEFTUyA8IFtCaXF1YWQgay1yYXRlIFFdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsIDggYXNzZXJ0aW9ucykgCiBQQVNTID4gW0JpcXVhZCBrLXJhdGUgZGV0dW5lXSAgCiBQQVNT
ICAgay1yYXRlIGRldHVuZTogU2V0dGluZyBkZXR1bmUuYXV0b21hdGlvblJhdGUgdG8gImstcmF0
ZSIgaXMgZXF1YWwgdG8gay1yYXRlLiAKIFBBU1MgICBrLXJhdGUgZGV0dW5lOiBrLXJhdGUgbm9k
ZTogZGV0dW5lLnNldFZhbHVlQXRUaW1lKDAsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IApAQCAtMzYsOSArMzYsOSBAQCBQQVNTICAgay1yYXRlIGRldHVuZTogay1yYXRlIG5vZGU6IGRl
dHVuZS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgxMjAwLDEpIGRpZCBubwogUEFTUyAgIGstcmF0
ZSBkZXR1bmU6IGEtcmF0ZSBub2RlOmRldHVuZS5zZXRWYWx1ZUF0VGltZSgwLDApIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBrLXJhdGUgZGV0dW5lOiBhLXJhdGUgbm9kZTpk
ZXR1bmUubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTIwMCwxKSBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGRldHVuZTogT3V0cHV0IG9mIGstcmF0ZSBCaXF1YWRG
aWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1
NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIx
LDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0
LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3
MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMy
Mjg3NiwtMi40NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLVBBU1Mg
ICBrLXJhdGUgZGV0dW5lOiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRl
bnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDY3NTAwODI5Njk2NjU1LDAuODI4MDQyMzg3OTYy
MzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0NDY4NTEyNTM1MDk1MjEsMS42ODk5NTk4ODM2ODk4
ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2MjU0MTU1NjM1ODMzNzQsMC44OTQ1OTg1NDM2NDM5
NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAuNDI5NzIwMzQyMTU5MjcxMjQsLTEuMTM2MjY4NzM0
OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDksLTIuMjE3OTA3MTkwMzIyODc2LC0yLjQ1MTE4MDY5
NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3NC4uLl0uIAotRkFJTCBYIGstcmF0ZSBkZXR1bmU6
IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIHNo
b3VsZCBoYXZlIGNvbnRhaW4gYXQgbGVhc3Qgb25lIHZhbHVlIGRpZmZlcmVudCBmcm9tIDAuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtCaXF1YWQgay1yYXRl
IGRldHVuZV0gMSBvdXQgb2YgOCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBrLXJhdGUgZGV0dW5lOiBPdXRwdXQgb2Yg
YS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5
MDY3OTA5MTIxNTEzMzY3LDAuODI4MDYyNjUzNTQxNTY0OSwxLjIzNzE1MjU3NjQ0NjUzMzIsMS41
NDQ3MzA2NjMyOTk1NjA1LDEuNjg5OTcxNDQ2OTkwOTY2OCwxLjYzMzI4NzQyOTgwOTU3MDMsMS4z
NjIyODc2NDA1NzE1OTQyLDAuODk0MTA3NzU4OTk4ODcwOCwwLjI3MzgzNzkyNDAwMzYwMTEsLTAu
NDMwNzQ2MTk3NzAwNTAwNSwtMS4xMzc0NzE2NzU4NzI4MDI3LC0xLjc2MDAyOTE5NjczOTE5Njgs
LTIuMjE4OTIwOTQ2MTIxMjE2LC0yLjQ1MTcxNzM3NjcwODk4NDQsLTIuNDIxMzM2MTc0MDExMjMw
NS4uLl0uIAorUEFTUyAgIGstcmF0ZSBkZXR1bmU6IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUg
YW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5z
IDc5OTkgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyA8IFtCaXF1YWQgay1yYXRlIGRldHVuZV0g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgOCBhc3NlcnRpb25zKSAKIFBBU1MgPiBbQmlx
dWFkIGstcmF0ZSBmcmVxdWVuY3ldICAKIFBBU1MgICBrLXJhdGUgZnJlcXVlbmN5OiBTZXR0aW5n
IGZyZXF1ZW5jeS5hdXRvbWF0aW9uUmF0ZSB0byAiay1yYXRlIiBpcyBlcXVhbCB0byBrLXJhdGUu
IAogUEFTUyAgIGstcmF0ZSBmcmVxdWVuY3k6IGstcmF0ZSBub2RlOiBmcmVxdWVuY3kuc2V0VmFs
dWVBdFRpbWUoMzUwLDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKQEAgLTQ2LDkgKzQ2
LDkgQEAgUEFTUyAgIGstcmF0ZSBmcmVxdWVuY3k6IGstcmF0ZSBub2RlOiBmcmVxdWVuY3kubGlu
ZWFyUmFtcFRvVmFsdWVBdFRpbWUoMCwxKSBkaWQKIFBBU1MgICBrLXJhdGUgZnJlcXVlbmN5OiBh
LXJhdGUgbm9kZTpmcmVxdWVuY3kuc2V0VmFsdWVBdFRpbWUoMzUwLDApIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKIFBBU1MgICBrLXJhdGUgZnJlcXVlbmN5OiBhLXJhdGUgbm9kZTpmcmVx
dWVuY3kubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMCwxKSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCiBQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogT3V0cHV0IG9mIGstcmF0ZSBCaXF1YWRG
aWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1
NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIx
LDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0
LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3
MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMy
Mjg3NiwtMi40NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLVBBU1Mg
ICBrLXJhdGUgZnJlcXVlbmN5OiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMg
aWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDY3NTAwODI5Njk2NjU1LDAuODI4MDQyMzg3
OTYyMzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0NDY4NTEyNTM1MDk1MjEsMS42ODk5NTk4ODM2
ODk4ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2MjU0MTU1NjM1ODMzNzQsMC44OTQ1OTg1NDM2
NDM5NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAuNDI5NzIwMzQyMTU5MjcxMjQsLTEuMTM2MjY4
NzM0OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDksLTIuMjE3OTA3MTkwMzIyODc2LC0yLjQ1MTE4
MDY5NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3NC4uLl0uIAotRkFJTCBYIGstcmF0ZSBmcmVx
dWVuY3k6IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJO
b2RlIHNob3VsZCBoYXZlIGNvbnRhaW4gYXQgbGVhc3Qgb25lIHZhbHVlIGRpZmZlcmVudCBmcm9t
IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtCaXF1YWQg
ay1yYXRlIGZyZXF1ZW5jeV0gMSBvdXQgb2YgOCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBrLXJhdGUgZnJlcXVlbmN5
OiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBh
cnJheSBbMCwwLjM5MDY2OTEzNzIzOTQ1NjIsMC44MjgwMTMxODE2ODY0MDE0LDEuMjM3MDU0MTA5
NTczMzY0MywxLjU0NDYxOTMyMTgyMzEyMDEsMS42ODk5NDMwNzUxODAwNTM3LDEuNjMzNDkzMTg1
MDQzMzM1LDEuMzYyOTA3NjQ4MDg2NTQ3OSwwLjg5NTMwNjI4OTE5NjAxNDQsMC4yNzU3MDc0ODMy
OTE2MjYsLTAuNDI4MjQwMTgwMDE1NTYzOTYsLTEuMTM0NTMyMjEzMjExMDU5NiwtMS43NTcwNDMx
MjMyNDUyMzkzLC0yLjIxNjQzOTI0NzEzMTM0NzcsLTIuNDUwMzk3OTY4MjkyMjM2MywtMi40MjE4
NTIxMTE4MTY0MDYyLi4uXS4gCitQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogRGlmZmVyZW5jZSBi
ZXR3ZWVuIGEtcmF0ZSBhbmQgay1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgbm90IGNvbnN0YW50
bHkgMCAoY29udGFpbnMgNzk5OSBkaWZmZXJlbnQgdmFsdWVzKS4gCitQQVNTIDwgW0JpcXVhZCBr
LXJhdGUgZnJlcXVlbmN5XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA4IGFzc2VydGlv
bnMpIAogUEFTUyA+IFtCaXF1YWQgay1yYXRlIGdhaW5dICAKIFBBU1MgICBrLXJhdGUgZ2Fpbjog
U2V0dGluZyBnYWluLmF1dG9tYXRpb25SYXRlIHRvICJrLXJhdGUiIGlzIGVxdWFsIHRvIGstcmF0
ZS4gCiBQQVNTICAgay1yYXRlIGdhaW46IGstcmF0ZSBub2RlOiBnYWluLnNldFZhbHVlQXRUaW1l
KDEwLDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKQEAgLTU2LDggKzU2LDggQEAgUEFT
UyAgIGstcmF0ZSBnYWluOiBrLXJhdGUgbm9kZTogZ2Fpbi5saW5lYXJSYW1wVG9WYWx1ZUF0VGlt
ZSgwLDEpIGRpZCBub3QgdGhyb3cKIFBBU1MgICBrLXJhdGUgZ2FpbjogYS1yYXRlIG5vZGU6Z2Fp
bi5zZXRWYWx1ZUF0VGltZSgxMCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNT
ICAgay1yYXRlIGdhaW46IGEtcmF0ZSBub2RlOmdhaW4ubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUo
MCwxKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGdhaW46IE91
dHB1dCBvZiBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5
IFswLDAuMzkwNjc1MDA4Mjk2OTY2NTUsMC44MjgwNDIzODc5NjIzNDEzLDEuMjM3MTEyMjgzNzA2
NjY1LDEuNTQ0Njg1MTI1MzUwOTUyMSwxLjY4OTk1OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3Nzcy
ODI3LDEuMzYyNTQxNTU2MzU4MzM3NCwwLjg5NDU5ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2NTQx
MjkwMywtMC40Mjk3MjAzNDIxNTkyNzEyNCwtMS4xMzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgwNzg5
NzU2Nzc0OSwtMi4yMTc5MDcxOTAzMjI4NzYsLTIuNDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1NTE5
NDI4MjUzMTc0Li4uXS4gCi1QQVNTICAgay1yYXRlIGdhaW46IE91dHB1dCBvZiBhLXJhdGUgQmlx
dWFkRmlsdGVyTm9kZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMzkwNjc1MDA4Mjk2
OTY2NTUsMC44MjgwNDIzODc5NjIzNDEzLDEuMjM3MTEyMjgzNzA2NjY1LDEuNTQ0Njg1MTI1MzUw
OTUyMSwxLjY4OTk1OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3NzcyODI3LDEuMzYyNTQxNTU2MzU4
MzM3NCwwLjg5NDU5ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2NTQxMjkwMywtMC40Mjk3MjAzNDIx
NTkyNzEyNCwtMS4xMzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgwNzg5NzU2Nzc0OSwtMi4yMTc5MDcx
OTAzMjI4NzYsLTIuNDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1NTE5NDI4MjUzMTc0Li4uXS4gCi1G
QUlMIFggay1yYXRlIGdhaW46IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBC
aXF1YWRGaWx0ZXJOb2RlIHNob3VsZCBoYXZlIGNvbnRhaW4gYXQgbGVhc3Qgb25lIHZhbHVlIGRp
ZmZlcmVudCBmcm9tIDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJ
TCA8IFtCaXF1YWQgay1yYXRlIGdhaW5dIDEgb3V0IG9mIDggYXNzZXJ0aW9ucyB3ZXJlIGZhaWxl
ZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMICMgQVVESVQgVEFT
SyBSVU5ORVIgRklOSVNIRUQ6IDQgb3V0IG9mIDUgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGstcmF0ZSBnYWluOiBPdXRwdXQg
b2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCww
LjM5MDY2NzU1NzcxNjM2OTYzLDAuODI4MDAwMDY4NjY0NTUwOCwxLjIzNzAwNDc1NjkyNzQ5MDIs
MS41NDQ0OTIyNDQ3MjA0NTksMS42ODk2ODU0NjM5MDUzMzQ1LDEuNjMzMDU0MDE4MDIwNjI5OSwx
LjM2MjI1NzQ4MDYyMTMzOCwwLjg5NDQ1ODgzMDM1NjU5NzksMC4yNzQ3Mzg2OTkxOTc3NjkxNywt
MC40MjkxODE2NjUxODIxMTM2NSwtMS4xMzUyMjgwMzc4MzQxNjc1LC0xLjc1NzIyMzk2MzczNzQ4
NzgsLTIuMjE1ODE5ODM1NjYyODQyLC0yLjQ0ODcyNDAzMTQ0ODM2NDMsLTIuNDE4OTU0NjEwODI0
NTg1Li4uXS4gCitQQVNTICAgay1yYXRlIGdhaW46IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUg
YW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5z
IDc5OTkgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyA8IFtCaXF1YWQgay1yYXRlIGdhaW5dIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDggYXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQg
VEFTSyBSVU5ORVIgRklOSVNIRUQ6IDUgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2UvYmlxdWFkLWF1
dG9tYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWlu
dGVyZmFjZS9iaXF1YWQtYXV0b21hdGlvbi1leHBlY3RlZC50eHQKaW5kZXggNTkwZDczNDA5NmFk
MTk4NGFmYWNkNzhkMjVkNGVlODg3NWM5NTFiNC4uOGNlNGEyOGJjYTVkMjA5MTI3ZDgwNDBiYTFh
MTZlZmE3NTkyYTUwOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2Rl
LWludGVyZmFjZS9iaXF1YWQtYXV0b21hdGlvbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFjZS9iaXF1YWQtYXV0b21hdGlvbi1leHBlY3Rl
ZC50eHQKQEAgLTgsOTQgKzgsMjcgQEAgUEFTUyBFeGVjdXRpbmcgImF1dG9tYXRlLWFsbCIKIFBB
U1MgRXhlY3V0aW5nICJtb2R1bGF0aW9uIiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFth
dXRvbWF0ZS1mcmVxXSAgCi1GQUlMIFggT3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRoIGZy
ZXF1ZW5jeSBhdXRvbWF0aW9uIGRvZXMgbm90IGVxdWFsIFswLDAuMjcyMjIyNzU3MzM5NDc3NTQs
MC4xNzAzNDgzNzYwMzU2OTAzLC0wLjQ4MDYyNjE5NTY2OTE3NDIsLTAuMjc4ODQzNzYwNDkwNDE3
NSwwLjM5NTcwNTY5OTkyMDY1NDMsMC4xMDg0MDMyNDMxMjQ0ODUwMiwtMC4zOTY3NzIyMDU4Mjk2
MjAzNiwwLjA2ODcxMjM1MzcwNjM1OTg2LDAuNDEwMDQ0NzU5NTExOTQ3NjMsLTAuMTg5NzYyOTA1
MjQwMDU4OSwtMC4zNTkwMTQ2NjAxMjAwMTA0LDAuMjkyNDg1NDc1NTQwMTYxMTMsMC4yNjE0NTQy
MjQ1ODY0ODY4LC0wLjM3NjcyMjEyNzE5OTE3MywtMC4xNDE5NTAwNTU5NTY4NDA1Mi4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAw
MDA0NjQ1NSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVk
CQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzFdCTIuNzIwNzc0MTE0MTMx
OTI3NWUtMQkyLjcyMjIyNzU3MzM5NDc3NTRlLTEJMS40NTM0NTkyNjI4NDc5MDA0ZS00CTUuMzM5
MjI3NjEyOTA0MzU1N2UtNAk0LjY0NTQ5OTk5OTk5OTk5OThlLTYKLQlbMl0JMS43MDkyNDkzMTc2
NDYwMjY2ZS0xCTEuNzAzNDgzNzYwMzU2OTAzMWUtMQk1Ljc2NTU1NzI4OTEyMzUzNTJlLTQJMy4z
ODQ1NjgzOTA1NTI1MzAxZS0zCTQuNjQ1NDk5OTk5OTk5OTk5OGUtNgotCVszXQktNC43ODg0NTgz
NDczMjA1NTY2ZS0xCS00LjgwNjI2MTk1NjY5MTc0MTllLTEJMS43ODAzNjA5MzcxMTg1MzAzZS0z
CTMuNzA0MjUyODEyNjAzNjQ5MmUtMwk0LjY0NTQ5OTk5OTk5OTk5OThlLTYKLQlbNF0JLTIuODAz
NTIxNDU0MzM0MjU5MGUtMQktMi43ODg0Mzc2MDQ5MDQxNzQ4ZS0xCTEuNTA4Mzg0OTQzMDA4NDIy
OWUtMwk1LjQwOTQyNjkxNDc1NTIyMTRlLTMJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0JWzVdCTMu
OTE0MjUzMTE1NjUzOTkxN2UtMQkzLjk1NzA1Njk5OTIwNjU0MzBlLTEJNC4yODAzODgzNTUyNTUx
MjcwZS0zCTEuMDgxNzEwMDU3NzgxMTc4NmUtMgk0LjY0NTQ5OTk5OTk5OTk5OThlLTYKLQkuLi5h
bmQgMjA3MiBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMi4xMTkwMTA2MTIzNjg1ODM3
ZS0xIGF0IGluZGV4IG9mIDExNDkuCi0JWzExNDldCS0xLjE0Njg4NDAzOTA0NDM4MDJlLTEJOS43
MjEyNjU3MzMyNDIwMzQ5ZS0yCTIuMTE5MDEwNjEyMzY4NTgzN2UtMQkyLjE3OTc2ODIyMjA3Njg3
NDhlKzAJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0JTWF4IFJlbEVycm9yIG9mIDkuNjY5OTQ2Mjg3
OTgxMTY0OGUrMSBhdCBpbmRleCBvZiAxMDAwLgotCVsxMDAwXQktMS43NTM4OTE3MDY0NjY2NzQ4
ZS0xCS0xLjc5NTE5MDczNTcyMDA5ODBlLTMJMS43MzU5Mzk3OTkxMDk0NzM4ZS0xCTkuNjY5OTQ2
Mjg3OTgxMTY0OGUrMQk0LjY0NTQ5OTk5OTk5OTk5OThlLTYKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbYXV0b21hdGUtZnJlcV0gMSBvdXQgb2YgMSBhc3Nl
cnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
K1BBU1MgICBPdXRwdXQgb2YgYmFuZHBhc3MgZmlsdGVyIHdpdGggZnJlcXVlbmN5IGF1dG9tYXRp
b24gZXF1YWxzIFswLDAuMjcyMjIyNzU3MzM5NDc3NTQsMC4xNzAzNDgzNzYwMzU2OTAzLC0wLjQ4
MDYyNjE5NTY2OTE3NDIsLTAuMjc4ODQzNzYwNDkwNDE3NSwwLjM5NTcwNTY5OTkyMDY1NDMsMC4x
MDg0MDMyNDMxMjQ0ODUwMiwtMC4zOTY3NzIyMDU4Mjk2MjAzNiwwLjA2ODcxMjM1MzcwNjM1OTg2
LDAuNDEwMDQ0NzU5NTExOTQ3NjMsLTAuMTg5NzYyOTA1MjQwMDU4OSwtMC4zNTkwMTQ2NjAxMjAw
MTA0LDAuMjkyNDg1NDc1NTQwMTYxMTMsMC4yNjE0NTQyMjQ1ODY0ODY4LC0wLjM3NjcyMjEyNzE5
OTE3MywtMC4xNDE5NTAwNTU5NTY4NDA1Mi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDA0NjQ1NSwicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LiAKK1BBU1MgPCBbYXV0b21hdGUtZnJlcV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbYXV0b21hdGUtcV0gIAogRkFJTCBYIE91dHB1
dCBvZiBiYW5kcGFzcyBmaWx0ZXIgd2l0aCBRIGF1dG9tYXRpb24gZG9lcyBub3QgZXF1YWwgWzAs
MC4wMTMxMTQ3ODExMTg5MjkzODYsMC4wNDc4MjMzODQ0MDQxODI0MzQsMC4wOTc2NTI5MzQ0OTE2
MzQzNywwLjE1NjU3MTI1NDEzNDE3ODE2LDAuMjE4OTkwNTQ5NDQ1MTUyMjgsMC4yNzk4MTc0NjE5
Njc0NjgyNiwwLjMzNDUyNDQ4MjQ4ODYzMjIsMC4zNzkyMjY5NTI3OTEyMTQsMC40MTA3NTQyMzM1
OTg3MDkxLDAuNDI2NzA3OTgzMDE2OTY3OCwwLjQyNTUwMTY3NDQxMzY4MTAzLDAuNDA2Mzc4NDQ4
MDA5NDkwOTcsMC4zNjk0MDUwOTA4MDg4Njg0LDAuMzE1NDQxMjIwOTk4NzY0MDQsMC4yNDYwODQ2
OTAwOTM5OTQxNC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1
dGVUaHJlc2hvbGQiOjkuODM0OGUtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFj
dHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzFd
CTEuNDMxMTA4MTcyOTgyOTMxMWUtMgkxLjMxMTQ3ODExMTg5MjkzODZlLTIJMS4xOTYzMDA2MTA4
OTk5MjUyZS0zCTkuMTIxNzczMzY0MzU0NzM5MWUtMgk5LjgzNDgwMDAwMDAwMDAwMDdlLTcKLQlb
Ml0JNS4zOTk5NDAxNjI4OTcxMTAwZS0yCTQuNzgyMzM4NDQwNDE4MjQzNGUtMgk2LjE3NjAxNzIy
NDc4ODY2NThlLTMJMS4yOTE0MjIwMzE2NTU0MDQzZS0xCTkuODM0ODAwMDAwMDAwMDAwN2UtNwot
CVszXQkxLjEyMzY0NDYzNTA4MTI5MTJlLTEJOS43NjUyOTM0NDkxNjM0MzY5ZS0yCTEuNDcxMTUy
OTAxNjQ5NDc1MWUtMgkxLjUwNjUxMTcxODU3NTY1MDVlLTEJOS44MzQ4MDAwMDAwMDAwMDA3ZS03
Ci0JWzRdCTEuODI0NDk4NzcyNjIxMTU0OGUtMQkxLjU2NTcxMjU0MTM0MTc4MTZlLTEJMi41ODc4
NjIzMTI3OTM3MzE3ZS0yCTEuNjUyODMzNjEwNTUyNzk2NmUtMQk5LjgzNDgwMDAwMDAwMDAwMDdl
LTcKLQlbNV0JMi41NzM1OTYyMzkwODk5NjU4ZS0xCTIuMTg5OTA1NDk0NDUxNTIyOGUtMQkzLjgz
NjkwNzQ0NjM4NDQyOTllLTIJMS43NTIwODgxNDA4Mzc5NzI3ZS0xCTkuODM0ODAwMDAwMDAwMDAw
N2UtNwotCS4uLmFuZCAzOTk0IG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiA0Ljg3NjQ3
MzA5ODk5MzMwMTRlLTEgYXQgaW5kZXggb2YgMTIzLgotCVsxMjNdCTUuODM1Njc5NzY5NTE1OTkx
MmUtMQk5LjU5MjA2NjcwNTIyNjg5ODJlLTIJNC44NzY0NzMwOTg5OTMzMDE0ZS0xCTUuMDgzODYw
NzAzNjk1OTE4OWUrMAk5LjgzNDgwMDAwMDAwMDAwMDdlLTcKLQlNYXggUmVsRXJyb3Igb2YgMS4z
NzMzOTM1Njk0ODQ4ODYwZSs1IGF0IGluZGV4IG9mIDEwNi4KLQlbMTA2XQktNC4wODI0MTM2MTM3
OTYyMzQxZS0xCS0yLjk3MjQ3OTI1MTE4NDI2NzllLTYJNC4wODIzODM4ODkwMDM3MjIzZS0xCTEu
MzczMzkzNTY5NDg0ODg2MGUrNQk5LjgzNDgwMDAwMDAwMDAwMDdlLTcKKwlbMjUyXQk1LjIyNzA4
NDE1OTg1MTA3NDJlLTEJNS4yMjcwOTQyOTI2NDA2ODYwZS0xCTEuMDEzMjc4OTYxMTgxNjQwNmUt
NgkxLjkzODUxMjg4MDEwNjc0MTNlLTYJOS44MzQ4MDAwMDAwMDAwMDA3ZS03CisJTWF4IEFic0Vy
cm9yIG9mIDEuMDEzMjc4OTYxMTgxNjQwNmUtNiBhdCBpbmRleCBvZiAyNTIuCisJTWF4IFJlbEVy
cm9yIG9mIDEuOTM4NTEyODgwMTA2NzQxM2UtNiBhdCBpbmRleCBvZiAyNTIuCiAgYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIDwgW2F1dG9tYXRlLXFdIDEgb3V0IG9m
IDEgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCiBQQVNTID4gW2F1dG9tYXRlLWdhaW5dICAKLUZBSUwgWCBPdXRwdXQgb2YgbG93c2hl
bGYgZmlsdGVyIHdpdGggZ2FpbiBhdXRvbWF0aW9uIGRvZXMgbm90IGVxdWFsIFswLDAuNDc4MTM1
Njc1MTkxODc5MywxLjU1MTEzODUyMDI0MDc4MzcsMy4wNDI4MTU0NDY4NTM2Mzc3LDQuNjQ5NDQw
Mjg4NTQzNzAxLDYuMTQ4MDk5ODk5MjkxOTkyLDcuNDI0ODkyOTAyMzc0MjY4LDguNDM2NDczODQ2
NDM1NTQ3LDkuMTY5NTM4NDk3OTI0ODA1LDkuNjE4NTY0NjA1NzEyODksOS43Nzk0Mzg5NzI0NzMx
NDUsOS42NTA4NzMxODQyMDQxMDIsOS4yMzc0NzYzNDg4NzY5NTMsOC41NTE3NTM5OTc4MDI3MzQs
Ny42MTQ2MTU0NDAzNjg2NTIsNi40NTQ4MTk2NzkyNjAyNTQuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzY1NywicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVs
RXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzFdCTQuNzg2MzAxNTUzMjQ5MzU5MWUtMQk0Ljc4MTM1
Njc1MTkxODc5MjdlLTEJNC45NDQ4MDEzMzA1NjY0MDYzZS00CTEuMDM0MTgzNzIzODEwNjE1NWUt
MwkyLjc2NTcwMDAwMDAwMDAwMDBlLTUKLQlbMl0JMS41NTUwNjQwODIxNDU2OTA5ZSswCTEuNTUx
MTM4NTIwMjQwNzgzN2UrMAkzLjkyNTU2MTkwNDkwNzIyNjZlLTMJMi41MzA3NjE2NjU1MDA5Mzgx
ZS0zCTIuNzY1NzAwMDAwMDAwMDAwMGUtNQotCVszXQkzLjA1NjA1Njk3NjMxODM1OTRlKzAJMy4w
NDI4MTU0NDY4NTM2Mzc3ZSswCTEuMzI0MTUyOTQ2NDcyMTY4MGUtMgk0LjM1MTczNTk4MTM2MzUx
NTRlLTMJMi43NjU3MDAwMDAwMDAwMDAwZS01Ci0JWzRdCTQuNjc5NDgzNDEzNjk2Mjg5MWUrMAk0
LjY0OTQ0MDI4ODU0MzcwMTJlKzAJMy4wMDQzMTI1MTUyNTg3ODkxZS0yCTYuNDYxNjY0OTA3NjI2
NTQ5MmUtMwkyLjc2NTcwMDAwMDAwMDAwMDBlLTUKLQlbNV0JNi4yMDIyMTI4MTA1MTYzNTc0ZSsw
CTYuMTQ4MDk5ODk5MjkxOTkyMmUrMAk1LjQxMTI5MTEyMjQzNjUyMzRlLTIJOC44MDE1NjY2ODA4
ODU3MTc4ZS0zCTIuNzY1NzAwMDAwMDAwMDAwMGUtNQotCS4uLmFuZCAyMDQ4IG1vcmUgZXJyb3Jz
LgotCU1heCBBYnNFcnJvciBvZiAyLjQwOTAyMTM3NzU2MzQ3NjZlKzAgYXQgaW5kZXggb2YgMTIw
LgotCVsxMjBdCTkuOTA5ODgxNTkxNzk2ODc1MGUrMAk3LjUwMDg2MDIxNDIzMzM5ODRlKzAJMi40
MDkwMjEzNzc1NjM0NzY2ZSswCTMuMjExNjYwMTQxMzE1NzgyNWUtMQkyLjc2NTcwMDAwMDAwMDAw
MDBlLTUKLQlNYXggUmVsRXJyb3Igb2YgMS4wNjMyMjkyNDE5NTI1Mzc1ZSsyIGF0IGluZGV4IG9m
IDEwMDAuCi0JWzEwMDBdCTIuMjk2ODE5NzI0MTQyNTUxNGUtMgktMi4xODA3NDA1NTczNzgxNTgw
ZS00CTIuMzE4NjI3MTI5NzE2MzMzMGUtMgkxLjA2MzIyOTI0MTk1MjUzNzVlKzIJMi43NjU3MDAw
MDAwMDAwMDAwZS01Ci0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlM
IDwgW2F1dG9tYXRlLWdhaW5dIDEgb3V0IG9mIDEgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgT3V0cHV0IG9mIGxvd3No
ZWxmIGZpbHRlciB3aXRoIGdhaW4gYXV0b21hdGlvbiBlcXVhbHMgWzAsMC40NzgxMzU2NzUxOTE4
NzkzLDEuNTUxMTM4NTIwMjQwNzgzNywzLjA0MjgxNTQ0Njg1MzYzNzcsNC42NDk0NDAyODg1NDM3
MDEsNi4xNDgwOTk4OTkyOTE5OTIsNy40MjQ4OTI5MDIzNzQyNjgsOC40MzY0NzM4NDY0MzU1NDcs
OS4xNjk1Mzg0OTc5MjQ4MDUsOS42MTg1NjQ2MDU3MTI4OSw5Ljc3OTQzODk3MjQ3MzE0NSw5LjY1
MDg3MzE4NDIwNDEwMiw5LjIzNzQ3NjM0ODg3Njk1Myw4LjU1MTc1Mzk5NzgwMjczNCw3LjYxNDYx
NTQ0MDM2ODY1Miw2LjQ1NDgxOTY3OTI2MDI1NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDI3NjU3LCJyZWxhdGl2ZVRocmVz
aG9sZCI6MH0uIAorUEFTUyA8IFthdXRvbWF0ZS1nYWluXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFthdXRvbWF0ZS1kZXR1bmVdICAKLUZBSUwg
WCBPdXRwdXQgb2YgYmFuZHBhc3MgZmlsdGVyIHdpdGggZGV0dW5lIGF1dG9tYXRpb24gZG9lcyBu
b3QgZXF1YWwgWzAsMC4wMDA4MzgzODU2NjIwNjM5NTYzLDAuMDAxNDExMjA3OTUxNjA1MzIsMC4w
MDAzNjYwOTM2NDkwNjMyNTkzNiwwLjAwMDEwMDAwOTM3NjE4MzE1MjIsMC4wMDEyMjkwMjk3MzA4
OTM2NzE1LDAuMDAxMTI4NjMwNDc5Nzk3NzIxLDAuMDAwMDAxMDA3NTQwMTYzMzAwMjkxMiwwLjAw
MDQ0MzYxOTM1NTc5MjE3OTcsMC4wMDE0MzMxMDM2OTQ1ODA0OTU0LDAuMDAwNjU4MTU5Mzc3MDUz
MzgsLTAuMDAwMTE1Mzc3MjkwMDU3OTQ5NzIsMC4wMDA4OTk3MjI3OTk2NTg3NzUzLDAuMDAxMzQ5
ODk2MDc2MTM1MzM3NCwwLjAwMDE2NDQ2OTI2NzQ3NDQ4NzQyLDAuMDAwMDY3MTgyMzIxNzk5OTE5
MDEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjowLjAwMDAzMTQ3MSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJ
CUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzRdCTEuMzMw
NjAwMjA3NDM4NjkyNWUtNAkxLjAwMDA5Mzc2MTgzMTUyMjBlLTQJMy4zMDUwNjQ0NTYwNzE3MDQ2
ZS01CTMuMzA0NzU0NTk2MjI4MDMxN2UtMQkzLjE0NzA5OTk5OTk5OTk5OTdlLTUKLQlbN10JNi45
NzkxNjI1NzE5NTE3NDY5ZS01CTEuMDA3NTQwMTYzMzAwMjkxMmUtNgk2Ljg3ODQwODU1NTYyMTcx
NzhlLTUJNi44MjY5MzIzNzA3MDY1NDY3ZSsxCTMuMTQ3MDk5OTk5OTk5OTk5N2UtNQotCVs4XQk0
Ljg4Njc0ODUwMjAzMDk2ODdlLTQJNC40MzYxOTM1NTc5MjE3OTcwZS00CTQuNTA1NTQ5NDQxMDkx
NzE2M2UtNQkxLjAxNTYzNDA5NzYyNTQ0NDllLTEJMy4xNDcwOTk5OTk5OTk5OTk3ZS01Ci0JWzEw
XQk3LjA3OTAxNDkwMzg2NTc1NDZlLTQJNi41ODE1OTM3NzA1MzM4MDAxZS00CTQuOTc0MjExMzMz
MzE5NTQ0OGUtNQk3LjU1Nzc2MTA5MzY1Njk3MjhlLTIJMy4xNDcwOTk5OTk5OTk5OTk3ZS01Ci0J
WzExXQktNC40MjEyNjYxMTIzMzEwNjgxZS02CS0xLjE1Mzc3MjkwMDU3OTQ5NzJlLTQJMS4xMDk1
NjAyMzk0NTYxODY1ZS00CTkuNjE2Nzk5Mjc1NjUzNzc2OGUtMQkzLjE0NzA5OTk5OTk5OTk5OTdl
LTUKLQkuLi5hbmQgMTEyNiBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMS4wMTc4MDA0
MzU0MjM4NTEwZSswIGF0IGluZGV4IG9mIDEwMTUuCi0JWzEwMTVdCS0xLjQ1NzAwNjE4NjI0Njg3
MTllLTEJOC43MjA5OTgxNjc5OTE2MzgyZS0xCTEuMDE3ODAwNDM1NDIzODUxMGUrMAkxLjE2NzA2
ODc0MTIzNTg5MDdlKzAJMy4xNDcwOTk5OTk5OTk5OTk3ZS01Ci0JTWF4IFJlbEVycm9yIG9mIElu
ZmluaXR5IGF0IGluZGV4IG9mIDEwODcuCi0JWzEwODddCTEuMDAxNzc5MDY0NTM2MDk0N2UtMQkw
LjAwMDAwMDAwMDAwMDAwMDBlKzAJMS4wMDE3NzkwNjQ1MzYwOTQ3ZS0xCUluZmluaXR5CTMuMTQ3
MDk5OTk5OTk5OTk5N2UtNQotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCA8IFthdXRvbWF0ZS1kZXR1bmVdIDEgb3V0IG9mIDEgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxl
ZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgT3V0cHV0IG9m
IGJhbmRwYXNzIGZpbHRlciB3aXRoIGRldHVuZSBhdXRvbWF0aW9uIGVxdWFscyBbMCwwLjAwMDgz
ODM4NTY2MjA2Mzk1NjMsMC4wMDE0MTEyMDc5NTE2MDUzMiwwLjAwMDM2NjA5MzY0OTA2MzI1OTM2
LDAuMDAwMTAwMDA5Mzc2MTgzMTUyMiwwLjAwMTIyOTAyOTczMDg5MzY3MTUsMC4wMDExMjg2MzA0
Nzk3OTc3MjEsMC4wMDAwMDEwMDc1NDAxNjMzMDAyOTEyLDAuMDAwNDQzNjE5MzU1NzkyMTc5Nyww
LjAwMTQzMzEwMzY5NDU4MDQ5NTQsMC4wMDA2NTgxNTkzNzcwNTMzOCwtMC4wMDAxMTUzNzcyOTAw
NTc5NDk3MiwwLjAwMDg5OTcyMjc5OTY1ODc3NTMsMC4wMDEzNDk4OTYwNzYxMzUzMzc0LDAuMDAw
MTY0NDY5MjY3NDc0NDg3NDIsMC4wMDAwNjcxODIzMjE3OTk5MTkwMS4uLl0gd2l0aCBhbiBlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDMxNDcxLCJy
ZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFthdXRvbWF0ZS1kZXR1bmVdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2F1dG9tYXRlLWFs
bF0gIAotRkFJTCBYIE91dHB1dCBvZiBwZWFraW5nIGZpbHRlciB3aXRoIGF1dG9tYXRpb24gb2Yg
YWxsIHBhcmFtZXRlcnMgZG9lcyBub3QgZXF1YWwgWzAsMC45ODc2ODgzNjI1OTg0MTkyLC0wLjMw
OTAxNzAwMjU4MjU1MDA1LC0wLjg5MTAwNjUyOTMzMTIwNzMsMC41ODc3ODUyNDM5ODgwMzcxLDAu
NzA3MTA2NzY5MDg0OTMwNCwtMC44MDkwMTcwMDI1ODI1NSwtMC40NTM5OTA0ODkyNDQ0NjEwNiww
Ljk1MTA1NjU0MDAxMjM1OTYsMC4xNTY0MzQ0NjE0NzQ0MTg2NCwtMSwwLjE1NjQzNDQ2MTQ3NDQx
ODY0LDAuOTUxMDU2NTQwMDEyMzU5NiwtMC40NTM5OTA0ODkyNDQ0NjEwNiwtMC44MDkwMTcwMDI1
ODI1NSwwLjcwNzEwNjc2OTA4NDkzMDQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5j
ZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDYyOTA3LCJyZWxhdGl2ZVRocmVzaG9sZCI6
MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0
aHJlc2hvbGQKLQlbNjk3XQktOC45MTAwNjUyOTMzMTIwNzI4ZS0xCS04Ljk2NTk0ODIyNDA2NzY4
ODBlLTEJNS41ODgyOTMwNzU1NjE1MjM0ZS0zCTYuMjMyNzk2NTA1MDcwODQ1MGUtMwk2LjI5MDcw
MDAwMDAwMDAwMDJlLTQKLQlbNjk4XQktMy4wOTAxNzAwMjU4MjU1MDA1ZS0xCS0zLjA0ODI5NjI3
Mjc1NDY2OTJlLTEJNC4xODczNzUzMDcwODMxMjk5ZS0zCTEuMzczNjc3MjcxNjMxODM2NGUtMgk2
LjI5MDcwMDAwMDAwMDAwMDJlLTQKLQlbNjk5XQk5Ljg3Njg4MzYyNTk4NDE5MTllLTEJMS4wMDcy
NjAzMjI1NzA4MDA4ZSswCTEuOTU3MTk1OTk3MjM4MTU5MmUtMgkxLjk0MzA4ODU0NzU5ODk2MThl
LTIJNi4yOTA3MDAwMDAwMDAwMDAyZS00Ci0JWzcwMF0JLTUuNTg3OTc5MzUyMjQzMDA1NWUtMTQJ
LTMuNzcyNjk0OTkwMDM4ODcxOGUtMgkzLjc3MjY5NDk5MDAzMzI4MzllLTIJOS45OTk5OTk5OTk5
ODUxODg1ZS0xCTYuMjkwNzAwMDAwMDAwMDAwMmUtNAotCVs3MDFdCS05Ljg3Njg4MzYyNTk4NDE5
MTllLTEJLTkuNzI0NjIyOTY0ODU5MDA4OGUtMQkxLjUyMjYwNjYxMTI1MTgzMTFlLTIJMS41NjU3
MjMwMjc3NzU5MjIwZS0yCTYuMjkwNzAwMDAwMDAwMDAwMmUtNAotCS4uLmFuZCAzMjkwIG1vcmUg
ZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAxLjAwMDA3ODI0ODk3NzY2MTFlKzEgYXQgaW5kZXgg
b2YgMjAzMC4KLQlbMjAzMF0JMS4yNzc2MDY0ODcyNzQxNjk5ZSswCTEuMTI3ODM4ODk3NzA1MDc4
MWUrMQkxLjAwMDA3ODI0ODk3NzY2MTFlKzEJOC44NjcyMDgzNDg3NTEwMTU2ZS0xCTYuMjkwNzAw
MDAwMDAwMDAwMmUtNAotCU1heCBSZWxFcnJvciBvZiA3LjI2MjY4MTgxNTczNzMxNjVlKzEgYXQg
aW5kZXggb2YgODk4LgotCVs4OThdCS0yLjA5MTA2MjgxMzk5NzI2ODdlLTEJLTIuODQwMDgzMDky
NDUxMDk1NmUtMwkyLjA2MjY2MTk4MzA3Mjc1NzdlLTEJNy4yNjI2ODE4MTU3MzczMTY1ZSsxCTYu
MjkwNzAwMDAwMDAwMDAwMmUtNAotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQotRkFJTCA8IFthdXRvbWF0ZS1hbGxdIDEgb3V0IG9mIDEgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxl
ZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgT3V0cHV0IG9m
IHBlYWtpbmcgZmlsdGVyIHdpdGggYXV0b21hdGlvbiBvZiBhbGwgcGFyYW1ldGVycyBlcXVhbHMg
WzAsMC45ODc2ODgzNjI1OTg0MTkyLC0wLjMwOTAxNzAwMjU4MjU1MDA1LC0wLjg5MTAwNjUyOTMz
MTIwNzMsMC41ODc3ODUyNDM5ODgwMzcxLDAuNzA3MTA2NzY5MDg0OTMwNCwtMC44MDkwMTcwMDI1
ODI1NSwtMC40NTM5OTA0ODkyNDQ0NjEwNiwwLjk1MTA1NjU0MDAxMjM1OTYsMC4xNTY0MzQ0NjE0
NzQ0MTg2NCwtMSwwLjE1NjQzNDQ2MTQ3NDQxODY0LDAuOTUxMDU2NTQwMDEyMzU5NiwtMC40NTM5
OTA0ODkyNDQ0NjEwNiwtMC44MDkwMTcwMDI1ODI1NSwwLjcwNzEwNjc2OTA4NDkzMDQuLi5dIHdp
dGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAw
MDYyOTA3LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFthdXRvbWF0ZS1hbGxdIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW21vZHVs
YXRpb25dICAKLUZBSUwgWCBPdXRwdXQgb2YgYmFuZHBhc3MgZmlsdGVyIHdpdGggc2ludXNvaWRh
bCBtb2R1bGF0aW9uIG9mIGJhbmRwYXNzIGNlbnRlciBmcmVxdWVuY3kgZG9lcyBub3QgZXF1YWwg
WzAsMC4wMDE4MDAzNzM4OTUwOTM3OTg2LDAuMDA3MTY1ODEyNDIxNTkwMDksMC4wMTU4NjI1NjM2
MjQ5NzgwNjUsMC4wMjc0OTY1NDQ2NDQyMzY1NjUsMC4wNDE1MTkxMTY2MTAyODg2MiwwLjA1NzIz
OTcyMjQ2MDUwODM1LDAuMDczODQ1NDUzNTYwMzUyMzMsMC4wOTA0MjczMTY3MjUyNTQwNiwwLjEw
NjAxMjU5NzY4MDA5MTg2LDAuMTE5NjAyNDQ5MjM4MzAwMzIsMC4xMzAyMTM0OTkwNjkyMTM4Nyww
LjEzNjkyMTg5NzUzMDU1NTczLDAuMTM4OTA4MTkyNTE1MzczMjMsMC4xMzU1MDA4MzMzOTIxNDMy
NSwwLjEyNjIxNjUxNTg5ODcwNDUzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ug
b2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMzk3ODcsInJlbGF0aXZlVGhyZXNob2xkIjow
fS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRo
cmVzaG9sZAotCVsyXQk2LjkzNjgzMjc5Njc4MjI1NTJlLTMJNy4xNjU4MTI0MjE1OTAwODk4ZS0z
CTIuMjg5Nzk2MjQ4MDc4MzQ2M2UtNAkzLjE5NTQ0NTQxOTY2OTg2MzBlLTIJMy45Nzg2OTk5OTk5
OTk5OTk3ZS01Ci0JWzNdCTEuNTI0NjcwNzAxNDczOTUxM2UtMgkxLjU4NjI1NjM2MjQ5NzgwNjVl
LTIJNi4xNTg1NjYxMDIzODU1MjA5ZS00CTMuODgyNDUzMjA3NDI5NzkwM2UtMgkzLjk3ODY5OTk5
OTk5OTk5OTdlLTUKLQlbNF0JMi42MjgzNjUzNDUyOTkyNDM5ZS0yCTIuNzQ5NjU0NDY0NDIzNjU2
NWUtMgkxLjIxMjg5MTE5MTI0NDEyNTRlLTMJNC40MTEwNjc2NzAyNzMwODgyZS0yCTMuOTc4Njk5
OTk5OTk5OTk5N2UtNQotCVs1XQkzLjk1Mjg5MjQ5NzE4MTg5MjRlLTIJNC4xNTE5MTE2NjEwMjg4
NjIwZS0yCTEuOTkwMTkxNjM4NDY5Njk2MGUtMwk0Ljc5MzQzNDQ0ODg4MzUyNDBlLTIJMy45Nzg2
OTk5OTk5OTk5OTk3ZS01Ci0JWzZdCTUuNDM3MDExMjcxNzE1MTY0MmUtMgk1LjcyMzk3MjI0NjA1
MDgzNDdlLTIJMi44Njk2MDk3NDMzNTY3MDQ3ZS0zCTUuMDEzMzE4NzU4Mzc4OTMzOWUtMgkzLjk3
ODY5OTk5OTk5OTk5OTdlLTUKLQkuLi5hbmQgMzk5MyBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJy
b3Igb2YgMS4yNzk4MDQ4ODUzODc0MjA3ZSswIGF0IGluZGV4IG9mIDM1MjAuCi0JWzM1MjBdCS02
LjI2NTgzMzk3Mzg4NDU4MjVlLTEJNi41MzIyMTQ4Nzk5ODk2MjQwZS0xCTEuMjc5ODA0ODg1Mzg3
NDIwN2UrMAkxLjk1OTIyMDQzMTIwMTUxMjVlKzAJMy45Nzg2OTk5OTk5OTk5OTk3ZS01Ci0JTWF4
IFJlbEVycm9yIG9mIDEuMzM1MzYzNjEwNTIxNzIwNmUrMyBhdCBpbmRleCBvZiAyODIxLgotCVsy
ODIxXQkxLjU4MDI5OTQzNzA0NjA1MTBlLTEJMS4xODI1MzcwMTY1NzUyMjQ3ZS00CTEuNTc5MTE2
OTAwMDI5NDc1OGUtMQkxLjMzNTM2MzYxMDUyMTcyMDZlKzMJMy45Nzg2OTk5OTk5OTk5OTk3ZS01
Ci0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW21vZHVsYXRp
b25dIDEgb3V0IG9mIDEgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCi1GQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDYg
b3V0IG9mIDYgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBiYW5kcGFzcyBmaWx0ZXIgd2l0aCBzaW51c29pZGFs
IG1vZHVsYXRpb24gb2YgYmFuZHBhc3MgY2VudGVyIGZyZXF1ZW5jeSBlcXVhbHMgWzAsMC4wMDE4
MDAzNzM4OTUwOTM3OTg2LDAuMDA3MTY1ODEyNDIxNTkwMDksMC4wMTU4NjI1NjM2MjQ5NzgwNjUs
MC4wMjc0OTY1NDQ2NDQyMzY1NjUsMC4wNDE1MTkxMTY2MTAyODg2MiwwLjA1NzIzOTcyMjQ2MDUw
ODM1LDAuMDczODQ1NDUzNTYwMzUyMzMsMC4wOTA0MjczMTY3MjUyNTQwNiwwLjEwNjAxMjU5NzY4
MDA5MTg2LDAuMTE5NjAyNDQ5MjM4MzAwMzIsMC4xMzAyMTM0OTkwNjkyMTM4NywwLjEzNjkyMTg5
NzUzMDU1NTczLDAuMTM4OTA4MTkyNTE1MzczMjMsMC4xMzU1MDA4MzMzOTIxNDMyNSwwLjEyNjIx
NjUxNTg5ODcwNDUzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNv
bHV0ZVRocmVzaG9sZCI6MC4wMDAwMzk3ODcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNT
IDwgW21vZHVsYXRpb25dIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9u
cykgCitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDYgdGFza3Mg
d2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlw
cGVyaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRl
cmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CmluZGV4IGZmMGYxNWU3ZWY5N2U4MjY0
ZjEzM2NkM2ZkYThkNDVjMGI4YjQ3NGQuLmNiNTU1ZjNlZGVkMDg5NTlkOGJlY2Y1NjdlZmYxMjdl
ZmYxZjA3MzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRl
cmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlx
dWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CkBAIC0x
MSwxNCArMTEsMTQgQEAgUEFTUyA+IFtUZXN0IDBdIE5vIGRlemlwcGVyaW5nIGZvciBmcmVxdWVu
Y3kKIFBBU1MgICBBdCB0aW1lIDAsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byAzNTAuIAogUEFTUyAg
IEF0IHRpbWUgMC4wMTU2MjUsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byA4MDAuIAogUEFTUyAgIEF0
IHRpbWUgMC4wNTQ2ODc1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMjAwLiAKLVBBU1MgICBPdXRw
dXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIGVxdWFscyBbMC43ODYzNTYyMTA3MDg2MTgyLDAuOTY3
NjYxODU3NjA0OTgwNSwxLjEzNTc3MjQ2NjY1OTU0NiwxLjI4NTgyNDc3NTY5NTgwMDgsMS40MTMz
OTI3ODIyMTEzMDM3LDEuNTE0NjE3NjgxNTAzMjk2LDEuNTg2MzIzMTQyMDUxNjk2OCwxLjYyNjEx
MTI2ODk5NzE5MjQsMS42MzI0MzU2Nzk0MzU3MywxLjYwNDY1MDg1NTA2NDM5MiwxLjU0MzAzNjU4
MDA4NTc1NDQsMS40NDg3OTQxMjY1MTA2MjAxLDEuMzI0MDE4OTU1MjMwNzEzLDEuMTcxNjQ1MDQ1
MjgwNDU2NSwwLjk5NTM2NzY0NjIxNzM0NjIsMC43OTk1NDIxMjkwMzk3NjQ0Li4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDMw
Mzk5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIE91dHB1dCBmcm9tIGZyZXF1ZW5j
eSBzZXR0ZXIgZXF1YWxzIFswLjc4NjM1NjIxMDcwODYxODIsMC45Njc2NjE5MTcyMDk2MjUyLDEu
MTM1NzcyNDY2NjU5NTQ2LDEuMjg1ODI0ODk0OTA1MDkwMywxLjQxMzM5MjkwMTQyMDU5MzMsMS41
MTQ2MTc2ODE1MDMyOTYsMS41ODYzMjMyNjEyNjA5ODYzLDEuNjI2MTExMzg4MjA2NDgyLDEuNjMy
NDM1Nzk4NjQ1MDE5NSwxLjYwNDY1MDk3NDI3MzY4MTYsMS41NDMwMzY2OTkyOTUwNDQsMS40NDg3
OTQyNDU3MTk5MDk3LDEuMzI0MDE5MDc0NDQwMDAyNCwxLjE3MTY0NTE2NDQ4OTc0NiwwLjk5NTM2
Nzc2NTQyNjYzNTcsMC43OTk1NDIyNDgyNDkwNTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMzAzOTksInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4gCiBQQVNTICAgT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBtYXRjaGVz
IHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyB0cnVlLiAKIFBBU1MgPCBbVGVzdCAwXSBBbGwgYXNz
ZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA1IGFzc2VydGlvbnMpIAogUEFTUyA+IFtUZXN0IDFdIE5v
IGRlemlwcGVyaW5nIGZvciBkZXR1bmUgCiBQQVNTICAgQXQgdGltZSAwLCBkZXR1bmUgaXMgZXF1
YWwgdG8gMzMuIAogUEFTUyAgIEF0IHRpbWUgMC4wMTU2MjUsIGRldHVuZSBpcyBlcXVhbCB0byAx
MDAwLiAKIFBBU1MgICBBdCB0aW1lIDAuMDM5MDYyNSwgZGV0dW5lIGlzIGVxdWFsIHRvIC00MDAu
IAotUEFTUyAgIE91dHB1dCBmcm9tIGRldHVuZSBzZXR0ZXIgZXF1YWxzIFsxLjE0NzY2MDk3MDY4
Nzg2NjIsMS4xNTYxOTU0MDIxNDUzODU3LDEuMTM3MTU2NzI0OTI5ODA5NiwxLjA4OTEzMzYyMDI2
MjE0NiwxLjAxMTUzMzk3NTYwMTE5NjMsMC45MDQ2Mjk3MDczMzY0MjU4LDAuNzY5NTc2Nzg3OTQ4
NjA4NCwwLjYwODQwODgwODcwODE5MDksMC40MjQwMDQ4MjI5Njk0MzY2NSwwLjIyMDAyODc1ODA0
OTAxMTIzLDAuMDAwODQ2MTQyODgwNjE4NTcyMiwtMC4yMjg1ODI0NDE4MDY3OTMyLC0wLjQ2Mjgy
NjgxODIyNzc2Nzk0LC0wLjY5NjEzMDMzNTMzMDk2MzEsLTAuOTIyNTY0MDg5Mjk4MjQ4MywtMS4x
MzYxODk4MTgzODIyNjMyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDQwNTMyLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAor
UEFTUyAgIE91dHB1dCBmcm9tIGRldHVuZSBzZXR0ZXIgZXF1YWxzIFsxLjE0NzY2MDk3MDY4Nzg2
NjIsMS4xNTYxOTU0MDIxNDUzODU3LDEuMTM3MTU2NzI0OTI5ODA5NiwxLjA4OTEzMzYyMDI2MjE0
NiwxLjAxMTUzMzk3NTYwMTE5NjMsMC45MDQ2Mjk3MDczMzY0MjU4LDAuNzY5NTc2NzI4MzQzOTYz
NiwwLjYwODQwODgwODcwODE5MDksMC40MjQwMDQ3OTMxNjcxMTQyNiwwLjIyMDAyODc0MzE0Nzg1
MDA0LDAuMDAwODQ2MTI5NjA5MjcxODg0LC0wLjIyODU4MjQ1NjcwNzk1NDQsLTAuNDYyODI2ODE4
MjI3NzY3OTQsLTAuNjk2MTMwMzk0OTM1NjA3OSwtMC45MjI1NjQwODkyOTgyNDgzLC0xLjEzNjE4
OTgxODM4MjI2MzIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29s
dXRlVGhyZXNob2xkIjowLjAwMDAwNDA1MzIsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCiBQQVNT
ICAgT3V0cHV0IGZyb20gZGV0dW5lIHNldHRlciBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1
dCBpcyB0cnVlLiAKIFBBU1MgPCBbVGVzdCAxXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCA1IGFzc2VydGlvbnMpIAogUEFTUyA+IFtUZXN0IDJdIE5vIGRlemlwcGVyaW5nIGZvciBRIApA
QCAtMzIsMTQgKzMyLDE0IEBAIFBBU1MgPiBbVGVzdCAzXSBObyBkZXppcHBlcmluZyBmb3IgZ2Fp
bgogUEFTUyAgIEF0IHRpbWUgMCwgZ2FpbiBpcyBlcXVhbCB0byAxLiAKIFBBU1MgICBBdCB0aW1l
IDAuMDE1NjI1LCBnYWluIGlzIGVxdWFsIHRvIDUuIAogUEFTUyAgIEF0IHRpbWUgMC4wNDY4NzUs
IGdhaW4gaXMgZXF1YWwgdG8gLTAuMy4gCi1QQVNTICAgT3V0cHV0IGZyb20gZ2FpbiBzZXR0ZXIg
ZXF1YWxzIFstMC44NDQ4NjcyMjk0NjE2Njk5LC0xLjAzNDUzNTY0NjQzODU5ODYsLTEuMTg2NjA2
MTY4NzQ2OTQ4MiwtMS4yOTk0NzMyODU2NzUwNDg4LC0xLjM3MjM5MTEwNDY5ODE4MTIsLTEuNDA1
NDg2MzQ1MjkxMTM3NywtMS4zOTk3NTA1OTAzMjQ0MDE5LC0xLjM1NzAxMzk0MDgxMTE1NzIsLTEu
Mjc5ODk4NjQzNDkzNjUyMywtMS4xNzE3NTM2NDQ5NDMyMzczLC0xLjAzNjU3MjA5ODczMTk5NDYs
LTAuODc4ODkxNjQ2ODYyMDMsLTAuNzAzNjg0Mzg5NTkxMjE3LC0wLjUxNjIzMTIzODg0MjAxMDUs
LTAuMzIxOTkyMDA5ODc4MTU4NTcsLTAuMTI2NDY5MzI4OTk5NTE5MzUuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMTkwNzQs
InJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgT3V0cHV0IGZyb20gZ2FpbiBzZXR0ZXIg
ZXF1YWxzIFstMC44NDQ4NjcyMjk0NjE2Njk5LC0xLjAzNDUzNTY0NjQzODU5ODYsLTEuMTg2NjA2
MTY4NzQ2OTQ4MiwtMS4yOTk0NzMyODU2NzUwNDg4LC0xLjM3MjM5MTEwNDY5ODE4MTIsLTEuNDA1
NDg2MzQ1MjkxMTM3NywtMS4zOTk3NTA1OTAzMjQ0MDE5LC0xLjM1NzAxMzk0MDgxMTE1NzIsLTEu
Mjc5ODk4NjQzNDkzNjUyMywtMS4xNzE3NTM2NDQ5NDMyMzczLC0xLjAzNjU3MjA5ODczMTk5NDYs
LTAuODc4ODkxNzA2NDY2Njc0OCwtMC43MDM2ODQ0NDkxOTU4NjE4LC0wLjUxNjIzMTIzODg0MjAx
MDUsLTAuMzIxOTkyMDM5NjgwNDgwOTYsLTAuMTI2NDY5MzQzOTAwNjgwNTQuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMTkw
NzQsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCiBQQVNTICAgT3V0cHV0IGZyb20gZ2FpbiBzZXR0
ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgdHJ1ZS4gCiBQQVNTIDwgW1Rlc3Qg
M10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKIFBBU1MgPiBb
VGVzdCA0XSBObyBkZXppcHBlcmluZyBvZiBmcmVxdWVuY3kgdnMgSlMgZmlsdGVyIAogRkFJTCBY
IE91dHB1dCBmcm9tIGxvd3Bhc3MgZmlsdGVyIGRvZXMgbm90IGVxdWFsIFstMC4wMDMwMDEwNDg0
NjI0NjU0MDU1LC0wLjAxNDA2OTg5NjE5MTM1ODU2NiwtMC4wMzM0MDIwNDgwNTEzNTcyNywtMC4w
NTcyOTE0MTA4NjMzOTk1MDYsLTAuMDgyMTY0MzAyNDY4Mjk5ODcsLTAuMTA0NzAwNjQ3Mjk0NTIx
MzMsLTAuMTIxOTQwOTU1NTE5Njc2MjEsLTAuMTMxMzc2NjM5MDA4NTIyMDMsLTAuMTMxMDIxNzM4
MDUyMzY4MTYsLTAuMTE5NDY0NjA2MDQ2Njc2NjQsLTAuMDk1ODk4ODE0NDk5Mzc4MiwtMC4wNjAx
MzMwMjEzMjQ4NzI5NywtMC4wMTI1ODAxNzQwMjE0MjI4NjMsMC4wNDU3NzI5OTU3OTk3Nzk4OSww
LjExMzQxNDcxOTcwMDgxMzMsMC4xODgzNzMyMjI5NDcxMjA2Ny4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjUuOTYwN2UtNywicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVs
RXJyb3IJCVRlc3QgdGhyZXNob2xkCiAJWzBdCS0yLjYyNTk4MjQ2MzM1OTgzMjhlLTEJLTMuMDAx
MDQ4NDYyNDY1NDA1NWUtMwkyLjU5NTk3MTk3ODczNTE3ODdlLTEJOC42NTAyMTY3ODY1Nzc4MTM0
ZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUtNwotCVsxXQktNC4xNDQ0NTA3MjQxMjQ5MDg0ZS0xCS0x
LjQwNjk4OTYxOTEzNTg1NjZlLTIJNC4wMDM3NTE3NjIyMTEzMjI4ZS0xCTIuODQ1NjE1NzA4NzE0
NTY5NGUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKwlbMV0JLTQuMTQ0NDUxMDIyMTQ4MTMyM2Ut
MQktMS40MDY5ODk2MTkxMzU4NTY2ZS0yCTQuMDAzNzUyMDYwMjM0NTQ2N2UtMQkyLjg0NTYxNTky
MDUzMDc5MDJlKzEJNS45NjA3MDAwMDAwMDAwMDAyZS03CiAJWzJdCS01LjQzODYyNTIxNjQ4NDA2
OThlLTEJLTMuMzQwMjA0ODA1MTM1NzI2OWUtMgk1LjEwNDYwNDczNTk3MDQ5NzFlLTEJMS41Mjgy
MzEwNjE3OTY1NDYxZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUtNwogCVszXQktNi4zNTkyODY5MDQz
MzUwMjIwZS0xCS01LjcyOTE0MTA4NjMzOTk1MDZlLTIJNS43ODYzNzI3OTU3MDEwMjY5ZS0xCTEu
MDA5OTg5NTc5MzI3NjEyNGUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKIAlbNF0JLTYuODA5MDQ1
MDc2MzcwMjM5M2UtMQktOC4yMTY0MzAyNDY4Mjk5ODY2ZS0yCTUuOTg3NDAyMDUxNjg3MjQwNmUt
MQk3LjI4NzEwODcyMjE4MTcwOTBlKzAJNS45NjA3MDAwMDAwMDAwMDAyZS03CkBAIC01NSwyMCAr
NTUsOCBAQCBQQVNTID4gW1Rlc3QgNV0gVGVzdCB3aXRoIG1vZHVsYXRpb24KIFBBU1MgICBNb2R1
bGF0aW9uOiBBdCB0aW1lIDAsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byAzNTAuIAogUEFTUyAgIE1v
ZHVsYXRpb246IEF0IHRpbWUgMC4wMTU2MjUsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byAxMC4gCiBQ
QVNTICAgTW9kdWxhdGlvbjogQXQgdGltZSAwLjA2MjUsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byAt
MTAuIAotRkFJTCBYIE1vZHVsYXRpb246IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgZG9l
cyBub3QgZXF1YWwgWzAsLTAuMTY3OTM4MzA2OTI3NjgwOTcsLTAuMzMxMTA2MzA1MTIyMzc1NSwt
MC40ODQ4NjkyNDE3MTQ0Nzc1NCwtMC42MjQ4NTk1MTE4NTIyNjQ0LC0wLjc0NzEwMDU5MTY1OTU0
NTksLTAuODQ4MTIwMzMxNzY0MjIxMiwtMC45MjUwNDkzNjQ1NjY4MDMsLTAuOTc1NzAyMjI2MTYx
OTU2OCwtMC45OTg2NDAxNzk2MzQwOTQyLC0wLjk5MzIxMjA0NDIzOTA0NDIsLTAuOTU5NTcxNDIx
MTQ2MzkyOCwtMC44OTg2NzQ0ODgwNjc2MjcsLTAuODEyMjUwNTU0NTYxNjE1LC0wLjcwMjc1NDc5
NTU1MTMsLTAuNTczMjk3MTQyOTgyNDgyOS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJ
bmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9s
ZAotCVsxMjhdCS0zLjgyMzAxMTgxNTU0Nzk0MzFlLTEJLTMuODIzNjQ2MDA4OTY4MzUzM2UtMQk2
LjM0MTkzNDIwNDEwMTU2MjVlLTUJMS42NTg2MDkxMzYyMDgzNjUwZS00CTAuMDAwMDAwMDAwMDAw
MDAwMGUrMAotCVsxMjldCS0yLjIwOTEzNjc4NDA3NjY5MDdlLTEJLTIuMjExMDkyNTYxNDgzMzgz
MmUtMQkxLjk1NTc3NzQwNjY5MjUwNDllLTQJOC44NDUyOTg2NTgwNTUzMTExZS00CTAuMDAwMDAw
MDAwMDAwMDAwMGUrMAotCVsxMzBdCS01LjI3ODA1MzUwNzIwODgyNDJlLTIJLTUuMzE4MDE5OTEx
NjQ2ODQzMGUtMgkzLjk5NjY0MDQ0MzgwMTg3OTllLTQJNy41MTUyNzkyMDIwMzcxMTk0ZS0zCTAu
MDAwMDAwMDAwMDAwMDAwMGUrMAotCVsxMzFdCTEuMTczNjU1MDE4MjEwNDExMWUtMQkxLjE2Njg4
NzY1NTg1NDIyNTJlLTEJNi43NjczNjIzNTYxODU5MTMxZS00CTUuNzk5NDk3NzY4NDczNTUyMGUt
MwkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMTMyXQkyLjg0NzM0OTA0NzY2MDgyNzZlLTEJMi44
MzcwOTMxNzQ0NTc1NTAwZS0xCTEuMDI1NTg3MzIwMzI3NzU4OGUtMwkzLjYxNDkyMjk0MTQxNDY3
NjNlLTMJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JLi4uYW5kIDUwNyBtb3JlIGVycm9ycy4KLQlN
YXggQWJzRXJyb3Igb2YgNS4wNDc1NTk3MzgxNTkxNzk3ZS0yIGF0IGluZGV4IG9mIDM1NC4KLQlb
MzU0XQkzLjAxMDY1MDcyNDE3MjU5MjJlLTIJOC4wNTgyMTA0NjIzMzE3NzE5ZS0yCTUuMDQ3NTU5
NzM4MTU5MTc5N2UtMgk2LjI2Mzg3MTgxMzQxODIyMTRlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
Ci0JTWF4IFJlbEVycm9yIG9mIDMuMDg2OTc5OTQwNzk0NTI3MWUrMCBhdCBpbmRleCBvZiAyNzku
Ci0JWzI3OV0JLTUuMTA0ODUyMDk1MjQ2MzE1MGUtMgktMS4yNDkwNTIzOTc5MDY3ODAyZS0yCTMu
ODU1Nzk5Njk3MzM5NTM0OGUtMgkzLjA4Njk3OTk0MDc5NDUyNzFlKzAJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCi0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggTW9k
dWxhdGlvbjogT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBtYXRjaGVzIHNldFZhbHVlQXRU
aW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbVGVzdCA1XSAyIG91dCBvZiA1IGFzc2VydGlvbnMgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFV
RElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAyIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBNb2R1bGF0aW9uOiBP
dXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIGVxdWFscyBbMCwtMC4xNjc5MzgzMDY5Mjc2ODA5
NywtMC4zMzExMDYzMDUxMjIzNzU1LC0wLjQ4NDg2OTI0MTcxNDQ3NzU0LC0wLjYyNDg1OTUxMTg1
MjI2NDQsLTAuNzQ3MTAwNTkxNjU5NTQ1OSwtMC44NDgxMjAzMzE3NjQyMjEyLC0wLjkyNTA0OTM2
NDU2NjgwMywtMC45NzU3MDIyMjYxNjE5NTY4LC0wLjk5ODY0OTQ3Nzk1ODY3OTIsLTAuOTkzMjQx
MDEyMDk2NDA1LC0wLjk1OTU5MzQ3NDg2NDk1OTcsLTAuODk4NTkwNjgzOTM3MDcyOCwtMC44MTE4
NTkxMzA4NTkzNzUsLTAuNzAxNzg3NDcxNzcxMjQwMiwtMC41NzEyMzU2NTY3MzgyODEyLi4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwi
cmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBNb2R1bGF0aW9uOiBPdXRwdXQgZnJvbSBm
cmVxdWVuY3kgc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAor
UEFTUyA8IFtUZXN0IDVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDUgYXNzZXJ0aW9u
cykgCitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDYgdGFza3Mg
d2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407655</attachid>
            <date>2020-08-31 21:00:53 -0700</date>
            <delta_ts>2020-09-01 08:42:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216027-20200831210052.patch</filename>
            <type>text/plain</type>
            <size>89717</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2Mzc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmEzYTczNThmNmJhMWU3
MzM3NjYzYTY1OTEzYTY1OTgzZmYxMmU0Zi4uMTQ4MmMyMjc4NTg0MmIyMjViZDMzMjZjM2UyN2Qx
NmVkMzc5NTA0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIwLTA4LTMxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHByb3BlciBrLXJhdGUg
YXV0b21hdGlvbiBzdXBwb3J0IGZvciBCaXF1YWRGaWx0ZXJOb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYwMjcKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgcHJvcGVyIGstcmF0ZSBhdXRvbWF0
aW9uIHN1cHBvcnQgZm9yIEJpcXVhZEZpbHRlck5vZGUuIFRoaXMgcGF0Y2ggaXMKKyAgICAgICAg
YmFzZWQgb24gQ2hyb21pdW0ncyBpbXBsZW1lbnRhdGlvbi4KKworICAgICAgICBObyBuZXcgdGVz
dHMsIHJlYmFzZWxpbmVkIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogTW9kdWxlcy93ZWJh
dWRpby9CaXF1YWREU1BLZXJuZWwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aGFzQ29uc3RhbnRW
YWx1ZXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkRFNQS2VybmVsOjp1cGRhdGVDb2VmZmlj
aWVudHNJZk5lY2Vzc2FyeSk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnVw
ZGF0ZUNvZWZmaWNpZW50cyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnBy
b2Nlc3MpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkRFNQS2VybmVsOjpnZXRGcmVxdWVuY3lS
ZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnRhaWxUaW1lIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6dXBkYXRlVGFpbFRpbWUp
OgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmlxdWFkRFNQS2VybmVsLmg6CisgICAgICAg
ICogTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6QmlxdWFkUHJvY2Vzc29yOjpjaGVja0ZvckRpcnR5Q29lZmZpY2llbnRzKToKKyAgICAgICAg
KFdlYkNvcmU6OkJpcXVhZFByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UpOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29yLmg6CisgICAgICAgICogcGxhdGZv
cm0vYXVkaW8vQmlxdWFkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6QmlxdWFkKToK
KyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpC
aXF1YWQ6OnByb2Nlc3NGYXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6cmVzZXQpOgor
ICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRMb3dwYXNzUGFyYW1zKToKKyAgICAgICAgKFdl
YkNvcmU6OkJpcXVhZDo6c2V0SGlnaHBhc3NQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6Qmlx
dWFkOjpzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVh
ZDo6c2V0TG93U2hlbGZQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRIaWdo
U2hlbGZQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRQZWFraW5nUGFyYW1z
KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZDo6c2V0QWxscGFzc1BhcmFtcyk6CisgICAgICAg
IChXZWJDb3JlOjpCaXF1YWQ6OnNldE5vdGNoUGFyYW1zKToKKyAgICAgICAgKFdlYkNvcmU6OkJp
cXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpnZXRG
cmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpyZXBlYXRlZFJvb3RSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpyb290RmluZGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkJp
cXVhZDo6dGFpbEZyYW1lKToKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9CaXF1YWQuaDoKKwog
MjAyMC0wOC0zMSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAg
ICAgICBBdm9pZCBjb21wdXRpbmcgbWV0YWRhdGEgZm9yIGlkZW1wb3RlbnQgdGV4dCBhdXRvc2l6
aW5nIG9uIG1hY09TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlv
L0JpcXVhZERTUEtlcm5lbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jp
cXVhZERTUEtlcm5lbC5jcHAKaW5kZXggMTY5YWE2NWFlM2UzODVmNGJiOTg0MDhkNGVmNDgyMjJk
MDAxM2IwMi4uOWUyNzAyNWQ4YTE4MTNiMjZjMDZlYzNhYjlmZTk2ZmZjODRhMGU4NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFkRFNQS2VybmVsLmNw
cApAQCAtNDEsNzggKzQxLDEwOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBzZXR0aW5ncyBv
ZiB0aGUgQmlxdWFkLgogc3RhdGljIGNvbnN0IGRvdWJsZSBNYXhCaXF1YWREZWxheVRpbWUgPSAw
LjI7CiAKLXZvaWQgQmlxdWFkRFNQS2VybmVsOjp1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2Fy
eShib29sIHVzZVNtb290aGluZywgYm9vbCBmb3JjZVVwZGF0ZSkKK3N0YXRpYyBib29sIGhhc0Nv
bnN0YW50VmFsdWVzKGZsb2F0KiB2YWx1ZXMsIGludCBmcmFtZXNUb1Byb2Nlc3MpCiB7Ci0gICAg
aWYgKGZvcmNlVXBkYXRlIHx8IGJpcXVhZFByb2Nlc3NvcigpLT5maWx0ZXJDb2VmZmljaWVudHNE
aXJ0eSgpKSB7Ci0gICAgICAgIGRvdWJsZSB2YWx1ZTE7Ci0gICAgICAgIGRvdWJsZSB2YWx1ZTI7
Ci0gICAgICAgIGRvdWJsZSBnYWluOwotICAgICAgICBkb3VibGUgZGV0dW5lOyAvLyBpbiBDZW50
cwotCi0gICAgICAgIGJvb2wgc2hvdWxkVXNlQVJhdGUgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFy
YW1ldGVyMSgpLmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCi0gICAg
ICAgICAgICB8fCBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMigpLmF1dG9tYXRpb25SYXRl
KCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCi0gICAgICAgICAgICB8fCBiaXF1YWRQcm9jZXNz
b3IoKS0+cGFyYW1ldGVyMygpLmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFS
YXRlCi0gICAgICAgICAgICB8fCBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmF1dG9t
YXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlOwotICAgICAgICBpZiAoYmlxdWFk
UHJvY2Vzc29yKCktPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkgJiYgc2hvdWxkVXNlQVJhdGUp
IHsKLSAgICAgICAgICAgIHZhbHVlMSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIxKCku
ZmluYWxWYWx1ZSgpOwotICAgICAgICAgICAgdmFsdWUyID0gYmlxdWFkUHJvY2Vzc29yKCktPnBh
cmFtZXRlcjIoKS5maW5hbFZhbHVlKCk7Ci0gICAgICAgICAgICBnYWluID0gYmlxdWFkUHJvY2Vz
c29yKCktPnBhcmFtZXRlcjMoKS5maW5hbFZhbHVlKCk7Ci0gICAgICAgICAgICBkZXR1bmUgPSBi
aXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmZpbmFsVmFsdWUoKTsKLSAgICAgICAgfSBl
bHNlIGlmICh1c2VTbW9vdGhpbmcpIHsKLSAgICAgICAgICAgIHZhbHVlMSA9IGJpcXVhZFByb2Nl
c3NvcigpLT5wYXJhbWV0ZXIxKCkuc21vb3RoZWRWYWx1ZSgpOwotICAgICAgICAgICAgdmFsdWUy
ID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjIoKS5zbW9vdGhlZFZhbHVlKCk7Ci0gICAg
ICAgICAgICBnYWluID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMoKS5zbW9vdGhlZFZh
bHVlKCk7Ci0gICAgICAgICAgICBkZXR1bmUgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVy
NCgpLnNtb290aGVkVmFsdWUoKTsKKyAgICAvLyBGSVhNRTogVXNlIFNJTUQgdG8gb3B0aW1pemUg
dGhpcy4gVGhpcyB3b3VsZCBzcGVlZCB1cCBwcm9jZXNzaW5nIGJ5IGEgZmFjdG9yIG9mIDQKKyAg
ICAvLyBiZWNhdXNlIHdlIGNhbiBwcm9jZXNzIDQgZmxvYXRzIGF0IGEgdGltZS4KKyAgICBmbG9h
dCB2YWx1ZSA9IHZhbHVlc1swXTsKKyAgICBmb3IgKGludCBrID0gMTsgayA8IGZyYW1lc1RvUHJv
Y2VzczsgKytrKSB7CisgICAgICAgIGlmICh2YWx1ZXNba10gIT0gdmFsdWUpCisgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIHJldHVybiB0cnVlOworfQorCit2b2lkIEJpcXVh
ZERTUEtlcm5lbDo6dXBkYXRlQ29lZmZpY2llbnRzSWZOZWNlc3Nhcnkoc2l6ZV90IGZyYW1lc1Rv
UHJvY2VzcykKK3sKKyAgICBpZiAoYmlxdWFkUHJvY2Vzc29yKCktPmZpbHRlckNvZWZmaWNpZW50
c0RpcnR5KCkpIHsKKyAgICAgICAgZmxvYXQgY3V0b2ZmRnJlcXVlbmN5W0F1ZGlvTm9kZTo6UHJv
Y2Vzc2luZ1NpemVJbkZyYW1lc107CisgICAgICAgIGZsb2F0IHFbQXVkaW9Ob2RlOjpQcm9jZXNz
aW5nU2l6ZUluRnJhbWVzXTsKKyAgICAgICAgZmxvYXQgZ2FpbltBdWRpb05vZGU6OlByb2Nlc3Np
bmdTaXplSW5GcmFtZXNdOworICAgICAgICBmbG9hdCBkZXR1bmVbQXVkaW9Ob2RlOjpQcm9jZXNz
aW5nU2l6ZUluRnJhbWVzXTsgLy8gaW4gQ2VudHMKKworICAgICAgICBBU1NFUlQoZnJhbWVzVG9Q
cm9jZXNzIDw9IEF1ZGlvTm9kZTo6UHJvY2Vzc2luZ1NpemVJbkZyYW1lcyk7CisKKyAgICAgICAg
aWYgKGJpcXVhZFByb2Nlc3NvcigpLT5oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpICYmIGJpcXVh
ZFByb2Nlc3NvcigpLT5zaG91bGRVc2VBUmF0ZSgpKSB7CisgICAgICAgICAgICBiaXF1YWRQcm9j
ZXNzb3IoKS0+cGFyYW1ldGVyMSgpLmNhbGN1bGF0ZVNhbXBsZUFjY3VyYXRlVmFsdWVzKGN1dG9m
ZkZyZXF1ZW5jeSwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICAgICAgICAgIGJpcXVhZFByb2Nlc3Nv
cigpLT5wYXJhbWV0ZXIyKCkuY2FsY3VsYXRlU2FtcGxlQWNjdXJhdGVWYWx1ZXMocSwgZnJhbWVz
VG9Qcm9jZXNzKTsKKyAgICAgICAgICAgIGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIzKCku
Y2FsY3VsYXRlU2FtcGxlQWNjdXJhdGVWYWx1ZXMoZ2FpbiwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAg
ICAgICAgICAgIGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXI0KCkuY2FsY3VsYXRlU2FtcGxl
QWNjdXJhdGVWYWx1ZXMoZGV0dW5lLCBmcmFtZXNUb1Byb2Nlc3MpOworCisgICAgICAgICAgICAv
LyBJZiBhbGwgdGhlIHZhbHVlcyBhcmUgYWN0dWFsbHkgY29uc3RhbnQgZm9yIHRoaXMgcmVuZGVy
IChvciB0aGUKKyAgICAgICAgICAgIC8vIGF1dG9tYXRpb24gcmF0ZSBpcyAiay1yYXRlIiBmb3Ig
YWxsIG9mIHRoZSBBdWRpb1BhcmFtcyksIHdlIGRvbid0IG5lZWQKKyAgICAgICAgICAgIC8vIHRv
IGNvbXB1dGUgZmlsdGVyIGNvZWZmaWNpZW50cyBmb3IgZWFjaCBmcmFtZSBzaW5jZSB0aGV5IHdv
dWxkIGJlIHRoZQorICAgICAgICAgICAgLy8gc2FtZSBhcyB0aGUgZmlyc3QuCisgICAgICAgICAg
ICBib29sIGlzQ29uc3RhbnQgPSBoYXNDb25zdGFudFZhbHVlcyhjdXRvZmZGcmVxdWVuY3ksIGZy
YW1lc1RvUHJvY2VzcykKKyAgICAgICAgICAgICAgICAmJiBoYXNDb25zdGFudFZhbHVlcyhxLCBm
cmFtZXNUb1Byb2Nlc3MpCisgICAgICAgICAgICAgICAgJiYgaGFzQ29uc3RhbnRWYWx1ZXMoZ2Fp
biwgZnJhbWVzVG9Qcm9jZXNzKQorICAgICAgICAgICAgICAgICYmIGhhc0NvbnN0YW50VmFsdWVz
KGRldHVuZSwgZnJhbWVzVG9Qcm9jZXNzKTsKKworICAgICAgICAgICAgdXBkYXRlQ29lZmZpY2ll
bnRzKGlzQ29uc3RhbnQgPyAxIDogZnJhbWVzVG9Qcm9jZXNzLCBjdXRvZmZGcmVxdWVuY3ksIHEs
IGdhaW4sIGRldHVuZSk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB2YWx1ZTEgPSBi
aXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMSgpLnZhbHVlKCk7Ci0gICAgICAgICAgICB2YWx1
ZTIgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMigpLnZhbHVlKCk7Ci0gICAgICAgICAg
ICBnYWluID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMoKS52YWx1ZSgpOwotICAgICAg
ICAgICAgZGV0dW5lID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjQoKS52YWx1ZSgpOwor
ICAgICAgICAgICAgY3V0b2ZmRnJlcXVlbmN5WzBdID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFt
ZXRlcjEoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICBxWzBdID0gYmlxdWFkUHJvY2Vzc29y
KCktPnBhcmFtZXRlcjIoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICBnYWluWzBdID0gYmlx
dWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICBk
ZXR1bmVbMF0gPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmZpbmFsVmFsdWUoKTsK
KyAgICAgICAgICAgIHVwZGF0ZUNvZWZmaWNpZW50cygxLCBjdXRvZmZGcmVxdWVuY3ksIHEsIGdh
aW4sIGRldHVuZSk7CiAgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgQmlxdWFkRFNQS2VybmVs
Ojp1cGRhdGVDb2VmZmljaWVudHMoc2l6ZV90IG51bWJlck9mRnJhbWVzLCBjb25zdCBmbG9hdCog
Y3V0b2ZmRnJlcXVlbmN5LCBjb25zdCBmbG9hdCogcSwgY29uc3QgZmxvYXQqIGdhaW4sIGNvbnN0
IGZsb2F0KiBkZXR1bmUpCit7CisgICAgLy8gQ29udmVydCBmcm9tIEhlcnR6IHRvIG5vcm1hbGl6
ZWQgZnJlcXVlbmN5IDAgLT4gMS4KKyAgICBkb3VibGUgbnlxdWlzdCA9IHRoaXMtPm55cXVpc3Qo
KTsKKworICAgIG1fYmlxdWFkLnNldEhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKG51bWJlck9mRnJh
bWVzID4gMSk7CiAKLSAgICAgICAgLy8gQ29udmVydCBmcm9tIEhlcnR6IHRvIG5vcm1hbGl6ZWQg
ZnJlcXVlbmN5IDAgLT4gMS4KLSAgICAgICAgZG91YmxlIG55cXVpc3QgPSB0aGlzLT5ueXF1aXN0
KCk7Ci0gICAgICAgIGRvdWJsZSBub3JtYWxpemVkRnJlcXVlbmN5ID0gdmFsdWUxIC8gbnlxdWlz
dDsKKyAgICBmb3IgKHNpemVfdCBrID0gMDsgayA8IG51bWJlck9mRnJhbWVzOyArK2spIHsKKyAg
ICAgICAgZG91YmxlIG5vcm1hbGl6ZWRGcmVxdWVuY3kgPSBjdXRvZmZGcmVxdWVuY3lba10gLyBu
eXF1aXN0OwogCiAgICAgICAgIC8vIE9mZnNldCBmcmVxdWVuY3kgYnkgZGV0dW5lLgotICAgICAg
ICBpZiAoZGV0dW5lKQotICAgICAgICAgICAgbm9ybWFsaXplZEZyZXF1ZW5jeSAqPSBwb3coMiwg
ZGV0dW5lIC8gMTIwMCk7CisgICAgICAgIGlmIChkZXR1bmVba10pIHsKKyAgICAgICAgICAgIC8v
IERldHVuZSBtdWx0aXBsaWVzIHRoZSBmcmVxdWVuY3kgYnkgMl4oZGV0dW5lW2tdIC8gMTIwMCku
CisgICAgICAgICAgICBub3JtYWxpemVkRnJlcXVlbmN5ICo9IHN0ZDo6ZXhwMihkZXR1bmVba10g
LyAxMjAwKTsKKyAgICAgICAgfQogCi0gICAgICAgIC8vIENvbmZpZ3VyZSB0aGUgYmlxdWFkIHdp
dGggdGhlIG5ldyBmaWx0ZXIgcGFyYW1ldGVycyBmb3IgdGhlIGFwcHJvcHJpYXRlIHR5cGUgb2Yg
ZmlsdGVyLgorICAgICAgICAvLyBDb25maWd1cmUgdGhlIGJpcXVhZCB3aXRoIHRoZSBuZXcgZmls
dGVyIHBhcmFtZXRlcnMgZm9yIHRoZSBhcHByb3ByaWF0ZQorICAgICAgICAvLyB0eXBlIG9mIGZp
bHRlci4KICAgICAgICAgc3dpdGNoIChiaXF1YWRQcm9jZXNzb3IoKS0+dHlwZSgpKSB7CiAgICAg
ICAgIGNhc2UgQmlxdWFkRmlsdGVyVHlwZTo6TG93cGFzczoKLSAgICAgICAgICAgIG1fYmlxdWFk
LnNldExvd3Bhc3NQYXJhbXMobm9ybWFsaXplZEZyZXF1ZW5jeSwgdmFsdWUyKTsKKyAgICAgICAg
ICAgIG1fYmlxdWFkLnNldExvd3Bhc3NQYXJhbXMoaywgbm9ybWFsaXplZEZyZXF1ZW5jeSwgcVtr
XSk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6
OkhpZ2hwYXNzOgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0SGlnaHBhc3NQYXJhbXMobm9ybWFs
aXplZEZyZXF1ZW5jeSwgdmFsdWUyKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNldEhpZ2hwYXNz
UGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHFba10pOwogICAgICAgICAgICAgYnJlYWs7
CiAKICAgICAgICAgY2FzZSBCaXF1YWRGaWx0ZXJUeXBlOjpCYW5kcGFzczoKLSAgICAgICAgICAg
IG1fYmlxdWFkLnNldEJhbmRwYXNzUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMik7
CisgICAgICAgICAgICBtX2JpcXVhZC5zZXRCYW5kcGFzc1BhcmFtcyhrLCBub3JtYWxpemVkRnJl
cXVlbmN5LCBxW2tdKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgQmlxdWFk
RmlsdGVyVHlwZTo6TG93c2hlbGY6Ci0gICAgICAgICAgICBtX2JpcXVhZC5zZXRMb3dTaGVsZlBh
cmFtcyhub3JtYWxpemVkRnJlcXVlbmN5LCBnYWluKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNl
dExvd1NoZWxmUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVuY3ksIGdhaW5ba10pOwogICAgICAg
ICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBCaXF1YWRGaWx0ZXJUeXBlOjpIaWdoc2hlbGY6
Ci0gICAgICAgICAgICBtX2JpcXVhZC5zZXRIaWdoU2hlbGZQYXJhbXMobm9ybWFsaXplZEZyZXF1
ZW5jeSwgZ2Fpbik7CisgICAgICAgICAgICBtX2JpcXVhZC5zZXRIaWdoU2hlbGZQYXJhbXMoaywg
bm9ybWFsaXplZEZyZXF1ZW5jeSwgZ2FpbltrXSk7CiAgICAgICAgICAgICBicmVhazsKIAogICAg
ICAgICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6OlBlYWtpbmc6Ci0gICAgICAgICAgICBtX2JpcXVh
ZC5zZXRQZWFraW5nUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMiwgZ2Fpbik7Cisg
ICAgICAgICAgICBtX2JpcXVhZC5zZXRQZWFraW5nUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVu
Y3ksIHFba10sIGdhaW5ba10pOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBC
aXF1YWRGaWx0ZXJUeXBlOjpOb3RjaDoKLSAgICAgICAgICAgIG1fYmlxdWFkLnNldE5vdGNoUGFy
YW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMik7CisgICAgICAgICAgICBtX2JpcXVhZC5z
ZXROb3RjaFBhcmFtcyhrLCBub3JtYWxpemVkRnJlcXVlbmN5LCBxW2tdKTsKICAgICAgICAgICAg
IGJyZWFrOwogCiAgICAgICAgIGNhc2UgQmlxdWFkRmlsdGVyVHlwZTo6QWxscGFzczoKLSAgICAg
ICAgICAgIG1fYmlxdWFkLnNldEFsbHBhc3NQYXJhbXMobm9ybWFsaXplZEZyZXF1ZW5jeSwgdmFs
dWUyKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNldEFsbHBhc3NQYXJhbXMoaywgbm9ybWFsaXpl
ZEZyZXF1ZW5jeSwgcVtrXSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgIH0K
KworICAgIHVwZGF0ZVRhaWxUaW1lKG51bWJlck9mRnJhbWVzIC0gMSk7CiB9CiAKIHZvaWQgQmlx
dWFkRFNQS2VybmVsOjpwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZsb2F0KiBkZXN0aW5h
dGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKQEAgLTEyMyw3ICsxNTMsNyBAQCB2b2lkIEJp
cXVhZERTUEtlcm5lbDo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9hdCogZGVzdGlu
YXRpb24sIHNpemVfdCBmcgogICAgIC8vIEZJWE1FOiBhcyBhbiBvcHRpbWl6YXRpb24sIGltcGxl
bWVudCBhIHdheSB0aGF0IGEgQmlxdWFkIG9iamVjdCBjYW4gc2ltcGx5IGNvcHkgaXRzIGludGVy
bmFsIGZpbHRlciBjb2VmZmljaWVudHMgZnJvbSBhbm90aGVyIEJpcXVhZCBvYmplY3QuCiAgICAg
Ly8gVGhlbiByZS1mYWN0b3IgdGhpcyBjb2RlIHRvIG9ubHkgcnVuIGZvciB0aGUgZmlyc3QgQmlx
dWFkRFNQS2VybmVsIG9mIGVhY2ggQmlxdWFkUHJvY2Vzc29yLgogCi0gICAgdXBkYXRlQ29lZmZp
Y2llbnRzSWZOZWNlc3NhcnkodHJ1ZSwgZmFsc2UpOworICAgIHVwZGF0ZUNvZWZmaWNpZW50c0lm
TmVjZXNzYXJ5KGZyYW1lc1RvUHJvY2Vzcyk7CiAKICAgICBtX2JpcXVhZC5wcm9jZXNzKHNvdXJj
ZSwgZGVzdGluYXRpb24sIGZyYW1lc1RvUHJvY2Vzcyk7CiB9CkBAIC0xNDUsMjEgKzE3NSwxNCBA
QCB2b2lkIEJpcXVhZERTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoaW50IG5GcmVxdWVu
Y2llcywKICAgICAvLyBDb252ZXJ0IGZyb20gZnJlcXVlbmN5IGluIEh6IHRvIG5vcm1hbGl6ZWQg
ZnJlcXVlbmN5ICgwIC0+IDEpLAogICAgIC8vIHdpdGggMSBlcXVhbCB0byB0aGUgTnlxdWlzdCBm
cmVxdWVuY3kuCiAgICAgZm9yIChpbnQgayA9IDA7IGsgPCBuRnJlcXVlbmNpZXM7ICsraykKLSAg
ICAgICAgZnJlcXVlbmN5W2tdID0gbmFycm93UHJlY2lzaW9uVG9GbG9hdChmcmVxdWVuY3lIeltr
XSAvIG55cXVpc3QpOwotCi0gICAgLy8gV2Ugd2FudCB0byBnZXQgdGhlIGZpbmFsIHZhbHVlcyBv
ZiB0aGUgY29lZmZpY2llbnRzIGFuZCBjb21wdXRlCi0gICAgLy8gdGhlIHJlc3BvbnNlIGZyb20g
dGhhdCBpbnN0ZWFkIG9mIHNvbWUgaW50ZXJtZWRpYXRlIHNtb290aGVkCi0gICAgLy8gc2V0LiBG
b3JjZWZ1bGx5IHVwZGF0ZSB0aGUgY29lZmZpY2llbnRzIGV2ZW4gaWYgdGhleSBhcmUgbm90Ci0g
ICAgLy8gZGlydHkuCi0KLSAgICB1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2FyeShmYWxzZSwg
dHJ1ZSk7CisgICAgICAgIGZyZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsK
IAogICAgIG1fYmlxdWFkLmdldEZyZXF1ZW5jeVJlc3BvbnNlKG5GcmVxdWVuY2llcywgZnJlcXVl
bmN5LmRhdGEoKSwgbWFnUmVzcG9uc2UsIHBoYXNlUmVzcG9uc2UpOwogfQogCiBkb3VibGUgQmlx
dWFkRFNQS2VybmVsOjp0YWlsVGltZSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIE1heEJpcXVhZERl
bGF5VGltZTsKKyAgICByZXR1cm4gbV90YWlsVGltZTsKIH0KIAogZG91YmxlIEJpcXVhZERTUEtl
cm5lbDo6bGF0ZW5jeVRpbWUoKSBjb25zdApAQCAtMTY3LDYgKzE5MCwyMSBAQCBkb3VibGUgQmlx
dWFkRFNQS2VybmVsOjpsYXRlbmN5VGltZSgpIGNvbnN0CiAgICAgcmV0dXJuIDA7CiB9CiAKK3Zv
aWQgQmlxdWFkRFNQS2VybmVsOjp1cGRhdGVUYWlsVGltZShzaXplX3QgY29lZkluZGV4KQorewor
ICAgIC8vIEEgcmVhc29uYWJsZSB1cHBlciBsaW1pdCBmb3IgdGhlIHRhaWwgdGltZS4gV2hpbGUg
aXQncyBlYXN5IHRvCisgICAgLy8gY3JlYXRlIGJpcXVhZCBmaWx0ZXJzIHdob3NlIHRhaWwgdGlt
ZSBjYW4gYmUgbXVjaCBsYXJnZXIgdGhhbgorICAgIC8vIHRoaXMsIGxpbWl0IHRoZSBtYXhpbXVt
IHRvIHRoaXMgdmFsdWUgc28gdGhhdCB3ZSBkb24ndCBrZWVwIHN1Y2gKKyAgICAvLyBub2RlcyBh
bGl2ZSAiZm9yZXZlciIuCisgICAgLy8gVE9ETzogV2hhdCBpcyBhIHJlYXNvbmFibGUgdXBwZXIg
bGltaXQ/CisgICAgY29uc3RleHByIGRvdWJsZSBtYXhUYWlsVGltZSA9IDMwOworCisgICAgZG91
YmxlIHNhbXBsZVJhdGUgPSB0aGlzLT5zYW1wbGVSYXRlKCk7CisgICAgZG91YmxlIHRhaWwgPSBt
X2JpcXVhZC50YWlsRnJhbWUoY29lZkluZGV4LCBtYXhUYWlsVGltZSAqIHNhbXBsZVJhdGUpIC8g
c2FtcGxlUmF0ZTsKKworICAgIG1fdGFpbFRpbWUgPSBzdGQ6OmNsYW1wKHRhaWwsIDAuMCwgbWF4
VGFpbFRpbWUpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFC
TEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9CaXF1YWREU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlx
dWFkRFNQS2VybmVsLmgKaW5kZXggN2FlMTYxYTE2MmMzM2NhMjIwZmU2Y2UyMTU3ZGJkMTVhODc0
MzI5Ni4uMDNjMThkOGM4YTgyMGZiZWQ5ZDJhNzUzYTcxODVlZTYyODM3NzFjNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZERTUEtlcm5lbC5oCkBAIC01
NSw2ICs1NSw4IEBAIHB1YmxpYzoKICAgICBkb3VibGUgdGFpbFRpbWUoKSBjb25zdCBvdmVycmlk
ZTsKICAgICBkb3VibGUgbGF0ZW5jeVRpbWUoKSBjb25zdCBvdmVycmlkZTsKIAorICAgIHZvaWQg
dXBkYXRlQ29lZmZpY2llbnRzKHNpemVfdCBudW1iZXJPZkZyYW1lcywgY29uc3QgZmxvYXQqIGN1
dG9mZkZyZXF1ZW5jeSwgY29uc3QgZmxvYXQqIHEsIGNvbnN0IGZsb2F0KiBnYWluLCBjb25zdCBm
bG9hdCogZGV0dW5lKTsKKwogcHJpdmF0ZToKICAgICBCaXF1YWQgbV9iaXF1YWQ7CiAgICAgQmlx
dWFkUHJvY2Vzc29yKiBiaXF1YWRQcm9jZXNzb3IoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxCaXF1
YWRQcm9jZXNzb3IqPihwcm9jZXNzb3IoKSk7IH0KQEAgLTY2LDcgKzY4LDEwIEBAIHByaXZhdGU6
CiAgICAgLy8gdXNlZC4gSWYgfGZvcmNlVXBkYXRlfCBpcyB0cnVlLCB3ZSB1cGRhdGUgdGhlIGNv
ZWZmaWNpZW50cyBldmVuCiAgICAgLy8gaWYgdGhleSBhcmUgbm90IGRpcnR5LiAoVXNlZCB3aGVu
IGNvbXB1dGluZyB0aGUgZnJlcXVlbmN5CiAgICAgLy8gcmVzcG9uc2UuKQotICAgIHZvaWQgdXBk
YXRlQ29lZmZpY2llbnRzSWZOZWNlc3NhcnkoYm9vbCB1c2VTbW9vdGhpbmcsIGJvb2wgZm9yY2VV
cGRhdGUpOworICAgIHZvaWQgdXBkYXRlQ29lZmZpY2llbnRzSWZOZWNlc3Nhcnkoc2l6ZV90IGZy
YW1lc1RvUHJvY2Vzcyk7CisgICAgdm9pZCB1cGRhdGVUYWlsVGltZShzaXplX3QgY29lZkluZGV4
KTsKKworICAgIGRvdWJsZSBtX3RhaWxUaW1lIHsgc3RkOjpudW1lcmljX2xpbWl0czxkb3VibGU+
OjppbmZpbml0eSgpIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5jcHAKaW5kZXgg
ZGM5ZGEwN2YzNTVmMDYzZGNiODYyNWMwYTU0MTIzMjA5ZGU0ODExYi4uY2I4NTMxZTc1MzRlNWU5
NmUyNWJmMzU4ZTdkMTVlNWJlMDFkYTA0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29yLmNwcApAQCAtNjgsNiArNjgsMTEgQEAgdm9p
ZCBCaXF1YWRQcm9jZXNzb3I6OmNoZWNrRm9yRGlydHlDb2VmZmljaWVudHMoKQogICAgIGlmICht
X3BhcmFtZXRlcjEtPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkgfHwgbV9wYXJhbWV0ZXIyLT5o
YXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpIHx8IG1fcGFyYW1ldGVyMy0+aGFzU2FtcGxlQWNjdXJh
dGVWYWx1ZXMoKSB8fCBtX3BhcmFtZXRlcjQtPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkpIHsK
ICAgICAgICAgbV9maWx0ZXJDb2VmZmljaWVudHNEaXJ0eSA9IHRydWU7CiAgICAgICAgIG1faGFz
U2FtcGxlQWNjdXJhdGVWYWx1ZXMgPSB0cnVlOworCisgICAgICAgIG1fc2hvdWxkVXNlQVJhdGUg
PSBtX3BhcmFtZXRlcjEtPmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRl
CisgICAgICAgICAgICB8fCBtX3BhcmFtZXRlcjItPmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21h
dGlvblJhdGU6OkFSYXRlCisgICAgICAgICAgICB8fCBtX3BhcmFtZXRlcjMtPmF1dG9tYXRpb25S
YXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCisgICAgICAgICAgICB8fCBtX3BhcmFtZXRl
cjQtPmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlOwogICAgIH0gZWxz
ZSB7CiAgICAgICAgIGlmIChtX2hhc0p1c3RSZXNldCkgewogICAgICAgICAgICAgLy8gU25hcCB0
byBleGFjdCB2YWx1ZXMgZmlyc3QgdGltZSBhZnRlciByZXNldCwgdGhlbiBzbW9vdGggZm9yIHN1
YnNlcXVlbnQgY2hhbmdlcy4KQEAgLTExOSw2ICsxMjQsMTQgQEAgdm9pZCBCaXF1YWRQcm9jZXNz
b3I6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKGludCBuRnJlcXVlbmNpZXMsIGNvbnN0IGZsb2F0KiBm
cmVxdWUKICAgICAKICAgICBhdXRvIHJlc3BvbnNlS2VybmVsID0gbWFrZVVuaXF1ZTxCaXF1YWRE
U1BLZXJuZWw+KHRoaXMpOwogCisgICAgLy8gR2V0IGEgY29weSBvZiB0aGUgY3VycmVudCBiaXF1
YWQgZmlsdGVyIGNvZWZmaWNpZW50cyBzbyB3ZSBjYW4gdXBkYXRlCisgICAgLy8gfHJlc3BvbnNl
X2tlcm5lbHwgd2l0aCB0aGVzZSB2YWx1ZXMuCisgICAgZmxvYXQgY3V0b2ZmRnJlcXVlbmN5ID0g
cGFyYW1ldGVyMSgpLnZhbHVlKCk7CisgICAgZmxvYXQgcSA9IHBhcmFtZXRlcjIoKS52YWx1ZSgp
OworICAgIGZsb2F0IGdhaW4gPSBwYXJhbWV0ZXIzKCkudmFsdWUoKTsKKyAgICBmbG9hdCBkZXR1
bmUgPSBwYXJhbWV0ZXI0KCkudmFsdWUoKTsKKworICAgIHJlc3BvbnNlS2VybmVsLT51cGRhdGVD
b2VmZmljaWVudHMoMSwgJmN1dG9mZkZyZXF1ZW5jeSwgJnEsICZnYWluLCAmZGV0dW5lKTsKICAg
ICByZXNwb25zZUtlcm5lbC0+Z2V0RnJlcXVlbmN5UmVzcG9uc2UobkZyZXF1ZW5jaWVzLCBmcmVx
dWVuY3lIeiwgbWFnUmVzcG9uc2UsIHBoYXNlUmVzcG9uc2UpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuaAppbmRleCBkYWNjYzI1
NTgxY2U0N2NjODgxOTRiOGQyZDJkYzEzNmU3ZjRmODZiLi44NDk3YWM0NTA1Zjc2NzIyZmM1YmJk
NTU1OGVlNDgwMjZlZDQ4ZDViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vQmlxdWFkUHJvY2Vzc29yLmgKQEAgLTY4LDYgKzY4LDggQEAgcHVibGljOgogICAgIEJp
cXVhZEZpbHRlclR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQogICAgIHZvaWQg
c2V0VHlwZShCaXF1YWRGaWx0ZXJUeXBlKTsKIAorICAgIGJvb2wgc2hvdWxkVXNlQVJhdGUoKSBj
b25zdCB7IHJldHVybiBtX3Nob3VsZFVzZUFSYXRlOyB9CisKIHByaXZhdGU6CiAgICAgQmlxdWFk
RmlsdGVyVHlwZSBtX3R5cGU7CiAKQEAgLTgxLDYgKzgzLDggQEAgcHJpdmF0ZToKIAogICAgIC8v
IFNldCB0byB0cnVlIGlmIGFueSBvZiB0aGUgZmlsdGVyIHBhcmFtZXRlcnMgYXJlIHNhbXBsZS1h
Y2N1cmF0ZS4KICAgICBib29sIG1faGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXM7CisKKyAgICBib29s
IG1fc2hvdWxkVXNlQVJhdGUgeyB0cnVlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmNwcAppbmRleCAxNjg2YjU2YTc2
NDc1YTdkNjMwNWJiOTA4MDFmZWRlYTk0MmE5NTRiLi4xZDM5ZDY3OGQ1MTZkMmE1NDllOTAyM2Rl
ZWZhMTQ2MGIyNjViNTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRp
by9CaXF1YWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5j
cHAKQEAgLTQ1LDYgKzQ1LDggQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjb25zdCBzaXpl
X3QgQmlxdWFkOjpNYXhGcmFtZXNUb1Byb2Nlc3MgPSAxMjg7CisKICNpZiBVU0UoQUNDRUxFUkFU
RSkKIGNvbnN0IGludCBrQnVmZmVyU2l6ZSA9IDEwMjQ7CiAjZW5kaWYKQEAgLTU3LDggKzU5LDE2
IEBAIEJpcXVhZDo6QmlxdWFkKCkKICAgICBtX291dHB1dEJ1ZmZlci5hbGxvY2F0ZShrQnVmZmVy
U2l6ZSArIDIpOwogI2VuZGlmCiAKKyAgICAvLyBBbGxvY2F0ZSBlbm91Z2ggc3BhY2UgZm9yIHRo
ZSBhLXJhdGUgZmlsdGVyIGNvZWZmaWNpZW50cyB0byBoYW5kbGUgYQorICAgIC8vIHJlbmRlcmlu
ZyBxdWFudHVtIG9mIDEyOCBmcmFtZXMuCisgICAgbV9iMC5hbGxvY2F0ZShNYXhGcmFtZXNUb1By
b2Nlc3MpOworICAgIG1fYjEuYWxsb2NhdGUoTWF4RnJhbWVzVG9Qcm9jZXNzKTsKKyAgICBtX2Iy
LmFsbG9jYXRlKE1heEZyYW1lc1RvUHJvY2Vzcyk7CisgICAgbV9hMS5hbGxvY2F0ZShNYXhGcmFt
ZXNUb1Byb2Nlc3MpOworICAgIG1fYTIuYWxsb2NhdGUoTWF4RnJhbWVzVG9Qcm9jZXNzKTsKKwog
ICAgIC8vIEluaXRpYWxpemUgYXMgcGFzcy10aHJ1IChzdHJhaWdodC13aXJlLCBubyBmaWx0ZXIg
ZWZmZWN0KQotICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwgMSwgMCwgMCk7
CisgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygwLCAxLCAwLCAwLCAxLCAwLCAwKTsKIAog
ICAgIHJlc2V0KCk7IC8vIGNsZWFyIGZpbHRlciBtZW1vcnkKIH0KQEAgLTY3LDUzICs3NywxMTQg
QEAgQmlxdWFkOjp+QmlxdWFkKCkgPSBkZWZhdWx0OwogCiB2b2lkIEJpcXVhZDo6cHJvY2Vzcyhj
b25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNz
KQogewotI2lmIFVTRShBQ0NFTEVSQVRFKQotICAgIC8vIFVzZSB2ZWNMaWIgaWYgYXZhaWxhYmxl
Ci0gICAgcHJvY2Vzc0Zhc3Qoc291cmNlUCwgZGVzdFAsIGZyYW1lc1RvUHJvY2Vzcyk7Ci0KLSNl
bHNlCisgICAgaWYgKGhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkpIHsKKyAgICAgICAgaW50IG4g
PSBmcmFtZXNUb1Byb2Nlc3M7CisKKyAgICAgICAgLy8gQ3JlYXRlIGxvY2FsIGNvcGllcyBvZiBt
ZW1iZXIgdmFyaWFibGVzCisgICAgICAgIGRvdWJsZSB4MSA9IG1feDE7CisgICAgICAgIGRvdWJs
ZSB4MiA9IG1feDI7CisgICAgICAgIGRvdWJsZSB5MSA9IG1feTE7CisgICAgICAgIGRvdWJsZSB5
MiA9IG1feTI7CisKKyAgICAgICAgY29uc3QgZG91YmxlKiBiMCA9IG1fYjAuZGF0YSgpOworICAg
ICAgICBjb25zdCBkb3VibGUqIGIxID0gbV9iMS5kYXRhKCk7CisgICAgICAgIGNvbnN0IGRvdWJs
ZSogYjIgPSBtX2IyLmRhdGEoKTsKKyAgICAgICAgY29uc3QgZG91YmxlKiBhMSA9IG1fYTEuZGF0
YSgpOworICAgICAgICBjb25zdCBkb3VibGUqIGEyID0gbV9hMi5kYXRhKCk7CisKKyAgICAgICAg
Zm9yIChpbnQgayA9IDA7IGsgPCBuOyArK2spIHsKKyAgICAgICAgICAgIC8vIEZJWE1FOiB0aGlz
IGNhbiBiZSBvcHRpbWl6ZWQgYnkgcGlwZWxpbmluZyB0aGUgbXVsdGlwbHkgYWRkcy4uLgorICAg
ICAgICAgICAgZmxvYXQgeCA9ICpzb3VyY2VQKys7CisgICAgICAgICAgICBmbG9hdCB5ID0gYjBb
a10gKiB4ICsgYjFba10gKiB4MSArIGIyW2tdICogeDIgLSBhMVtrXSAqIHkxIC0gYTJba10gKiB5
MjsKKworICAgICAgICAgICAgKmRlc3RQKysgPSB5OworCisgICAgICAgICAgICAvLyBVcGRhdGUg
c3RhdGUgdmFyaWFibGVzCisgICAgICAgICAgICB4MiA9IHgxOworICAgICAgICAgICAgeDEgPSB4
OworICAgICAgICAgICAgeTIgPSB5MTsKKyAgICAgICAgICAgIHkxID0geTsKKyAgICAgICAgfQog
Ci0gICAgaW50IG4gPSBmcmFtZXNUb1Byb2Nlc3M7CisgICAgICAgIC8vIExvY2FsIHZhcmlhYmxl
cyBiYWNrIHRvIG1lbWJlci4gRmx1c2ggZGVub3JtYWxzIGhlcmUgc28gd2UKKyAgICAgICAgLy8g
ZG9uJ3Qgc2xvdyBkb3duIHRoZSBpbm5lciBsb29wIGFib3ZlLgorICAgICAgICBtX3gxID0gRGVu
b3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHgxKTsKKyAgICAgICAgbV94
MiA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxGbG9hdFRvWmVybyh4Mik7CisgICAg
ICAgIG1feTEgPSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRUb1plcm8oeTEp
OworICAgICAgICBtX3kyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9a
ZXJvKHkyKTsKKworICAgICAgICAvLyBUaGVyZSBpcyBhbiBhc3N1bXB0aW9uIGhlcmUgdGhhdCBv
bmNlIHdlIGhhdmUgc2FtcGxlIGFjY3VyYXRlIHZhbHVlcyB3ZQorICAgICAgICAvLyBjYW4gbmV2
ZXIgZ28gYmFjayB0byBub3QgaGF2aW5nIHNhbXBsZSBhY2N1cmF0ZSB2YWx1ZXMuIFRoaXMgaXMK
KyAgICAgICAgLy8gY3VycmVudGx5IHRydWUgaW4gdGhlIHdheSBBdWRpb1BhcmFtVGltbGluZSBp
cyBpbXBsZW1lbnRlZDogb25jZSBhbgorICAgICAgICAvLyBldmVudCBpcyBpbnNlcnRlZCwgc2Ft
cGxlIGFjY3VyYXRlIHByb2Nlc3NpbmcgaXMgYWx3YXlzIGVuYWJsZWQuCisgICAgICAgIC8vCisg
ICAgICAgIC8vIElmIHNvLCB0aGVuIHdlIG5ldmVyIGhhdmUgdG8gdXBkYXRlIHRoZSBzdGF0ZSB2
YXJpYWJsZXMgZm9yIHRoZSBNQUNPU1gKKyAgICAgICAgLy8gcGF0aC4gVGhlIHN0cnVjdHVyZSBv
ZiB0aGUgc3RhdGUgdmFyaWFibGUgaW4gdGhlc2UgY2FzZXMgYXJlbid0IHdlbGwKKyAgICAgICAg
Ly8gZG9jdW1lbnRlZCBzbyBpdCdzIG5vdCBjbGVhciBob3cgdG8gdXBkYXRlIHRoZW0gYW55d2F5
LgogCi0gICAgLy8gQ3JlYXRlIGxvY2FsIGNvcGllcyBvZiBtZW1iZXIgdmFyaWFibGVzCi0gICAg
ZG91YmxlIHgxID0gbV94MTsKLSAgICBkb3VibGUgeDIgPSBtX3gyOwotICAgIGRvdWJsZSB5MSA9
IG1feTE7Ci0gICAgZG91YmxlIHkyID0gbV95MjsKLQotICAgIGRvdWJsZSBiMCA9IG1fYjA7Ci0g
ICAgZG91YmxlIGIxID0gbV9iMTsKLSAgICBkb3VibGUgYjIgPSBtX2IyOwotICAgIGRvdWJsZSBh
MSA9IG1fYTE7Ci0gICAgZG91YmxlIGEyID0gbV9hMjsKLQotICAgIHdoaWxlIChuLS0pIHsKLSAg
ICAgICAgLy8gRklYTUU6IHRoaXMgY2FuIGJlIG9wdGltaXplZCBieSBwaXBlbGluaW5nIHRoZSBt
dWx0aXBseSBhZGRzLi4uCi0gICAgICAgIGZsb2F0IHggPSAqc291cmNlUCsrOwotICAgICAgICBm
bG9hdCB5ID0gYjAqeCArIGIxKngxICsgYjIqeDIgLSBhMSp5MSAtIGEyKnkyOwotCi0gICAgICAg
ICpkZXN0UCsrID0geTsKLQotICAgICAgICAvLyBVcGRhdGUgc3RhdGUgdmFyaWFibGVzCi0gICAg
ICAgIHgyID0geDE7Ci0gICAgICAgIHgxID0geDsKLSAgICAgICAgeTIgPSB5MTsKLSAgICAgICAg
eTEgPSB5OwotICAgIH0KKyAgICB9IGVsc2UgeworI2lmIFVTRShBQ0NFTEVSQVRFKQorICAgICAg
ICBkb3VibGUqIGlucHV0UCA9IG1faW5wdXRCdWZmZXIuZGF0YSgpOworICAgICAgICBkb3VibGUq
IG91dHB1dFAgPSBtX291dHB1dEJ1ZmZlci5kYXRhKCk7CisKKyAgICAgICAgLy8gU2V0IHVwIGZp
bHRlciBzdGF0ZS4gVGhpcyBpcyBuZWVkZWQgaW4gY2FzZSB3ZSdyZSBzd2l0Y2hpbmcgZnJvbQor
ICAgICAgICAvLyBmaWx0ZXJpbmcgd2l0aCB2YXJpYWJsZSBjb2VmZmljaWVudHMgKGkuZS4sIHdp
dGggYXV0b21hdGlvbnMpIHRvCisgICAgICAgIC8vIGZpeGVkIGNvZWZmaWNpZW50cyAod2l0aG91
dCBhdXRvbWF0aW9ucykuCisgICAgICAgIGlucHV0UFswXSA9IG1feDI7CisgICAgICAgIGlucHV0
UFsxXSA9IG1feDE7CisgICAgICAgIG91dHB1dFBbMF0gPSBtX3kyOworICAgICAgICBvdXRwdXRQ
WzFdID0gbV95MTsKKworICAgICAgICAvLyBVc2UgdmVjTGliIGlmIGF2YWlsYWJsZQorICAgICAg
ICBwcm9jZXNzRmFzdChzb3VyY2VQLCBkZXN0UCwgZnJhbWVzVG9Qcm9jZXNzKTsKKworICAgICAg
ICAvLyBDb3B5IHRoZSBsYXN0IGlucHV0cyBhbmQgb3V0cHV0cyB0byB0aGUgZmlsdGVyIG1lbW9y
eSB2YXJpYWJsZXMuCisgICAgICAgIC8vIFRoaXMgaXMgbmVlZGVkIGJlY2F1c2UgdGhlIG5leHQg
cmVuZGVyaW5nIHF1YW50dW0gbWlnaHQgYmUgYW4KKyAgICAgICAgLy8gYXV0b21hdGlvbiB3aGlj
aCBuZWVkcyB0aGUgaGlzdG9yeSB0byBjb250aW51ZSBjb3JyZWN0bHkuIEJlY2F1c2UKKyAgICAg
ICAgLy8gc291cmNlUCBhbmQgZGVzdFAgY2FuIGJlIHRoZSBzYW1lIGJsb2NrIG9mIG1lbW9yeSwg
d2UgY2FuJ3QgcmVhZCBmcm9tCisgICAgICAgIC8vIHNvdXJjZVAgdG8gZ2V0IHRoZSBsYXN0IGlu
cHV0cy4gRm9ydHVuYXRlbHksIHByb2Nlc3NGYXN0IGhhcyBwdXQgdGhlCisgICAgICAgIC8vIGxh
c3QgaW5wdXRzIGluIGlucHV0WzBdIGFuZCBpbnB1dFsxXS4KKyAgICAgICAgbV94MSA9IGlucHV0
UFsxXTsKKyAgICAgICAgbV94MiA9IGlucHV0UFswXTsKKyAgICAgICAgbV95MSA9IGRlc3RQW2Zy
YW1lc1RvUHJvY2VzcyAtIDFdOworICAgICAgICBtX3kyID0gZGVzdFBbZnJhbWVzVG9Qcm9jZXNz
IC0gMl07CisjZWxzZQorICAgICAgICBpbnQgbiA9IGZyYW1lc1RvUHJvY2VzczsKKworICAgICAg
ICAvLyBDcmVhdGUgbG9jYWwgY29waWVzIG9mIG1lbWJlciB2YXJpYWJsZXMKKyAgICAgICAgZG91
YmxlIHgxID0gbV94MTsKKyAgICAgICAgZG91YmxlIHgyID0gbV94MjsKKyAgICAgICAgZG91Ymxl
IHkxID0gbV95MTsKKyAgICAgICAgZG91YmxlIHkyID0gbV95MjsKKworICAgICAgICBkb3VibGUg
YjAgPSBtX2IwWzBdOworICAgICAgICBkb3VibGUgYjEgPSBtX2IxWzBdOworICAgICAgICBkb3Vi
bGUgYjIgPSBtX2IyWzBdOworICAgICAgICBkb3VibGUgYTEgPSBtX2ExWzBdOworICAgICAgICBk
b3VibGUgYTIgPSBtX2EyWzBdOworCisgICAgICAgIHdoaWxlIChuLS0pIHsKKyAgICAgICAgICAg
IC8vIEZJWE1FOiB0aGlzIGNhbiBiZSBvcHRpbWl6ZWQgYnkgcGlwZWxpbmluZyB0aGUgbXVsdGlw
bHkgYWRkcy4uLgorICAgICAgICAgICAgZmxvYXQgeCA9ICpzb3VyY2VQKys7CisgICAgICAgICAg
ICBmbG9hdCB5ID0gYjAgKiB4ICsgYjEgKiB4MSArIGIyICogeDIgLSBhMSAqIHkxIC0gYTIgKiB5
MjsKKworICAgICAgICAgICAgKmRlc3RQKysgPSB5OworCisgICAgICAgICAgICAvLyBVcGRhdGUg
c3RhdGUgdmFyaWFibGVzCisgICAgICAgICAgICB4MiA9IHgxOworICAgICAgICAgICAgeDEgPSB4
OworICAgICAgICAgICAgeTIgPSB5MTsKKyAgICAgICAgICAgIHkxID0geTsKKyAgICAgICAgfQog
Ci0gICAgLy8gTG9jYWwgdmFyaWFibGVzIGJhY2sgdG8gbWVtYmVyLiBGbHVzaCBkZW5vcm1hbHMg
aGVyZSBzbyB3ZQotICAgIC8vIGRvbid0IHNsb3cgZG93biB0aGUgaW5uZXIgbG9vcCBhYm92ZS4K
LSAgICBtX3gxID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHgx
KTsKLSAgICBtX3gyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJv
KHgyKTsKLSAgICBtX3kxID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9a
ZXJvKHkxKTsKLSAgICBtX3kyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0
VG9aZXJvKHkyKTsKLQotICAgIG1fYjAgPSBiMDsKLSAgICBtX2IxID0gYjE7Ci0gICAgbV9iMiA9
IGIyOwotICAgIG1fYTEgPSBhMTsKLSAgICBtX2EyID0gYTI7CisgICAgICAgIC8vIExvY2FsIHZh
cmlhYmxlcyBiYWNrIHRvIG1lbWJlci4gRmx1c2ggZGVub3JtYWxzIGhlcmUgc28gd2UKKyAgICAg
ICAgLy8gZG9uJ3Qgc2xvdyBkb3duIHRoZSBpbm5lciBsb29wIGFib3ZlLgorICAgICAgICBtX3gx
ID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHgxKTsKKyAgICAg
ICAgbV94MiA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxGbG9hdFRvWmVybyh4Mik7
CisgICAgICAgIG1feTEgPSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRUb1pl
cm8oeTEpOworICAgICAgICBtX3kyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZs
b2F0VG9aZXJvKHkyKTsKICNlbmRpZgorICAgIH0KIH0KIAogI2lmIFVTRShBQ0NFTEVSQVRFKQpA
QCAtMTIzLDExICsxOTQsMTEgQEAgdm9pZCBCaXF1YWQ6OnByb2Nlc3MoY29uc3QgZmxvYXQqIHNv
dXJjZVAsIGZsb2F0KiBkZXN0UCwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKIHZvaWQgQmlxdWFk
Ojpwcm9jZXNzRmFzdChjb25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3Qg
ZnJhbWVzVG9Qcm9jZXNzKQogewogICAgIGRvdWJsZSBmaWx0ZXJDb2VmZmljaWVudHNbNV07Ci0g
ICAgZmlsdGVyQ29lZmZpY2llbnRzWzBdID0gbV9iMDsKLSAgICBmaWx0ZXJDb2VmZmljaWVudHNb
MV0gPSBtX2IxOwotICAgIGZpbHRlckNvZWZmaWNpZW50c1syXSA9IG1fYjI7Ci0gICAgZmlsdGVy
Q29lZmZpY2llbnRzWzNdID0gbV9hMTsKLSAgICBmaWx0ZXJDb2VmZmljaWVudHNbNF0gPSBtX2Ey
OworICAgIGZpbHRlckNvZWZmaWNpZW50c1swXSA9IG1fYjBbMF07CisgICAgZmlsdGVyQ29lZmZp
Y2llbnRzWzFdID0gbV9iMVswXTsKKyAgICBmaWx0ZXJDb2VmZmljaWVudHNbMl0gPSBtX2IyWzBd
OworICAgIGZpbHRlckNvZWZmaWNpZW50c1szXSA9IG1fYTFbMF07CisgICAgZmlsdGVyQ29lZmZp
Y2llbnRzWzRdID0gbV9hMlswXTsKIAogICAgIGRvdWJsZSogaW5wdXRQID0gbV9pbnB1dEJ1ZmZl
ci5kYXRhKCk7CiAgICAgZG91YmxlKiBvdXRwdXRQID0gbV9vdXRwdXRCdWZmZXIuZGF0YSgpOwpA
QCAtMTYxLDcgKzIzMiw3IEBAIHZvaWQgQmlxdWFkOjpwcm9jZXNzU2xpY2VGYXN0KGRvdWJsZSog
c291cmNlUCwgZG91YmxlKiBkZXN0UCwgZG91YmxlKiBjb2VmZmljaWVuCiAgICAgLy8gVXNlIGRv
dWJsZS1wcmVjaXNpb24gZm9yIGZpbHRlciBzdGFiaWxpdHkKICAgICB2RFNQX2RlcTIyRChzb3Vy
Y2VQLCAxLCBjb2VmZmljaWVudHNQLCBkZXN0UCwgMSwgZnJhbWVzVG9Qcm9jZXNzKTsKIAotICAg
IC8vIFNhdmUgaGlzdG9yeS4gIE5vdGUgdGhhdCBzb3VyY2VQIGFuZCBkZXN0UCByZWZlcmVuY2Ug
bV9pbnB1dEJ1ZmZlciBhbmQgbV9vdXRwdXRCdWZmZXIgcmVzcGVjdGl2ZWx5LgorICAgIC8vIFNh
dmUgaGlzdG9yeS4gTm90ZSB0aGF0IHNvdXJjZVAgYW5kIGRlc3RQIHJlZmVyZW5jZSBtX2lucHV0
QnVmZmVyIGFuZCBtX291dHB1dEJ1ZmZlciByZXNwZWN0aXZlbHkuCiAgICAgLy8gVGhlc2UgYnVm
ZmVycyBhcmUgYWxsb2NhdGVkIChpbiB0aGUgY29uc3RydWN0b3IpIHdpdGggc3BhY2UgZm9yIHR3
byBleHRyYSBzYW1wbGVzIHNvIGl0J3MgT0sgdG8gYWNjZXNzCiAgICAgLy8gYXJyYXkgdmFsdWVz
IHR3byBiZXlvbmQgZnJhbWVzVG9Qcm9jZXNzLgogICAgIHNvdXJjZVBbMF0gPSBzb3VyY2VQW2Zy
YW1lc1RvUHJvY2VzcyAtIDIgKyAyXTsKQEAgLTE4NCwyMSArMjU1LDIwIEBAIHZvaWQgQmlxdWFk
OjpyZXNldCgpCiAgICAgZG91YmxlKiBvdXRwdXRQID0gbV9vdXRwdXRCdWZmZXIuZGF0YSgpOwog
ICAgIG91dHB1dFBbMF0gPSAwOwogICAgIG91dHB1dFBbMV0gPSAwOworI2VuZGlmCiAKLSNlbHNl
CiAgICAgbV94MSA9IG1feDIgPSBtX3kxID0gbV95MiA9IDA7Ci0jZW5kaWYKKwogfQogCi12b2lk
IEJpcXVhZDo6c2V0TG93cGFzc1BhcmFtcyhkb3VibGUgY3V0b2ZmLCBkb3VibGUgcmVzb25hbmNl
KQordm9pZCBCaXF1YWQ6OnNldExvd3Bhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgY3V0
b2ZmLCBkb3VibGUgcmVzb25hbmNlKQogewogICAgIC8vIExpbWl0IGN1dG9mZiB0byAwIHRvIDEu
CiAgICAgY3V0b2ZmID0gc3RkOjptYXgoMC4wLCBzdGQ6Om1pbihjdXRvZmYsIDEuMCkpOwogICAg
IAogICAgIGlmIChjdXRvZmYgPT0gMSkgewogICAgICAgICAvLyBXaGVuIGN1dG9mZiBpcyAxLCB0
aGUgei10cmFuc2Zvcm0gaXMgMS4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygx
LCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAg
ICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAwLCAwKTsK
ICAgICB9IGVsc2UgaWYgKGN1dG9mZiA+IDApIHsKICAgICAgICAgLy8gQ29tcHV0ZSBiaXF1YWQg
Y29lZmZpY2llbnRzIGZvciBsb3dwYXNzIGZpbHRlcgogICAgICAgICByZXNvbmFuY2UgPSBzdGQ6
Om1heCgwLjAsIHJlc29uYW5jZSk7IC8vIGNhbid0IGdvIG5lZ2F0aXZlCkBAIC0yMTcsMjQgKzI4
NywyMiBAQCB2b2lkIEJpcXVhZDo6c2V0TG93cGFzc1BhcmFtcyhkb3VibGUgY3V0b2ZmLCBkb3Vi
bGUgcmVzb25hbmNlKQogICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGNvc3c7CiAgICAgICAgIGRv
dWJsZSBhMiA9IDEgLSBhbHBoYTsKIAotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRz
KGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2ll
bnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICB9IGVsc2UgewogICAgICAg
ICAvLyBXaGVuIGN1dG9mZiBpcyB6ZXJvLCBub3RoaW5nIGdldHMgdGhyb3VnaCB0aGUgZmlsdGVy
LCBzbyBzZXQKICAgICAgICAgLy8gY29lZmZpY2llbnRzIHVwIGNvcnJlY3RseS4KLSAgICAgICAg
c2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygwLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRz
KGluZGV4LCAwLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRI
aWdocGFzc1BhcmFtcyhkb3VibGUgY3V0b2ZmLCBkb3VibGUgcmVzb25hbmNlKQordm9pZCBCaXF1
YWQ6OnNldEhpZ2hwYXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGN1dG9mZiwgZG91Ymxl
IHJlc29uYW5jZSkKIHsKICAgICAvLyBMaW1pdCBjdXRvZmYgdG8gMCB0byAxLgogICAgIGN1dG9m
ZiA9IHN0ZDo6bWF4KDAuMCwgc3RkOjptaW4oY3V0b2ZmLCAxLjApKTsKIAogICAgIGlmIChjdXRv
ZmYgPT0gMSkgewogICAgICAgICAvLyBUaGUgei10cmFuc2Zvcm0gaXMgMC4KLSAgICAgICAgc2V0
Tm9ybWFsaXplZENvZWZmaWNpZW50cygwLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGlu
ZGV4LCAwLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9IGVsc2UgaWYgKGN1dG9mZiA+IDApIHsKICAg
ICAgICAgLy8gQ29tcHV0ZSBiaXF1YWQgY29lZmZpY2llbnRzIGZvciBoaWdocGFzcyBmaWx0ZXIK
ICAgICAgICAgcmVzb25hbmNlID0gc3RkOjptYXgoMC4wLCByZXNvbmFuY2UpOyAvLyBjYW4ndCBn
byBuZWdhdGl2ZQpAQCAtMjUzLDI5ICszMjEsMjggQEAgdm9pZCBCaXF1YWQ6OnNldEhpZ2hwYXNz
UGFyYW1zKGRvdWJsZSBjdXRvZmYsIGRvdWJsZSByZXNvbmFuY2UpCiAgICAgICAgIGRvdWJsZSBh
MSA9IC0yICogY29zdzsKICAgICAgICAgZG91YmxlIGEyID0gMSAtIGFscGhhOwogCi0gICAgICAg
IHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAg
ICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwg
YTIpOwogICAgIH0gZWxzZSB7CiAgICAgICAvLyBXaGVuIGN1dG9mZiBpcyB6ZXJvLCB3ZSBuZWVk
IHRvIGJlIGNhcmVmdWwgYmVjYXVzZSB0aGUgYWJvdmUKICAgICAgIC8vIGdpdmVzIGEgcXVhZHJh
dGljIGRpdmlkZWQgYnkgdGhlIHNhbWUgcXVhZHJhdGljLCB3aXRoIHBvbGVzCiAgICAgICAvLyBh
bmQgemVyb3Mgb24gdGhlIHVuaXQgY2lyY2xlIGluIHRoZSBzYW1lIHBsYWNlLiBXaGVuIGN1dG9m
ZgogICAgICAgLy8gaXMgemVybywgdGhlIHotdHJhbnNmb3JtIGlzIDEuCi0gICAgICAgIHNldE5v
cm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRl
eCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfQogfQogCi12b2lkIEJpcXVhZDo6c2V0Tm9ybWFs
aXplZENvZWZmaWNpZW50cyhkb3VibGUgYjAsIGRvdWJsZSBiMSwgZG91YmxlIGIyLCBkb3VibGUg
YTAsIGRvdWJsZSBhMSwgZG91YmxlIGEyKQordm9pZCBCaXF1YWQ6OnNldE5vcm1hbGl6ZWRDb2Vm
ZmljaWVudHMoc2l6ZV90IGluZGV4LCBkb3VibGUgYjAsIGRvdWJsZSBiMSwgZG91YmxlIGIyLCBk
b3VibGUgYTAsIGRvdWJsZSBhMSwgZG91YmxlIGEyKQogewogICAgIGRvdWJsZSBhMEludmVyc2Ug
PSAxIC8gYTA7CiAgICAgCi0gICAgbV9iMCA9IGIwICogYTBJbnZlcnNlOwotICAgIG1fYjEgPSBi
MSAqIGEwSW52ZXJzZTsKLSAgICBtX2IyID0gYjIgKiBhMEludmVyc2U7Ci0gICAgbV9hMSA9IGEx
ICogYTBJbnZlcnNlOwotICAgIG1fYTIgPSBhMiAqIGEwSW52ZXJzZTsKKyAgICBtX2IwW2luZGV4
XSA9IGIwICogYTBJbnZlcnNlOworICAgIG1fYjFbaW5kZXhdID0gYjEgKiBhMEludmVyc2U7Cisg
ICAgbV9iMltpbmRleF0gPSBiMiAqIGEwSW52ZXJzZTsKKyAgICBtX2ExW2luZGV4XSA9IGExICog
YTBJbnZlcnNlOworICAgIG1fYTJbaW5kZXhdID0gYTIgKiBhMEludmVyc2U7CiB9CiAKLXZvaWQg
QmlxdWFkOjpzZXRMb3dTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWlu
KQordm9pZCBCaXF1YWQ6OnNldExvd1NoZWxmUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZy
ZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKIHsKICAgICAvLyBDbGlwIGZyZXF1ZW5jaWVzIHRvIGJl
dHdlZW4gMCBhbmQgMSwgaW5jbHVzaXZlLgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwg
c3RkOjptaW4oZnJlcXVlbmN5LCAxLjApKTsKQEAgLTI4NCw4ICszNTEsNyBAQCB2b2lkIEJpcXVh
ZDo6c2V0TG93U2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKIAog
ICAgIGlmIChmcmVxdWVuY3kgPT0gMSkgewogICAgICAgICAvLyBUaGUgei10cmFuc2Zvcm0gaXMg
YSBjb25zdGFudCBnYWluLgotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKEEgKiBB
LCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAg
ICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBBICogQSwgMCwgMCwgMSwgMCwg
MCk7CiAgICAgfSBlbHNlIGlmIChmcmVxdWVuY3kgPiAwKSB7CiAgICAgICAgIGRvdWJsZSB3MCA9
IHBpRG91YmxlICogZnJlcXVlbmN5OwogICAgICAgICBkb3VibGUgUyA9IDE7IC8vIGZpbHRlciBz
bG9wZSAoMSBpcyBtYXggdmFsdWUpCkBAIC0zMDIsMTUgKzM2OCwxNCBAQCB2b2lkIEJpcXVhZDo6
c2V0TG93U2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKICAgICAg
ICAgZG91YmxlIGExID0gLTIgKiAoYU1pbnVzT25lICsgYVBsdXNPbmUgKiBrKTsKICAgICAgICAg
ZG91YmxlIGEyID0gYVBsdXNPbmUgKyBhTWludXNPbmUgKiBrIC0gazI7CiAKLSAgICAgICAgc2V0
Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAg
c2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7
CiAgICAgfSBlbHNlIHsKICAgICAgICAgLy8gV2hlbiBmcmVxdWVuY3kgaXMgMCwgdGhlIHotdHJh
bnNmb3JtIGlzIDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0
Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfQog
fQogCi12b2lkIEJpcXVhZDo6c2V0SGlnaFNoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRv
dWJsZSBkYkdhaW4pCit2b2lkIEJpcXVhZDo6c2V0SGlnaFNoZWxmUGFyYW1zKHNpemVfdCBpbmRl
eCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKIHsKICAgICAvLyBDbGlwIGZyZXF1
ZW5jaWVzIHRvIGJldHdlZW4gMCBhbmQgMSwgaW5jbHVzaXZlLgogICAgIGZyZXF1ZW5jeSA9IHN0
ZDo6bWF4KDAuMCwgc3RkOjptaW4oZnJlcXVlbmN5LCAxLjApKTsKQEAgLTMxOSw4ICszODQsNyBA
QCB2b2lkIEJpcXVhZDo6c2V0SGlnaFNoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJs
ZSBkYkdhaW4pCiAKICAgICBpZiAoZnJlcXVlbmN5ID09IDEpIHsKICAgICAgICAgLy8gVGhlIHot
dHJhbnNmb3JtIGlzIDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwg
MCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAg
c2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAg
fSBlbHNlIGlmIChmcmVxdWVuY3kgPiAwKSB7CiAgICAgICAgIGRvdWJsZSB3MCA9IHBpRG91Ymxl
ICogZnJlcXVlbmN5OwogICAgICAgICBkb3VibGUgUyA9IDE7IC8vIGZpbHRlciBzbG9wZSAoMSBp
cyBtYXggdmFsdWUpCkBAIC0zMzcsMTUgKzQwMSwxNCBAQCB2b2lkIEJpcXVhZDo6c2V0SGlnaFNo
ZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBkYkdhaW4pCiAgICAgICAgIGRvdWJs
ZSBhMSA9IDIgKiAoYU1pbnVzT25lIC0gYVBsdXNPbmUgKiBrKTsKICAgICAgICAgZG91YmxlIGEy
ID0gYVBsdXNPbmUgLSBhTWludXNPbmUgKiBrIC0gazI7CiAKLSAgICAgICAgc2V0Tm9ybWFsaXpl
ZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAgc2V0Tm9ybWFs
aXplZENvZWZmaWNpZW50cyhpbmRleCwgYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CiAgICAgfSBl
bHNlIHsKICAgICAgICAgLy8gV2hlbiBmcmVxdWVuY3kgPSAwLCB0aGUgZmlsdGVyIGlzIGp1c3Qg
YSBnYWluLCBBXjIuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoQSAqIEEsIDAs
IDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAg
IHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIEEgKiBBLCAwLCAwLCAxLCAwLCAwKTsK
ICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRQZWFraW5nUGFyYW1zKGRvdWJsZSBmcmVxdWVu
Y3ksIGRvdWJsZSBRLCBkb3VibGUgZGJHYWluKQordm9pZCBCaXF1YWQ6OnNldFBlYWtpbmdQYXJh
bXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSwgZG91YmxlIGRiR2Fp
bikKIHsKICAgICAvLyBDbGlwIGZyZXF1ZW5jaWVzIHRvIGJldHdlZW4gMCBhbmQgMSwgaW5jbHVz
aXZlLgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwgc3RkOjptaW4oZnJlcXVlbmN5LCAx
LjApKTsKQEAgLTM2OCwyMiArNDMxLDIwIEBAIHZvaWQgQmlxdWFkOjpzZXRQZWFraW5nUGFyYW1z
KGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRLCBkb3VibGUgZGJHYWluKQogICAgICAgICAgICAg
ZG91YmxlIGExID0gLTIgKiBrOwogICAgICAgICAgICAgZG91YmxlIGEyID0gMSAtIGFscGhhIC8g
QTsKIAotICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBh
MCwgYTEsIGEyKTsKKyAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgs
IGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
Ly8gV2hlbiBRID0gMCwgdGhlIGFib3ZlIGZvcm11bGFzIGhhdmUgcHJvYmxlbXMuIElmIHdlIGxv
b2sgYXQKICAgICAgICAgICAgIC8vIHRoZSB6LXRyYW5zZm9ybSwgd2UgY2FuIHNlZSB0aGF0IHRo
ZSBsaW1pdCBhcyBRLT4wIGlzIEFeMiwgc28KICAgICAgICAgICAgIC8vIHNldCB0aGUgZmlsdGVy
IHRoYXQgd2F5LgotICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhBICogQSwg
MCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7Cisg
ICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBBICogQSwgMCwgMCwg
MSwgMCwgMCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICAvLyBXaGVuIGZyZXF1
ZW5jeSBpcyAwIG9yIDEsIHRoZSB6LXRyYW5zZm9ybSBpcyAxLgotICAgICAgICBzZXROb3JtYWxp
emVkQ29lZmZpY2llbnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIDEs
IDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6OnNldEFsbHBhc3NQYXJh
bXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCit2b2lkIEJpcXVhZDo6c2V0QWxscGFzc1Bh
cmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKQogewogICAgIC8v
IENsaXAgZnJlcXVlbmNpZXMgdG8gYmV0d2VlbiAwIGFuZCAxLCBpbmNsdXNpdmUuCiAgICAgZnJl
cXVlbmN5ID0gc3RkOjptYXgoMC4wLCBzdGQ6Om1pbihmcmVxdWVuY3ksIDEuMCkpOwpAQCAtNDA0
LDIyICs0NjUsMjAgQEAgdm9pZCBCaXF1YWQ6OnNldEFsbHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1
ZW5jeSwgZG91YmxlIFEpCiAgICAgICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGs7CiAgICAgICAg
ICAgICBkb3VibGUgYTIgPSAxIC0gYWxwaGE7CiAKLSAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIFdoZW4gUSA9IDAsIHRoZSBhYm92ZSBmb3JtdWxh
cyBoYXZlIHByb2JsZW1zLiBJZiB3ZSBsb29rIGF0CiAgICAgICAgICAgICAvLyB0aGUgei10cmFu
c2Zvcm0sIHdlIGNhbiBzZWUgdGhhdCB0aGUgbGltaXQgYXMgUS0+MCBpcyAtMSwgc28KICAgICAg
ICAgICAgIC8vIHNldCB0aGUgZmlsdGVyIHRoYXQgd2F5LgotICAgICAgICAgICAgc2V0Tm9ybWFs
aXplZENvZWZmaWNpZW50cygtMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRz
KGluZGV4LCAtMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAg
ICAgICAvLyBXaGVuIGZyZXF1ZW5jeSBpcyAwIG9yIDEsIHRoZSB6LXRyYW5zZm9ybSBpcyAxLgot
ICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2Vm
ZmljaWVudHMoaW5kZXgsIDEsIDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1
YWQ6OnNldE5vdGNoUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKQordm9pZCBCaXF1
YWQ6OnNldE5vdGNoUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91Ymxl
IFEpCiB7CiAgICAgLy8gQ2xpcCBmcmVxdWVuY2llcyB0byBiZXR3ZWVuIDAgYW5kIDEsIGluY2x1
c2l2ZS4KICAgICBmcmVxdWVuY3kgPSBzdGQ6Om1heCgwLjAsIHN0ZDo6bWluKGZyZXF1ZW5jeSwg
MS4wKSk7CkBAIC00NDAsMjIgKzQ5OSwyMCBAQCB2b2lkIEJpcXVhZDo6c2V0Tm90Y2hQYXJhbXMo
ZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCiAgICAgICAgICAgICBkb3VibGUgYTEgPSAtMiAq
IGs7CiAgICAgICAgICAgICBkb3VibGUgYTIgPSAxIC0gYWxwaGE7CiAKLSAgICAgICAgICAgIHNl
dE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAg
ICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEs
IGEyKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIFdoZW4gUSA9IDAsIHRoZSBh
Ym92ZSBmb3JtdWxhcyBoYXZlIHByb2JsZW1zLiBJZiB3ZSBsb29rIGF0CiAgICAgICAgICAgICAv
LyB0aGUgei10cmFuc2Zvcm0sIHdlIGNhbiBzZWUgdGhhdCB0aGUgbGltaXQgYXMgUS0+MCBpcyAw
LCBzbwogICAgICAgICAgICAgLy8gc2V0IHRoZSBmaWx0ZXIgdGhhdCB3YXkuCi0gICAgICAgICAg
ICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENv
ZWZmaWNpZW50cyhpbmRleCwgMCwgMCwgMCwgMSwgMCwgMCk7CiAgICAgICAgIH0KICAgICB9IGVs
c2UgewogICAgICAgICAvLyBXaGVuIGZyZXF1ZW5jeSBpcyAwIG9yIDEsIHRoZSB6LXRyYW5zZm9y
bSBpcyAxLgotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDEsIDAsIDAsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1h
bGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIDEsIDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAot
dm9pZCBCaXF1YWQ6OnNldEJhbmRwYXNzUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBR
KQordm9pZCBCaXF1YWQ6OnNldEJhbmRwYXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZy
ZXF1ZW5jeSwgZG91YmxlIFEpCiB7CiAgICAgLy8gTm8gbmVnYXRpdmUgZnJlcXVlbmNpZXMgYWxs
b3dlZC4KICAgICBmcmVxdWVuY3kgPSBzdGQ6Om1heCgwLjAsIGZyZXF1ZW5jeSk7CkBAIC00NzYs
MTMgKzUzMywxMiBAQCB2b2lkIEJpcXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1
ZW5jeSwgZG91YmxlIFEpCiAgICAgICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGs7CiAgICAgICAg
ICAgICBkb3VibGUgYTIgPSAxIC0gYWxwaGE7CiAKLSAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIFdoZW4gUSA9IDAsIHRoZSBhYm92ZSBmb3JtdWxh
cyBoYXZlIHByb2JsZW1zLiBJZiB3ZSBsb29rIGF0CiAgICAgICAgICAgICAvLyB0aGUgei10cmFu
c2Zvcm0sIHdlIGNhbiBzZWUgdGhhdCB0aGUgbGltaXQgYXMgUS0+MCBpcyAxLCBzbwogICAgICAg
ICAgICAgLy8gc2V0IHRoZSBmaWx0ZXIgdGhhdCB3YXkuCi0gICAgICAgICAgICBzZXROb3JtYWxp
emVkQ29lZmZpY2llbnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDEsIDAsIDApOworICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhp
bmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAg
ICAvLyBXaGVuIHRoZSBjdXRvZmYgaXMgemVybywgdGhlIHotdHJhbnNmb3JtIGFwcHJvYWNoZXMg
MCwgaWYgUQpAQCAtNDkwLDM5ICs1NDYsMTcgQEAgdm9pZCBCaXF1YWQ6OnNldEJhbmRwYXNzUGFy
YW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKQogICAgICAgICAvLyBwcmV0dHkgbXVjaCB1
bmRlZmluZWQuIFdoYXQgc2hvdWxkIHdlIGRvIGluIHRoaXMgY2FzZT8KICAgICAgICAgLy8gRm9y
IG5vdywganVzdCBtYWtlIHRoZSBmaWx0ZXIgMC4gV2hlbiB0aGUgY3V0b2ZmIGlzIDEsIHRoZQog
ICAgICAgICAvLyB6LXRyYW5zZm9ybSBhbHNvIGFwcHJvYWNoZXMgMC4KLSAgICAgICAgc2V0Tm9y
bWFsaXplZENvZWZmaWNpZW50cygwLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4
LCAwLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRaZXJvUG9s
ZVBhaXJzKHN0ZDo6Y29tcGxleDxkb3VibGU+IHplcm8sIHN0ZDo6Y29tcGxleDxkb3VibGU+IHBv
bGUpCi17Ci0gICAgZG91YmxlIGIwID0gMTsKLSAgICBkb3VibGUgYjEgPSAtMiAqIHplcm8ucmVh
bCgpOwotCi0gICAgZG91YmxlIHplcm9NYWcgPSBhYnMoemVybyk7Ci0gICAgZG91YmxlIGIyID0g
emVyb01hZyAqIHplcm9NYWc7Ci0KLSAgICBkb3VibGUgYTEgPSAtMiAqIHBvbGUucmVhbCgpOwot
Ci0gICAgZG91YmxlIHBvbGVNYWcgPSBhYnMocG9sZSk7Ci0gICAgZG91YmxlIGEyID0gcG9sZU1h
ZyAqIHBvbGVNYWc7Ci0gICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCAx
LCBhMSwgYTIpOwotfQotCi12b2lkIEJpcXVhZDo6c2V0QWxscGFzc1BvbGUoc3RkOjpjb21wbGV4
PGRvdWJsZT4gcG9sZSkKLXsKLSAgICBzdGQ6OmNvbXBsZXg8ZG91YmxlPiB6ZXJvID0gc3RkOjpj
b21wbGV4PGRvdWJsZT4oMSwgMCkgLyBwb2xlOwotICAgIHNldFplcm9Qb2xlUGFpcnMoemVybywg
cG9sZSk7Ci19Ci0KIHZvaWQgQmlxdWFkOjpnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1
ZW5jaWVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGZsb2F0KiBm
cmVxdWVuY3ksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQqIG1hZ1Jl
c3BvbnNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0KiBwaGFzZVJl
c3BvbnNlKQogewogICAgIC8vIEV2YWx1YXRlIHRoZSBaLXRyYW5zZm9ybSBvZiB0aGUgZmlsdGVy
IGF0IGdpdmVuIG5vcm1hbGl6ZWQKLSAgICAvLyBmcmVxdWVuY3kgZnJvbSAwIHRvIDEuICAoMSBj
b3JyZXNwb25kcyB0byB0aGUgTnlxdWlzdAorICAgIC8vIGZyZXF1ZW5jeSBmcm9tIDAgdG8gMS4g
KDEgY29ycmVzcG9uZHMgdG8gdGhlIE55cXVpc3QKICAgICAvLyBmcmVxdWVuY3kuKQogICAgIC8v
CiAgICAgLy8gVGhlIHotdHJhbnNmb3JtIG9mIHRoZSBmaWx0ZXIgaXMKQEAgLTUzOCwxMSArNTcy
LDExIEBAIHZvaWQgQmlxdWFkOjpnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVz
LAogICAgIC8vIHdpdGggejEgPSAxL3ogYW5kIHogPSBleHAoaipwaSpmcmVxdWVuY3kpLiBIZW5j
ZSB6MSA9IGV4cCgtaipwaSpmcmVxdWVuY3kpCiAKICAgICAvLyBNYWtlIGxvY2FsIGNvcGllcyBv
ZiB0aGUgY29lZmZpY2llbnRzIGFzIGEgbWljcm8tb3B0aW1pemF0aW9uLgotICAgIGRvdWJsZSBi
MCA9IG1fYjA7Ci0gICAgZG91YmxlIGIxID0gbV9iMTsKLSAgICBkb3VibGUgYjIgPSBtX2IyOwot
ICAgIGRvdWJsZSBhMSA9IG1fYTE7Ci0gICAgZG91YmxlIGEyID0gbV9hMjsKKyAgICBkb3VibGUg
YjAgPSBtX2IwWzBdOworICAgIGRvdWJsZSBiMSA9IG1fYjFbMF07CisgICAgZG91YmxlIGIyID0g
bV9iMlswXTsKKyAgICBkb3VibGUgYTEgPSBtX2ExWzBdOworICAgIGRvdWJsZSBhMiA9IG1fYTJb
MF07CiAgICAgCiAgICAgZm9yIChpbnQgayA9IDA7IGsgPCBuRnJlcXVlbmNpZXM7ICsraykgewog
ICAgICAgICBkb3VibGUgb21lZ2EgPSAtcGlEb3VibGUgKiBmcmVxdWVuY3lba107CkBAIC01NTUs
NiArNTg5LDMwNCBAQCB2b2lkIEJpcXVhZDo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoaW50IG5GcmVx
dWVuY2llcywKICAgICB9CiB9CiAKK3N0YXRpYyBkb3VibGUgcmVwZWF0ZWRSb290UmVzcG9uc2Uo
ZG91YmxlIG4sIGRvdWJsZSBjMSwgZG91YmxlIGMyLCBkb3VibGUgciwgZG91YmxlIGxvZ0VQUykK
K3sKKyAgICAvLyBUaGUgcmVzcG9uc2UgaXMgaChuKSA9IHJeKG4tMikqW2MxKihuKzEpKnJeMitj
Ml0uIFdlJ3JlIGxvb2tpbmcKKyAgICAvLyBmb3IgbiBzdWNoIHRoYXQgfGgobil8ID0gZXBzLiBF
cXVpdmFsZW50bHksIHdlIHdhbnQgYSByb290CisgICAgLy8gb2YgdGhlIGVxdWF0aW9uIGxvZyh8
aChuKXwpIC0gbG9nKGVwcykgPSAwIG9yCisgICAgLy8KKyAgICAvLyAgIChuLTIpKmxvZyhyKSAr
IGxvZyh8YzEqKG4rMSkqcl4yK2MyfCkgLSBsb2coZXBzKQorICAgIC8vCisgICAgLy8gVGhpcyBo
ZWxwcyB3aXRoIGZpbmRpbmcgYSBudWVtcmljYWwgc29sdXRpb24gYmVjYXVzZSB0aGlzCisgICAg
Ly8gYXBwcm94aW1hdGVseSBsaW5lYXJpemVzIHRoZSByZXNwb25zZSBmb3IgbGFyZ2Ugbi4KKwor
ICAgIHJldHVybiAobiAtIDIpICogc3RkOjpsb2cocikgKyBzdGQ6OmxvZyhzdGQ6OmZhYnMoYzEg
KiAobiArIDEpICogciAqIHIgKyBjMikpIC0gbG9nRVBTOworfQorCisKKy8vIFJlZ3VsYSBGYWxz
aSByb290IGZpbmRlciwgSWxsaW5vaXMgdmFyaWFudAorLy8gKGh0dHBzOi8vZW4ud2lraXBlZGlh
Lm9yZy93aWtpL0ZhbHNlX3Bvc2l0aW9uX21ldGhvZCNUaGVfSWxsaW5vaXNfYWxnb3JpdGhtKS4K
Ky8vCisvLyBUaGlzIGZpbmRzIGEgcm9vdCBvZiB0aGUgcmVwZWF0ZWQgcm9vdCByZXNwb25zZSB3
aGVyZSB0aGUgcm9vdCBpcworLy8gYXNzdW1lZCB0byBsaWUgYmV0d2VlbiB8bG93fCBhbmQgfGhp
Z2h8LiBUaGUgcmVzcG9uc2UgaXMgZ2l2ZW4gYnkKKy8vIHxjMXwsIHxjMnwsIGFuZCB8cnwgYXMg
ZGV0ZXJtaW5lZCBieSB8UmVwZWF0ZWRSb290UmVzcG9uc2V8LgorLy8gfGxvZ0VQU3wgaXMgdGhl
IGxvZyB0aGUgdGhlIG1heGltdW0gYWxsb3dlZCBhbXBsaXR1ZGUgaW4gdGhlCisvLyByZXNwb25z
ZS4KK3N0YXRpYyBkb3VibGUgcm9vdEZpbmRlcihkb3VibGUgbG93LCBkb3VibGUgaGlnaCwgZG91
YmxlIGxvZ0VQUywgZG91YmxlIGMxLCBkb3VibGUgYzIsIGRvdWJsZSByKQoreworICAgIC8vIERl
c2lyZWQgYWNjdXJheSBvZiB0aGUgcm9vdCAoaW4gZnJhbWVzKS4gVGhpcyBkb2Vzbid0IG5lZWQg
dG8gYmUKKyAgICAvLyBzdXBlci1hY2N1cmF0ZSwgc28gaGFsZiBmcmFtZSBpcyBnb29kIGVub3Vn
aCwgYW5kIHNob3VsZCBiZSBsZXNzCisgICAgLy8gdGhhbiAxIGJlY2F1c2UgdGhlIGFsZ29yaXRo
bSBtYXkgcHJlbWF0dXJlbHkgdGVybWluYXRlLgorICAgIGNvbnN0ZXhwciBkb3VibGUgYWNjdXJh
Y3lUaHJlc2hvbGQgPSAwLjU7CisgICAgLy8gTWF4IG51bWJlciBvZiBpdGVyYXRpb25zIHRvIGRv
LiBJZiB3ZSBoYXZlbid0IGNvbnZlcmdlZCBieSBub3csCisgICAgLy8ganVzdCByZXR1cm4gd2hh
dGV2ZXIgd2UndmUgZm91bmQuCisgICAgY29uc3RleHByIGludCBtYXhJdGVyYXRpb25zID0gMTA7
CisKKyAgICBpbnQgc2lkZSA9IDA7CisgICAgZG91YmxlIHJvb3QgPSAwOworICAgIGRvdWJsZSBm
TG93ID0gcmVwZWF0ZWRSb290UmVzcG9uc2UobG93LCBjMSwgYzIsIHIsIGxvZ0VQUyk7CisgICAg
ZG91YmxlIGZIaWdoID0gcmVwZWF0ZWRSb290UmVzcG9uc2UoaGlnaCwgYzEsIGMyLCByLCBsb2dF
UFMpOworCisgICAgLy8gVGhlIGZ1bmN0aW9uIHZhbHVlcyBtdXN0IGJlIGZpbml0ZSBhbmQgaGF2
ZSBvcHBvc2l0ZSBzaWducyEKKyAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShmTG93KSk7CisgICAg
QVNTRVJUKHN0ZDo6aXNmaW5pdGUoZkhpZ2gpKTsKKyAgICBBU1NFUlQoZkxvdyAqIGZIaWdoIDw9
IDApOworCisgICAgaW50IGl0ZXJhdGlvbjsKKyAgICBmb3IgKGl0ZXJhdGlvbiA9IDA7IGl0ZXJh
dGlvbiA8IG1heEl0ZXJhdGlvbnM7ICsraXRlcmF0aW9uKSB7CisgICAgICAgIHJvb3QgPSAoZkxv
dyAqIGhpZ2ggLSBmSGlnaCAqIGxvdykgLyAoZkxvdyAtIGZIaWdoKTsKKyAgICAgICAgaWYgKGZh
YnMoaGlnaCAtIGxvdykgPCBhY2N1cmFjeVRocmVzaG9sZCAqIHN0ZDo6ZmFicyhoaWdoICsgbG93
KSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkb3VibGUgZnIgPSByZXBlYXRlZFJvb3RS
ZXNwb25zZShyb290LCBjMSwgYzIsIHIsIGxvZ0VQUyk7CisKKyAgICAgICAgQVNTRVJUKHN0ZDo6
aXNmaW5pdGUoZnIpKTsKKworICAgICAgICBpZiAoZnIgKiBmSGlnaCA+IDApIHsKKyAgICAgICAg
ICAgIC8vIGZyIGFuZCBmSGlnaCBoYXZlIHNhbWUgc2lnbi4gQ29weSByb290IHRvIGZIaWdoCisg
ICAgICAgICAgICBoaWdoID0gcm9vdDsKKyAgICAgICAgICAgIGZIaWdoID0gZnI7CisgICAgICAg
ICAgICBzaWRlID0gLTE7CisgICAgICAgIH0gZWxzZSBpZiAoZkxvdyAqIGZyID4gMCkgeworICAg
ICAgICAgICAgLy8gZnIgYW5kIGZMb3cgaGF2ZSBzYW1lIHNpZ24uIENvcHkgcm9vdCB0byBmTG93
CisgICAgICAgICAgICBsb3cgPSByb290OworICAgICAgICAgICAgZkxvdyA9IGZyOworICAgICAg
ICAgICAgaWYgKHNpZGUgPT0gMSkKKyAgICAgICAgICAgICAgICBmSGlnaCAvPSAyOworICAgICAg
ICAgICAgc2lkZSA9IDE7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvLyBmTG93ICog
ZnIgbG9va3MgbGlrZSB6ZXJvLCBzbyBhc3N1bWUgd2UndmUgY29udmVyZ2VkLgorICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvLyBXYW50IHRvIGtub3cgaWYgdGhl
IG1heCBudW1iZXIgb2YgaXRlcmF0aW9ucyBpcyBldmVyIGV4Y2VlZGVkIHNvCisgICAgLy8gd2Ug
Y2FuIHVuZGVyc3RhbmQgd2h5IHRoYXQgaGFwcGVuZWQuCisgICAgQVNTRVJUKGl0ZXJhdGlvbiA8
IG1heEl0ZXJhdGlvbnMpOworCisgICAgcmV0dXJuIHJvb3Q7Cit9CisKK2RvdWJsZSBCaXF1YWQ6
OnRhaWxGcmFtZShzaXplX3QgY29lZkluZGV4LCBkb3VibGUgbWF4RnJhbWUpCit7CisgICAgLy8g
VGhlIEJpcXVhZCBmaWx0ZXIgaXMgZ2l2ZW4gYnkKKyAgICAvLworICAgIC8vICAgSCh6KSA9IChi
MCArIGIxL3ogKyBiMi96XjIpLygxICsgYTEveiArIGEyL3peMikuCisgICAgLy8KKyAgICAvLyBU
byBjb21wdXRlIHRoZSB0YWlsIHRpbWUsIGNvbXB1dGUgdGhlIGltcHVsc2UgcmVzcG9uc2UsIGgo
biksIG9mCisgICAgLy8gSCh6KSwgd2hpY2ggd2UgY2FuIGRvIGFuYWx5dGljYWxseS4gRnJvbSB0
aGlzIGltcHVsc2UgcmVzcG9uc2UsCisgICAgLy8gZmluZCB0aGUgdmFsdWUgbjAgd2hlcmUgfGgo
bil8IDw9IGVwcyBmb3IgbiA+PSBuMC4KKyAgICAvLworICAgIC8vIEFzc3VtZSBmaXJzdCB0aGF0
IHRoZSB0d28gcG9sZXMgb2YgSCh6KSBhcmUgbm90IHJlcGVhdGVkLCBzYXkgcjEKKyAgICAvLyBh
bmQgcjIuIFRoZW4sIHdlIGNhbiBjb21wdXRlIGEgcGFydGlhbCBmcmFjdGlvbiBleHBhbnNpb24g
b2YKKyAgICAvLyBIKHopOgorICAgIC8vCisgICAgLy8gICBIKHopID0gKGIwK2IxL3orYjIvel4y
KS9bKDEtcjEveikqKDEtcjIveildCisgICAgLy8gICAgICAgID0gYjAgKyBDMi8oei1yMikgLSBD
MS8oei1yMSkKKyAgICAvLworICAgIC8vICB3aGVyZQorICAgIC8vICAgIEMyID0gKGIwKnIyXjIr
YjEqcjIrYjIpLyhyMi1yMSkKKyAgICAvLyAgICBDMSA9IChiMCpyMV4yK2IxKnIxK2IyKS8ocjIt
cjEpCisgICAgLy8KKyAgICAvLyBFeHBhbmQgSCh6KSB0aGVuIHRoaXMgaW4gcG93ZXJzIG9mIDEv
eiBnaXZlczoKKyAgICAvLworICAgIC8vICAgSCh6KSA9IGIwIC0oQzIvcjIrQzEvcjEpICsgc3Vt
KEMyKnIyXihpLTEpL3peaSArIEMxKnIxXihpLTEpL3peaSkKKyAgICAvLworICAgIC8vIFRodXMs
IGZvciBuID4gMSAod2UgZG9uJ3QgY2FyZSBhYm91dCBzbWFsbCBuKSwKKyAgICAvLworICAgIC8v
ICAgaChuKSA9IEMyKnIyXihuLTEpICsgQzEqcjFeKG4tMSkKKyAgICAvLworICAgIC8vIFdlIG5l
ZWQgdG8gZmluZCBuMCBzdWNoIHRoYXQgfGgobil8IDwgZXBzIGZvciBuID4gbjAuCisgICAgLy8K
KyAgICAvLyBDYXNlIDE6IHIxIGFuZCByMiBhcmUgcmVhbCBhbmQgZGlzdGluY3QsIHdpdGggfHIx
fD49fHIyfC4KKyAgICAvLworICAgIC8vIFRoZW4KKyAgICAvLworICAgIC8vICAgaChuKSA9IEMx
KnIxXihuLTEpKigxICsgQzIvQzEqKHIyL3IxKV4obi0xKSkKKyAgICAvLworICAgIC8vIHNvCisg
ICAgLy8KKyAgICAvLyAgIHxoKG4pfCA9IHxDMXwqfHIxfF4obi0xKSp8MStDMi9DMSoocjIvcjEp
XihuLTEpfAorICAgIC8vICAgICAgICAgIDw9IHxDMXwqfHIxfF4obi0xKSpbMSArIHxDMi9DMXwq
fHIyL3IxfF4obi0xKV0KKyAgICAvLyAgICAgICAgICA8PSB8QzF8KnxyMXxeKG4tMSkqWzEgKyB8
QzIvQzF8XQorICAgIC8vCisgICAgLy8gc28KKyAgICAvLworICAgIC8vICAgfGgobil8ID0gfEMx
fCp8cjF8XihuLTEpKnwxK0MyL0MxKihyMi9yMSleKG4tMSl8CisgICAgLy8gICAgICAgICAgPD0g
fEMxfCp8cjF8XihuLTEpKlsxICsgfEMyL0MxfCp8cjIvcjF8XihuLTEpXQorICAgIC8vICAgICAg
ICAgIDw9IHxDMXwqfHIxfF4obi0xKSpbMSArIHxDMi9DMXxdCisgICAgLy8KKyAgICAvLyBieSB1
c2luZyB0aGUgdHJpYW5nbGUgaW5lcXVhbGl0eSBhbmQgdGhlIGZhY3QgdGhhdCB8cjJ8PD18cjF8
LgorICAgIC8vIEFuZCB3ZSB3YW50IHxoKG4pfDw9ZXBzIHdoaWNoIGlzIHRydWUgaWYKKyAgICAv
LworICAgIC8vICAgfEMxfCp8cjF8XihuLTEpKlsxICsgfEMyL0MxfF0gPD0gZXBzCisgICAgLy8K
KyAgICAvLyBvcgorICAgIC8vCisgICAgLy8gICBuID49IDEgKyBsb2coZXBzL0MpL2xvZyh8cjF8
KQorICAgIC8vCisgICAgLy8gd2hlcmUgQyA9IHxDMXwqWzErfEMyL0MxfF0gPSB8QzF8ICsgfEMy
fC4KKyAgICAvLworICAgIC8vIENhc2UgMjogcjEgYW5kIHIyIGFyZSBjb21wbGV4CisgICAgLy8K
KyAgICAvLyBUaG5lIHdlIGNhbiB3cml0ZSByMT1yKmV4cChpKnApIGFuZCByMj1yKmV4cCgtaSpw
KS4gU28sCisgICAgLy8KKyAgICAvLyAgIHxoKG4pfCA9IHxDMipyXihuLTEpKmV4cCgtaSpwKihu
LTEpKSArIEMxKnJeKG4tMSkqZXhwKGkqcCoobi0xKSl8CisgICAgLy8gICAgICAgICAgPSB8QzF8
KnJeKG4tMSkqfDEgKyBDMi9DMSpleHAoLWkqcCoobi0xKSkvZXhwKGkqbioobi0xKSl8CisgICAg
Ly8gICAgICAgICAgPD0gfEMxfCpyXihuLTEpKlsxICsgfEMyL0MxfF0KKyAgICAvLworICAgIC8v
IEFnYWluLCB0aGlzIGlzIGVhc2lseSBzb2x2ZWQgdG8gZ2l2ZQorICAgIC8vCisgICAgLy8gICBu
ID49IDEgKyBsb2coZXBzL0MpL2xvZyhyKQorICAgIC8vCisgICAgLy8gd2hlcmUgQyA9IHxDMXwq
WzErfEMyL0MxfF0gPSB8QzF8ICsgfEMyfC4KKyAgICAvLworICAgIC8vIENhc2UgMzogUmVwZWF0
ZWQgcm9vdHMsIHIxPXIyPXIuCisgICAgLy8KKyAgICAvLyBJbiB0aGlzIGNhc2UsCisgICAgLy8K
KyAgICAvLyAgIEgoeikgPSAoYjArYjEveitiMi96XjIpL1soMS1yL3opXjIKKyAgICAvLworICAg
IC8vIEV4cGFuZGluZyB0aGlzIGluIHBvd2VycyBvZiAxL3ogZ2l2ZXM6CisgICAgLy8KKyAgICAv
LyAgIEgoeikgPSBDMSpzdW0oKGkrMSkqcl5pL3peaSkgLSBDMiAqIHN1bShyXihpLTIpL3peaSkg
KyBiMi9yXjIKKyAgICAvLyAgICAgICAgPSBiMi9yXjIgKyBzdW0oW0MxKihpKzEpKnJeaSArIEMy
KnJeKGktMildL3peaSkKKyAgICAvLyB3aGVyZQorICAgIC8vICAgQzEgPSAoYjAqcl4yK2IxKnIr
YjIpL3JeMgorICAgIC8vICAgQzIgPSBiMSpyKzIqYjIKKyAgICAvLworICAgIC8vIFRodXMsIHRo
ZSBpbXB1bHNlIHJlc3BvbnNlIGlzCisgICAgLy8KKyAgICAvLyAgIGgobikgPSBDMSoobisxKSpy
Xm4gKyBDMipyXihuLTIpCisgICAgLy8gICAgICAgID0gcl4obi0yKSpbQzEqKG4rMSkqcl4yK0My
XQorICAgIC8vCisgICAgLy8gU28KKyAgICAvLworICAgIC8vICAgfGgobil8ID0gfHJ8XihuLTIp
KnxDMSoobisxKSpyXjIrQzJ8CisgICAgLy8KKyAgICAvLyBUbyBmaW5kIG4gc3VjaCB0aGF0IHxo
KG4pfCA8IGVwcywgd2UgbmVlZCBhIG51bWVyaWNhbCBtZXRob2QgaW4KKyAgICAvLyBnZW5lcmFs
LCBzbyB0aGVyZSdzIG5vIHJlYWwgcmVhc29uIHRvIHNpbXBsaWZ5IHRoaXMgb3IgdXNlIG90aGVy
CisgICAgLy8gYXBwcm94aW1hdGlvbnMuIEp1c3Qgc29sdmUgfGgobil8PWVwcyBkaXJlY3RseS4K
KyAgICAvLworICAgIC8vIFRodXMsIGZvciBhbiBzZXQgb2YgZmlsdGVyIGNvZWZmaWNpZW50cywg
d2UgY2FuIGNvbXB1dGUgdGhlIHRhaWwKKyAgICAvLyB0aW1lLgorICAgIC8vCisKKyAgICAvLyBJ
ZiB0aGUgbWF4aW11bSBhbXBsaXR1ZGUgb2YgdGhlIGltcHVsc2UgcmVzcG9uc2UgaXMgbGVzcyB0
aGFuCisgICAgLy8gdGhpcywgd2UgYXNzdW1lIHRoYXQgd2UndmUgcmVhY2hlZCB0aGUgdGFpbCBv
ZiB0aGUgcmVzcG9uc2UuCisgICAgLy8gQ3VycmVudGx5LCB0aGlzIG1lYW5zIHRoYXQgdGhlIGlt
cHVsc2UgaXMgbGVzcyB0aGFuIDEgYml0IG9mIGEKKyAgICAvLyAxNi1iaXQgUENNIHZhbHVlLgor
ICAgIGNvbnN0ZXhwciBkb3VibGUgbWF4VGFpbEFtcGxpdHVkZSA9IDEgLyAzMjc2OC4wOworCisg
ICAgLy8gRmluZCB0aGUgcm9vdHMgb2YgMSthMS96K2EyL3peMiA9IDAuIE9yIGVxdWl2YWxlbnRs
eSwKKyAgICAvLyB6XjIrYTEqeithMiA9IDAuIEZyb20gdGhlIHF1YWRyYXRpYyBmb3JtdWxhIHRo
ZSByb290cyBhcmUKKyAgICAvLyAoLWExKy8tc3FydChhMV4yLTQqYTIpKS8yLgorCisgICAgZG91
YmxlIGExID0gbV9hMVtjb2VmSW5kZXhdOworICAgIGRvdWJsZSBhMiA9IG1fYTJbY29lZkluZGV4
XTsKKyAgICBkb3VibGUgYjAgPSBtX2IwW2NvZWZJbmRleF07CisgICAgZG91YmxlIGIxID0gbV9i
MVtjb2VmSW5kZXhdOworICAgIGRvdWJsZSBiMiA9IG1fYjJbY29lZkluZGV4XTsKKworICAgIGRv
dWJsZSB0YWlsRnJhbWUgPSAwOworICAgIGRvdWJsZSBkaXNjcmltID0gYTEgKiBhMSAtIDQgKiBh
MjsKKworICAgIGlmIChkaXNjcmltID4gMCkgeworICAgICAgICAvLyBDb21wdXRlIHRoZSByZWFs
IHJvb3RzIHNvIHRoYXQgcjEgaGFzIHRoZSBsYXJnZXN0IG1hZ25pdHVkZS4KKyAgICAgICAgZG91
YmxlIHJwbHVzID0gKC1hMSArIHN0ZDo6c3FydChkaXNjcmltKSkgLyAyOworICAgICAgICBkb3Vi
bGUgcm1pbnVzID0gKC1hMSAtIHN0ZDo6c3FydChkaXNjcmltKSkgLyAyOworICAgICAgICBkb3Vi
bGUgcjEgPSBzdGQ6OmZhYnMocnBsdXMpID49IHN0ZDo6ZmFicyhybWludXMpID8gcnBsdXMgOiBy
bWludXM7CisgICAgICAgIC8vIFVzZSB0aGUgZmFjdCB0aGF0IGEyID0gcjEqcjIKKyAgICAgICAg
ZG91YmxlIHIyID0gYTIgLyByMTsKKworICAgICAgICBkb3VibGUgYzEgPSAoYjAgKiByMSAqIHIx
ICsgYjEgKiByMSArIGIyKSAvIChyMiAtIHIxKTsKKyAgICAgICAgZG91YmxlIGMyID0gKGIwICog
cjIgKiByMiArIGIxICogcjIgKyBiMikgLyAocjIgLSByMSk7CisKKyAgICAgICAgQVNTRVJUKHN0
ZDo6aXNmaW5pdGUocjEpKTsKKyAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUocjIpKTsKKyAg
ICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzEpKTsKKyAgICAgICAgQVNTRVJUKHN0ZDo6aXNm
aW5pdGUoYzIpKTsKKworICAgICAgICAvLyBJdCdzIHBvc3NpYmxlIGZvciBtYXhUYWlsQW1wbGl0
dWRlIHRvIGJlIGdyZWF0ZXIgdGhhbiBjMSArIGMyLgorICAgICAgICAvLyBUaGlzIG1heSBwcm9k
dWNlIGEgbmVnYXRpdmUgdGFpbCBmcmFtZS4gSnVzdCBjbGFtcCB0aGUgdGFpbAorICAgICAgICAv
LyBmcmFtZSB0byAwLgorICAgICAgICB0YWlsRnJhbWUgPSBjbGFtcFRvKDEgKyBzdGQ6OmxvZyht
YXhUYWlsQW1wbGl0dWRlIC8gKHN0ZDo6ZmFicyhjMSkgKyBzdGQ6OmZhYnMoYzIpKSkgLyBzdGQ6
OmxvZyhzdGQ6OmZhYnMocjEpKSwgMCk7CisKKyAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUo
dGFpbEZyYW1lKSk7CisgICAgfSBlbHNlIGlmIChkaXNjcmltIDwgMCkgeworICAgICAgICAvLyBU
d28gY29tcGxleCByb290cy4KKyAgICAgICAgLy8gT25lIHJvb3QgaXMgLWExLzIgKyBpKnNxcnQo
LWRpc2NyaW0pLzIuCisgICAgICAgIGRvdWJsZSB4ID0gLWExIC8gMjsKKyAgICAgICAgZG91Ymxl
IHkgPSBzdGQ6OnNxcnQoLWRpc2NyaW0pIC8gMjsKKyAgICAgICAgc3RkOjpjb21wbGV4PGRvdWJs
ZT4gcjEoeCwgeSk7CisgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IHIyKHgsIC15KTsKKyAg
ICAgICAgZG91YmxlIHIgPSBzdGQ6Omh5cG90KHgsIHkpOworCisgICAgICAgIEFTU0VSVChzdGQ6
OmlzZmluaXRlKHIpKTsKKworICAgICAgICAvLyBJdCdzIHBvc3NpYmxlIGZvciByIHRvIGJlIDEu
IChMUEYgd2l0aCBRIHZlcnkgbGFyZ2UgY2FuIGNhdXNlIHRoaXMuKQorICAgICAgICBpZiAociA9
PSAxKQorICAgICAgICAgICAgdGFpbEZyYW1lID0gbWF4RnJhbWU7CisgICAgICAgIGVsc2Ugewor
ICAgICAgICAgICAgZG91YmxlIGMxID0gc3RkOjphYnMoKGIwICogcjEgKiByMSArIGIxICogcjEg
KyBiMikgLyAocjIgLSByMSkpOworICAgICAgICAgICAgZG91YmxlIGMyID0gc3RkOjphYnMoKGIw
ICogcjIgKiByMiArIGIxICogcjIgKyBiMikgLyAocjIgLSByMSkpOworCisgICAgICAgICAgICBB
U1NFUlQoc3RkOjppc2Zpbml0ZShjMSkpOworICAgICAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5p
dGUoYzIpKTsKKyAgICAgICAgICAgIHRhaWxGcmFtZSA9IDEgKyBzdGQ6OmxvZyhtYXhUYWlsQW1w
bGl0dWRlIC8gKGMxICsgYzIpKSAvIHN0ZDo6bG9nKHIpOworICAgICAgICAgICAgaWYgKCFjMSAm
JiAhYzIpIHsKKyAgICAgICAgICAgICAgICAvLyBJZiBjMSA9IGMyID0gMCwgdGhlbiBIKHopID0g
YjAuIEhlbmNlLCB0aGVyZSdzIG5vIHRhaWwKKyAgICAgICAgICAgICAgICAvLyBiZWNhdXNlIHRo
aXMgaXMganVzdCBhIHdpcmUgZnJvbSBpbnB1dCB0byBvdXRwdXQuCisgICAgICAgICAgICAgICAg
dGFpbEZyYW1lID0gMDsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgLy8g
T3RoZXJ3aXNlLCBjaGVjayB0aGF0IHRoZSB0YWlsIGhhcyBmaW5pdGUgbGVuZ3RoLiBOb3QKKyAg
ICAgICAgICAgICAgICAvLyBzdHJpY3RseSBuZWNlc3NhcnksIGJ1dCB3ZSB3YW50IHRvIGtub3cg
aWYgdGhpcyBldmVyCisgICAgICAgICAgICAgICAgLy8gaGFwcGVucy4KKyAgICAgICAgICAgICAg
ICBBU1NFUlQoc3RkOjppc2Zpbml0ZSh0YWlsRnJhbWUpKTsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIC8vIFJlcGVhdGVkIHJvb3RzLiBUaGlzIHNob3Vs
ZCBiZSBwcmV0dHkgcmFyZSBiZWNhdXNlIGFsbCB0aGUKKyAgICAgICAgLy8gY29lZmZpY2llbnRz
IG5lZWQgdG8gYmUganVzdCB0aGUgcmlnaHQgdmFsdWVzIHRvIGdldCBhCisgICAgICAgIC8vIGRp
c2NyaW1pbmFudCBvZiBleGFjdGx5IHplcm8uCisgICAgICAgIGRvdWJsZSByID0gLWExIC8gMjsK
KworICAgICAgICBpZiAoIXIpIHsKKyAgICAgICAgICAgIC8vIERvdWJsZSBwb2xlIGF0IDAuIFRo
aXMganVzdCBkZWxheXMgdGhlIHNpZ25hbCBieSAyIGZyYW1lcywKKyAgICAgICAgICAgIC8vIHNv
IHNldCB0aGUgdGFpbCBmcmFtZSB0byAyLgorICAgICAgICAgICAgdGFpbEZyYW1lID0gMjsKKyAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGRvdWJsZSBjMSA9IChiMCAqIHIgKiByICsgYjEg
KiByICsgYjIpIC8gKHIgKiByKTsKKyAgICAgICAgICAgIGRvdWJsZSBjMiA9IGIxICogciArIDIg
KiBiMjsKKworICAgICAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzEpKTsKKyAgICAgICAg
ICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKGMyKSk7CisKKyAgICAgICAgICAgIC8vIEl0IGNhbiBo
YXBwZW4gdGhhdCBjMT1jMj0wLiBUaGlzIGJhc2ljYWxseSBtZWFucyB0aGF0IEgoeikgPQorICAg
ICAgICAgICAgLy8gY29uc3RhbnQsIHdoaWNoIGlzIHRoZSBsaW1pdGluZyBjYXNlIGZvciBzZXZl
cmFsIG9mIHRoZQorICAgICAgICAgICAgLy8gYmlxdWFkIGZpbHRlcnMuCisgICAgICAgICAgICBp
ZiAoIWMxICYmICFjMikKKyAgICAgICAgICAgICAgICB0YWlsRnJhbWUgPSAwOworICAgICAgICAg
ICAgZWxzZSB7CisgICAgICAgICAgICAgICAgLy8gVGhlIGZ1bmN0aW9uIGMqKG4rMSkqcl5uIGlz
IG5vdCBtb25vdG9uaWMsIGJ1dCBpdCdzIGVhc3kgdG8KKyAgICAgICAgICAgICAgICAvLyBmaW5k
IHRoZSBtYXggcG9pbnQgc2luY2UgdGhlIGRlcml2YXRpdmUgaXMKKyAgICAgICAgICAgICAgICAv
LyBjKnJebiooMSsobisxKSpsb2cocikpLiBUaGlzIGhhcyBhIHJvb3QgYXQKKyAgICAgICAgICAg
ICAgICAvLyAtKDErbG9nKHIpKS9sb2cocikuIHNvIHdlIGNhbiBzdGFydCBvdXIgc2VhcmNoIGZy
b20gdGhhdAorICAgICAgICAgICAgICAgIC8vIHBvaW50IHRvIG1heEZyYW1lcy4KKworICAgICAg
ICAgICAgICAgIGRvdWJsZSBsb3cgPSBzdGQ6OmNsYW1wKC0oMSArIHN0ZDo6bG9nKHIpKSAvIHN0
ZDo6bG9nKHIpLCAxLjAsIHN0YXRpY19jYXN0PGRvdWJsZT4obWF4RnJhbWUgLSAxKSk7CisgICAg
ICAgICAgICAgICAgZG91YmxlIGhpZ2ggPSBtYXhGcmFtZTsKKworICAgICAgICAgICAgICAgIEFT
U0VSVChzdGQ6OmlzZmluaXRlKGxvdykpOworICAgICAgICAgICAgICAgIEFTU0VSVChzdGQ6Omlz
ZmluaXRlKGhpZ2gpKTsKKworICAgICAgICAgICAgICAgIHRhaWxGcmFtZSA9IHJvb3RGaW5kZXIo
bG93LCBoaWdoLCBzdGQ6OmxvZyhtYXhUYWlsQW1wbGl0dWRlKSwgYzEsIGMyLCByKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiB0YWlsRnJhbWU7Cit9CisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8pCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5oCmluZGV4IDcxMzQ5NGM5MTRkMzM3ODY0
M2UyOWE4MGJjMzllNzczNjZkZjE4MmIuLjc1MDkyNzQ2ZGQyMjgzYzkwMjIxMjZkNmNmMjUxOWNk
M2E4N2E3NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVh
ZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5oCkBAIC00Niwy
NiArNDYsMjMgQEAgcHVibGljOgogICAgIEJpcXVhZCgpOwogICAgIH5CaXF1YWQoKTsKIAorICAg
IHN0YXRpYyBjb25zdCBzaXplX3QgTWF4RnJhbWVzVG9Qcm9jZXNzOworCiAgICAgdm9pZCBwcm9j
ZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2VQLCBmbG9hdCogZGVzdFAsIHNpemVfdCBmcmFtZXNUb1By
b2Nlc3MpOwogCisgICAgYm9vbCBoYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpIGNvbnN0IHsgcmV0
dXJuIG1faGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXM7IH0KKyAgICB2b2lkIHNldEhhc1NhbXBsZUFj
Y3VyYXRlVmFsdWVzKGJvb2wgaGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMpIHsgbV9oYXNTYW1wbGVB
Y2N1cmF0ZVZhbHVlcyA9IGhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzOyB9CisKICAgICAvLyBmcmVx
dWVuY3kgaXMgMCAtIDEgbm9ybWFsaXplZCwgcmVzb25hbmNlIGFuZCBkYkdhaW4gYXJlIGluIGRl
Y2liZWxzLgogICAgIC8vIFEgaXMgYSB1bml0bGVzcyBxdWFsaXR5IGZhY3Rvci4KLSAgICB2b2lk
IHNldExvd3Bhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIHJlc29uYW5jZSk7Ci0g
ICAgdm9pZCBzZXRIaWdocGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgcmVzb25h
bmNlKTsKLSAgICB2b2lkIHNldEJhbmRwYXNzUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJs
ZSBRKTsKLSAgICB2b2lkIHNldExvd1NoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJs
ZSBkYkdhaW4pOwotICAgIHZvaWQgc2V0SGlnaFNoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ks
IGRvdWJsZSBkYkdhaW4pOwotICAgIHZvaWQgc2V0UGVha2luZ1BhcmFtcyhkb3VibGUgZnJlcXVl
bmN5LCBkb3VibGUgUSwgZG91YmxlIGRiR2Fpbik7Ci0gICAgdm9pZCBzZXRBbGxwYXNzUGFyYW1z
KGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKTsKLSAgICB2b2lkIHNldE5vdGNoUGFyYW1zKGRv
dWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKTsKLQotICAgIC8vIFNldCB0aGUgYmlxdWFkIGNvZWZm
aWNpZW50cyBnaXZlbiBhIHNpbmdsZSB6ZXJvIChvdGhlciB6ZXJvIHdpbGwgYmUgY29uanVnYXRl
KQotICAgIC8vIGFuZCBhIHNpbmdsZSBwb2xlIChvdGhlciBwb2xlIHdpbGwgYmUgY29uanVnYXRl
KQotICAgIHZvaWQgc2V0WmVyb1BvbGVQYWlycyhzdGQ6OmNvbXBsZXg8ZG91YmxlPiB6ZXJvLCBz
dGQ6OmNvbXBsZXg8ZG91YmxlPiBwb2xlKTsKLQotICAgIC8vIFNldCB0aGUgYmlxdWFkIGNvZWZm
aWNpZW50cyBnaXZlbiBhIHNpbmdsZSBwb2xlIChvdGhlciBwb2xlIHdpbGwgYmUgY29uanVnYXRl
KQotICAgIC8vIChUaGUgemVyb2VzIHdpbGwgYmUgdGhlIGludmVyc2Ugb2YgdGhlIHBvbGVzKQot
ICAgIHZvaWQgc2V0QWxscGFzc1BvbGUoc3RkOjpjb21wbGV4PGRvdWJsZT4pOworICAgIHZvaWQg
c2V0TG93cGFzc1BhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBy
ZXNvbmFuY2UpOworICAgIHZvaWQgc2V0SGlnaHBhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3Vi
bGUgZnJlcXVlbmN5LCBkb3VibGUgcmVzb25hbmNlKTsKKyAgICB2b2lkIHNldEJhbmRwYXNzUGFy
YW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpOworICAgIHZvaWQg
c2V0TG93U2hlbGZQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUg
ZGJHYWluKTsKKyAgICB2b2lkIHNldEhpZ2hTaGVsZlBhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJs
ZSBmcmVxdWVuY3ksIGRvdWJsZSBkYkdhaW4pOworICAgIHZvaWQgc2V0UGVha2luZ1BhcmFtcyhz
aXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRLCBkb3VibGUgZGJHYWluKTsK
KyAgICB2b2lkIHNldEFsbHBhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5
LCBkb3VibGUgUSk7CisgICAgdm9pZCBzZXROb3RjaFBhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJs
ZSBmcmVxdWVuY3ksIGRvdWJsZSBRKTsKIAogICAgIC8vIFJlc2V0cyBmaWx0ZXIgc3RhdGUKICAg
ICB2b2lkIHJlc2V0KCk7CkBAIC03NywzMiArNzQsNDAgQEAgcHVibGljOgogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZsb2F0KiBtYWdSZXNwb25zZSwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKKworICAgIC8vIENvbXB1dGUgdGFpbCBm
cmFtZSBiYXNlZCBvbiB0aGUgZmlsdGVyIGNvZWZmaWNlbnRzIGF0IGluZGV4CisgICAgLy8gfGNv
ZWZJbmRleHwuIFRoZSB0YWlsIGZyYW1lIGlzIHRoZSBmcmFtZSBudW1iZXIgd2hlcmUgdGhlCisg
ICAgLy8gaW1wdWxzZSByZXNwb25zZSBvZiB0aGUgZmlsdGVyIGZhbGxzIGJlbG93IGEgdGhyZXNo
b2xkIHZhbHVlLgorICAgIC8vIFRoZSBtYXhpbXVtIGFsbG93ZWQgZnJhbWUgdmFsdWUgaXMgZ2l2
ZW4gYnkgfG1heEZyYW1lfC4gVGhpcworICAgIC8vIGxpbWl0cyBob3cgbXVjaCB3b3JrIGlzIGRv
bmUgaW4gY29tcHV0aW5nIHRoZSBmcmFtZSBudW1iZXIuCisgICAgZG91YmxlIHRhaWxGcmFtZShz
aXplX3QgY29lZkluZGV4LCBkb3VibGUgbWF4RnJhbWUpOworCiBwcml2YXRlOgotICAgIHZvaWQg
c2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhkb3VibGUgYjAsIGRvdWJsZSBiMSwgZG91YmxlIGIy
LCBkb3VibGUgYTAsIGRvdWJsZSBhMSwgZG91YmxlIGEyKTsKLSAgICAKKyAgICB2b2lkIHNldE5v
cm1hbGl6ZWRDb2VmZmljaWVudHMoc2l6ZV90IGluZGV4LCBkb3VibGUgYjAsIGRvdWJsZSBiMSwg
ZG91YmxlIGIyLCBkb3VibGUgYTAsIGRvdWJsZSBhMSwgZG91YmxlIGEyKTsKKwogICAgIC8vIEZp
bHRlciBjb2VmZmljaWVudHMuIFRoZSBmaWx0ZXIgaXMgZGVmaW5lZCBhcwogICAgIC8vCiAgICAg
Ly8geVtuXSArIG1fYTEqeVtuLTFdICsgbV9hMip5W24tMl0gPSBtX2IwKnhbbl0gKyBtX2IxKnhb
bi0xXSArIG1fYjIqeFtuLTJdLgotICAgIGRvdWJsZSBtX2IwOwotICAgIGRvdWJsZSBtX2IxOwot
ICAgIGRvdWJsZSBtX2IyOwotICAgIGRvdWJsZSBtX2ExOwotICAgIGRvdWJsZSBtX2EyOworICAg
IEF1ZGlvRG91YmxlQXJyYXkgbV9iMDsKKyAgICBBdWRpb0RvdWJsZUFycmF5IG1fYjE7CisgICAg
QXVkaW9Eb3VibGVBcnJheSBtX2IyOworICAgIEF1ZGlvRG91YmxlQXJyYXkgbV9hMTsKKyAgICBB
dWRpb0RvdWJsZUFycmF5IG1fYTI7CiAKICNpZiBVU0UoQUNDRUxFUkFURSkKICAgICB2b2lkIHBy
b2Nlc3NGYXN0KGNvbnN0IGZsb2F0KiBzb3VyY2VQLCBmbG9hdCogZGVzdFAsIHNpemVfdCBmcmFt
ZXNUb1Byb2Nlc3MpOwogICAgIHZvaWQgcHJvY2Vzc1NsaWNlRmFzdChkb3VibGUqIHNvdXJjZVAs
IGRvdWJsZSogZGVzdFAsIGRvdWJsZSogY29lZmZpY2llbnRzUCwgc2l6ZV90IGZyYW1lc1RvUHJv
Y2Vzcyk7Ci0KICAgICBBdWRpb0RvdWJsZUFycmF5IG1faW5wdXRCdWZmZXI7CiAgICAgQXVkaW9E
b3VibGVBcnJheSBtX291dHB1dEJ1ZmZlcjsKKyNlbmRpZgogCi0jZWxzZQogICAgIC8vIEZpbHRl
ciBtZW1vcnkKICAgICBkb3VibGUgbV94MTsgLy8gaW5wdXQgZGVsYXllZCBieSAxIHNhbXBsZQog
ICAgIGRvdWJsZSBtX3gyOyAvLyBpbnB1dCBkZWxheWVkIGJ5IDIgc2FtcGxlcwogICAgIGRvdWJs
ZSBtX3kxOyAvLyBvdXRwdXQgZGVsYXllZCBieSAxIHNhbXBsZQogICAgIGRvdWJsZSBtX3kyOyAv
LyBvdXRwdXQgZGVsYXllZCBieSAyIHNhbXBsZXMKLSNlbmRpZgorCisgICAgYm9vbCBtX2hhc1Nh
bXBsZUFjY3VyYXRlVmFsdWVzIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGY5YWFjNjk4YTU4ZDkyYzUzNDEx
YWFjYTYzNGI4ZTUwNGYxMzVkNjYuLjVlMWQwNGE2MTA1MTIxM2JmMGE5MDhhNGJkMGRhZDI3MmYx
Zjk4NTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisy
MDIwLTA4LTMxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRk
IHByb3BlciBrLXJhdGUgYXV0b21hdGlvbiBzdXBwb3J0IGZvciBCaXF1YWRGaWx0ZXJOb2RlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYwMjcKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5l
IFdQVCB0ZXN0cyBub3cgdGhhdCBtb3JlIGNoZWNrcyBhcmUgcGFzc2luZy4KKworICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFt
LWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3Bh
cmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9k
ZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJu
b2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQ6CisKIDIwMjAtMDgtMzEg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1tYW5k
YXRvcnktZ2V0U3RhdHMuaHR0cHMuaHRtbCBzbyB0aGF0IGl0IG5vIGxvbmdlciB0aW1lcyBvdXQg
aWYgZmlyc3QgdGVzdCBmYWlscwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFt
LWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhw
ZWN0ZWQudHh0CmluZGV4IGMzMGUzZTg4OTM1MWRkMzRmNWE0NzM1NTEzOTY5YzFlMjQ4N2JjZjku
LjkzMjhiMTk5YzkwNjMzNGZhYTY4YmQyZTE5N2JlMzc3MWIxZWM1MDcgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWJpcXVhZC1jb25uZWN0aW9u
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2st
cmF0ZS1iaXF1YWQtY29ubmVjdGlvbi1leHBlY3RlZC50eHQKQEAgLTI4LDcgKzI4LDcgQEAgUEFT
UyAgIFRlc3QgQmlxdWFkRmlsdGVyTm9kZShjb250ZXh0LCB7InR5cGUiOiJiYW5kcGFzcyIsImZy
ZXF1ZW5jeSI6NDQwLCJRIjowfSkKIFBBU1MgICBROiBtb2Qub2Zmc2V0LnNldFZhbHVlQXRUaW1l
KDAsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIFE6IG1vZC5vZmZzZXQu
bGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTAwLDAuMTI1KSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCiBQQVNTICAgay1yYXRlIFEgd2l0aCBpbnB1dDogb3V0cHV0WzAsMjA0OF0gZXF1YWxz
IFswLDAuOTgyMjg3MTY4NTAyODA3NiwwLjM2ODEyNDMwNjIwMTkzNDgsLTAuODQ0MzI3ODA3NDI2
NDUyNiwtMC42ODQ1NDY3MDkwNjA2NjksMC41ODc3ODUzNjMxOTczMjY3LDAuOTA0ODI2NjQxMDgy
NzYzNywtMC4yNDg2OTAzMDcxNDAzNTAzNCwtMC45OTgwMjY2MDk0MjA3NzY0LC0wLjEyNTMzMjQ0
NDkwNjIzNDc0LDAuOTUxMDU2NzE4ODI2Mjk0LDAuNDgxNzUyODQyNjY0NzE4NjMsLTAuNzcwNTEz
NzEzMzU5ODMyOCwtMC43NzA1MTIyMjMyNDM3MTM0LDAuNDgxNzU0NjAxMDAxNzM5NSwwLjk1MTA1
NjAwMzU3MDU1NjYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29s
dXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAotUEFTUyAgIGstcmF0ZSBR
IHdpdGggaW5wdXQ6IG91dHB1dFsyMDQ4Ol0gZXF1YWxzIFswLjAwNTYzNTU5MzA4NjQ4MTA5NCww
LjAwMzcxNDY1NTI5MzE1MTczNjMsMC4wMDE5OTA2OTU3MTY4MTMyMDY3LDAuMDAzMjk1MjY4MTY0
OTQ3NjI5LDAuMDA0ODMyMjY0MDM1OTQwMTcsMC4wMDI4MDA3MDYzMDgzMzUwNjYsLTAuMDAxMjc4
OTM1Njk4NzkyMzM4NCwtMC4wMDI4MzM2NjcyMTEyMzQ1Njk1LC0wLjAwMTQzNzU0MTIxMzgxNzg5
NDUsLTAuMDAxMjY3MTY3MTU3NDkzNTMxNywtMC4wMDQwOTk1MjM2NDg2MTk2NTIsLTAuMDA2MjU2
MzQ0MjYyNTEwNTM4LC0wLjAwNDQ3OTg5NzIwODUxMTgyOSwtMC4wMDEyMDE5MjQyODU4NTE0MTks
LTAuMDAwNjQ1MDk3NTc3OTQ0Mzk3OSwtMC4wMDIwODY3NTIwOTQzMjg0MDM1Li4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBrLXJhdGUgUSB3aXRoIGlucHV0OiBvdXRwdXRbMjA0
ODpdIGVxdWFscyBbMC4wMDU2MzU1OTIxNTUxNTg1MiwwLjAwMzcxNDY1NDU5NDY1OTgwNTMsMC4w
MDE5OTA2OTU0ODM5ODI1NjMsMC4wMDMyOTUyNjg2MzA2MDg5MTYzLDAuMDA0ODMyMjY0OTY3MjYy
NzQ1LDAuMDAyODAwNzA3NzA1MzE4OTI3OCwtMC4wMDEyNzg5MzQxODUzOTMxNTQ2LC0wLjAwMjgz
MzY2NTU4MTQyMDA2NCwtMC4wMDE0Mzc1Mzk3MDA0MTg3MTA3LC0wLjAwMTI2NzE2NTg3NjkyNDk5
MTYsLTAuMDA0MDk5NTIyNzE3Mjk3MDc3LC0wLjAwNjI1NjM0NDI2MjUxMDUzOCwtMC4wMDQ0Nzk4
OTc2NzQxNzMxMTcsLTAuMDAxMjAxOTI1MTAwNzU4NjcxOCwtMC4wMDA2NDUwOTg3NDIwOTc2MTYy
LC0wLjAwMjA4Njc1MzcyNDE0MjkwOS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCiBQQVNT
IDwgW1EgQXVkaW9QYXJhbV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgOSBhc3NlcnRp
b25zKSAKIFBBU1MgPiBbR2FpbiBBdWRpb1BhcmFtXSBrLXJhdGUgaW5wdXQgd29ya3MgCiBQQVNT
ICAgZ2FpbjogbmV3IE9zY2lsbGF0b3JOb2RlKGNvbnRleHQsIHtmcmVxdWVuY3k6IDE3NjB9KSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCkBAIC01MCw3ICs1MCw3IEBAIFBBU1MgICBUZXN0
IEJpcXVhZEZpbHRlck5vZGUoY29udGV4dCwgeyJ0eXBlIjoibG93cGFzcyIsImZyZXF1ZW5jeSI6
MjIwMCwiZGV0dW5lCiBQQVNTICAgZGV0dW5lOiBtb2Qub2Zmc2V0LnNldFZhbHVlQXRUaW1lKDAs
MCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGRldHVuZTogbW9kLm9mZnNl
dC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgtMTMzMjMuOTQ1MzcwMDk0NDI3LDAuMTI1KSBkaWQg
bm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGRldHVuZSB3aXRoIGlucHV0
OiBvdXRwdXRbMCwyMDQ4XSBlcXVhbHMgWzAsMC4xMzEwNjE3MTc4Njc4NTEyNiwwLjQ4NzYxNDk4
OTI4MDcwMDcsMC44MjgwNzI0ODgzMDc5NTI5LDAuOTcwODAzOTE2NDU0MzE1MiwwLjk5ODc4NzY0
MTUyNTI2ODYsMC45NDcyMzczMTI3OTM3MzE3LDAuNzc3NDUzNzgwMTc0MjU1NCwwLjUwMTg1MTI2
MDY2MjA3ODksMC4xNzE1NTk0NTMwMTA1NTkwOCwtMC4xNzQzOTg0ODE4NDU4NTU3LC0wLjUwMjI3
NjgzNzgyNTc3NTEsLTAuNzcyMTQxNTc1ODEzMjkzNSwtMC45NDk1MDU5ODQ3ODMxNzI2LC0xLjAx
NDI2NTE3OTYzNDA5NDIsLTAuOTU5NjE4NTY4NDIwNDEwMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdp
c2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xk
IjowfS4gCi1QQVNTICAgay1yYXRlIGRldHVuZSB3aXRoIGlucHV0OiBvdXRwdXRbMjA0ODpdIGVx
dWFscyBbMC4wMTE4OTA5MjU0NjcwMTQzMTMsMC4wMTE5Mzg2MjIyMjEzNTA2NywwLjAxMTk4NTc0
MzQxODMzNTkxNSwwLjAxMjAzMjI1MzY2NzcxMjIxMiwwLjAxMjA3ODE4OTI5MTA1OTk3LDAuMDEy
MTIzNjQ1MjgzMjgxODAzLDAuMDEyMTY4NzczNDQ5OTU3MzcsMC4wMTIyMTM3NTcyNjE2MzM4NzMs
MC4wMTIyNTg3OTEzNjQ3Mjk0MDQsMC4wMTIzMDQwNjI5NTUwODE0NjMsMC4wMTIzNDk3MjQ3Njk1
OTIyODUsMC4wMTIzOTU4NzgzMjI0MjI1MDQsMC4wMTI0NDI1NjI3MjkxMjAyNTUsMC4wMTI0ODk3
NTE5MTI2NTM0NDYsMC4wMTI1MzczNTE4MDk0NDIwNDMsMC4wMTI1ODUyMTgwNjQ0ODY5OC4uLl0g
d2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAs
InJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgay1yYXRlIGRldHVuZSB3aXRoIGlucHV0
OiBvdXRwdXRbMjA0ODpdIGVxdWFscyBbMC4wMTE4OTU4MTc3MDQ0OTg3NjgsMC4wMTE5NDM1MTgx
ODQxMjU0MjMsMC4wMTE5OTA2NDIxNzUwNzgzOTIsMC4wMTIwMzcxNTYxNDk3NDQ5ODcsMC4wMTIw
ODMwOTM2MzU3Mzc4OTYsMC4wMTIxMjg1NTQyODQ1NzI2MDEsMC4wMTIxNzM2ODUyNDUyMTU4OTMs
MC4wMTIyMTg2NzA5MTk1Mzc1NDQsMC4wMTIyNjM3MDg3NDc5MjMzNzQsMC4wMTIzMDg5ODQwNjM1
NjU3MzEsMC4wMTIzNTQ2NDg2NzIwNDQyNzcsMC4wMTI0MDA4MDUwMTg4NDIyMiwwLjAxMjQ0NzQ5
MzE1MDgzMDI2OSwwLjAxMjQ5NDY4NTEyODMzMTE4NCwwLjAxMjU0MjI4NzgxOTA4NzUwNSwwLjAx
MjU5MDE1Njg2ODEwMDE2Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsi
YWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCiBQQVNTIDwgW0Rl
dHVuZSBBdWRpb1BhcmFtXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA5IGFzc2VydGlv
bnMpIAogUEFTUyA+IFtBbGwgay1yYXRlIGlucHV0c10gIAogUEFTUyAgIENyZWF0ZTogcmVmTm9k
ZSA9IG5ldyBCaXF1YWRGaWx0ZXJOb2RlKGNvbnRleHQsIHsidHlwZSI6InBlYWtpbmciLCJmcmVx
dWVuY3kiOjAsImRldHVuZSI6MCwiZ2FpbiI6MCwiUSI6MH0pIGRpZCBub3QgdGhyb3cgYW4gZXhj
ZXB0aW9uLiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uv
ay1yYXRlLWJpcXVhZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50
ZXJmYWNlL2stcmF0ZS1iaXF1YWQtZXhwZWN0ZWQudHh0CmluZGV4IDFlMzExNmU4MDA4Mzk2NjQ1
ZmZhYWM3YTc2YjRkY2UzYWJiOGEyODAuLjllZTQ5YTdkNzg3ZWRjODcxMjdiYzg3YzA2YzdhMTE3
MDY4OTI1YTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uv
ay1yYXRlLWJpcXVhZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFt
LWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWV4cGVjdGVkLnR4dApAQCAtMTYsOCArMTYsOCBAQCBQ
QVNTICAgQWxsIGstcmF0ZSBwYXJhbXM6IGstcmF0ZSBub2RlOiBmcmVxdWVuY3kubGluZWFyUmFt
cFRvVmFsdWVBdFRpbWUoMCwxKSBkaQogUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBhLXJhdGUg
bm9kZTpmcmVxdWVuY3kuc2V0VmFsdWVBdFRpbWUoMzUwLDApIGRpZCBub3QgdGhyb3cgYW4gZXhj
ZXB0aW9uLiAKIFBBU1MgICBBbGwgay1yYXRlIHBhcmFtczogYS1yYXRlIG5vZGU6ZnJlcXVlbmN5
LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAogUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBPdXRwdXQgb2Ygay1yYXRlIEJpcXVhZEZpbHRl
ck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjAwNTY3MjczNzk1NjA0NzA1OCww
LjAzMTc2MTQyMjc1MzMzNDA0NSwwLjA5MTUyODk0NDY3MTE1NDAyLDAuMTg4MjIwMzk2NjM3OTE2
NTYsMC4zMTUyOTExOTYxMDc4NjQ0LDAuNDU4MDIzOTk1MTYxMDU2NSwwLjU5NjIzNjk0NDE5ODYw
ODQsMC43MDc2NzA5ODY2NTIzNzQzLDAuNzcxNTgxNjQ5NzgwMjczNCwwLjc3MjA1NTU2NjMxMDg4
MjYsMC43MDA2MjE0ODU3MTAxNDQsMC41NTc4Mjg2NjQ3Nzk2NjMxLDAuMzUzNTk4NzczNDc5NDYx
NjcsMC4xMDYzMTc1Mjc1OTIxODIxNiwtMC4xNTkyMTIzMjEwNDMwMTQ1My4uLl0uIAotUEFTUyAg
IEFsbCBrLXJhdGUgcGFyYW1zOiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMg
aWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjAwNTY3MjczNzk1NjA0NzA1OCwwLjAzMTc2MTQy
Mjc1MzMzNDA0NSwwLjA5MTUyODk0NDY3MTE1NDAyLDAuMTg4MjIwMzk2NjM3OTE2NTYsMC4zMTUy
OTExOTYxMDc4NjQ0LDAuNDU4MDIzOTk1MTYxMDU2NSwwLjU5NjIzNjk0NDE5ODYwODQsMC43MDc2
NzA5ODY2NTIzNzQzLDAuNzcxNTgxNjQ5NzgwMjczNCwwLjc3MjA1NTU2NjMxMDg4MjYsMC43MDA2
MjE0ODU3MTAxNDQsMC41NTc4Mjg2NjQ3Nzk2NjMxLDAuMzUzNTk4NzczNDc5NDYxNjcsMC4xMDYz
MTc1Mjc1OTIxODIxNiwtMC4xNTkyMTIzMjEwNDMwMTQ1My4uLl0uIAotUEFTUyAgIEFsbCBrLXJh
dGUgcGFyYW1zOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmls
dGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA3ODcyIGRpZmZlcmVudCB2YWx1
ZXMpLiAKK1BBU1MgICBBbGwgay1yYXRlIHBhcmFtczogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRG
aWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4wMDU2NzE0MDI5MDUxMzYz
NDcsMC4wMzE3NDkyMTQ5NzcwMjU5ODYsMC4wOTE0ODMxMjM2MDA0ODI5NCwwLjE4ODExMDAwODgz
NTc5MjU0LDAuMzE1MDg4NjI5NzIyNTk1MiwwLjQ1NzcxOTc3MzA1NDEyMjksMC41OTU4NTM1MDc1
MTg3NjgzLDAuNzA3MjcxMjE4Mjk5ODY1NywwLjc3MTI2OTAyMzQxODQyNjUsMC43NzE5NjM4MzQ3
NjI1NzMyLDAuNzAwODk1MDcxMDI5NjYzMSwwLjU1ODU5NTI0MDExNjExOTQsMC4zNTQ5MzkzNDE1
NDUxMDUsMC4xMDgyMzg1NjI5NDE1NTEyMSwtMC4xNTY3OTg2MDExNTA1MTI3Li4uXS4gCitQQVNT
ICAgQWxsIGstcmF0ZSBwYXJhbXM6IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0
ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDc5OTkgZGlm
ZmVyZW50IHZhbHVlcykuIAogUEFTUyA8IFtCaXF1YWQgay1yYXRlIEF1ZGlvUGFyYW1zIChhbGwp
XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBb
QmlxdWFkIGstcmF0ZSBRXSAgCiBQQVNTICAgay1yYXRlIFE6IFNldHRpbmcgUS5hdXRvbWF0aW9u
UmF0ZSB0byAiay1yYXRlIiBpcyBlcXVhbCB0byBrLXJhdGUuIApAQCAtMjYsOSArMjYsOSBAQCBQ
QVNTICAgay1yYXRlIFE6IGstcmF0ZSBub2RlOiBRLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEw
LDEpIGRpZCBub3QgdGhyb3cgYW4gZQogUEFTUyAgIGstcmF0ZSBROiBhLXJhdGUgbm9kZTpRLnNl
dFZhbHVlQXRUaW1lKDEsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGst
cmF0ZSBROiBhLXJhdGUgbm9kZTpRLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEwLDEpIGRpZCBu
b3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBrLXJhdGUgUTogT3V0cHV0IG9mIGstcmF0
ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUw
MDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUx
MjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1
NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcy
MDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIx
NzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5d
LiAKLVBBU1MgICBrLXJhdGUgUTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlz
IGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSwwLjgyODA0MjM4
Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEuNjg5OTU5ODgz
Njg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAuODk0NTk4NTQz
NjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0LC0xLjEzNjI2
ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3NiwtMi40NTEx
ODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLUZBSUwgWCBrLXJhdGUgUTog
RGlmZmVyZW5jZSBiZXR3ZWVuIGEtcmF0ZSBhbmQgay1yYXRlIEJpcXVhZEZpbHRlck5vZGUgc2hv
dWxkIGhhdmUgY29udGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUgZGlmZmVyZW50IGZyb20gMC4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW0JpcXVhZCBrLXJhdGUg
UV0gMSBvdXQgb2YgOCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBrLXJhdGUgUTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1
YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2MjA3NjgwNzAy
MjA5NSwwLjgyNzc1NjI4NTY2NzQxOTQsMS4yMzY0NTUyMDIxMDI2NjExLDEuNTQzNjM2NDQxMjMw
Nzc0LDEuNjg4NjY4NDg5NDU2MTc2OCwxLjYzMjE2MzUyNDYyNzY4NTUsMS4zNjE4Nzk4MjU1OTIw
NDEsMC44OTUwMDIwNjcwODkwODA4LDAuMjc2NTM3Mjk5MTU2MTg4OTYsLTAuNDI1OTYwODY4NTk3
MDMwNjQsLTEuMTMwNjU4NjI2NTU2Mzk2NSwtMS43NTE2NTQxNDgxMDE4MDY2LC0yLjIwOTg1NzQ2
MzgzNjY3LC0yLjQ0MzE3MDA3MDY0ODE5MzQsLTIuNDE0NjkwNzMyOTU1OTMyNi4uLl0uIAorUEFT
UyAgIGstcmF0ZSBROiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFk
RmlsdGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA3OTk5IGRpZmZlcmVudCB2
YWx1ZXMpLiAKK1BBU1MgPCBbQmlxdWFkIGstcmF0ZSBRXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCA4IGFzc2VydGlvbnMpIAogUEFTUyA+IFtCaXF1YWQgay1yYXRlIGRldHVuZV0gIAog
UEFTUyAgIGstcmF0ZSBkZXR1bmU6IFNldHRpbmcgZGV0dW5lLmF1dG9tYXRpb25SYXRlIHRvICJr
LXJhdGUiIGlzIGVxdWFsIHRvIGstcmF0ZS4gCiBQQVNTICAgay1yYXRlIGRldHVuZTogay1yYXRl
IG5vZGU6IGRldHVuZS5zZXRWYWx1ZUF0VGltZSgwLDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0
aW9uLiAKQEAgLTM2LDkgKzM2LDkgQEAgUEFTUyAgIGstcmF0ZSBkZXR1bmU6IGstcmF0ZSBub2Rl
OiBkZXR1bmUubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTIwMCwxKSBkaWQgbm8KIFBBU1MgICBr
LXJhdGUgZGV0dW5lOiBhLXJhdGUgbm9kZTpkZXR1bmUuc2V0VmFsdWVBdFRpbWUoMCwwKSBkaWQg
bm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGRldHVuZTogYS1yYXRlIG5v
ZGU6ZGV0dW5lLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEyMDAsMSkgZGlkIG5vdCB0aHJvdyBh
biBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBkZXR1bmU6IE91dHB1dCBvZiBrLXJhdGUgQmlx
dWFkRmlsdGVyTm9kZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMzkwNjc1MDA4Mjk2
OTY2NTUsMC44MjgwNDIzODc5NjIzNDEzLDEuMjM3MTEyMjgzNzA2NjY1LDEuNTQ0Njg1MTI1MzUw
OTUyMSwxLjY4OTk1OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3NzcyODI3LDEuMzYyNTQxNTU2MzU4
MzM3NCwwLjg5NDU5ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2NTQxMjkwMywtMC40Mjk3MjAzNDIx
NTkyNzEyNCwtMS4xMzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgwNzg5NzU2Nzc0OSwtMi4yMTc5MDcx
OTAzMjI4NzYsLTIuNDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1NTE5NDI4MjUzMTc0Li4uXS4gCi1Q
QVNTICAgay1yYXRlIGRldHVuZTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlz
IGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSwwLjgyODA0MjM4
Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEuNjg5OTU5ODgz
Njg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAuODk0NTk4NTQz
NjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0LC0xLjEzNjI2
ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3NiwtMi40NTEx
ODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLUZBSUwgWCBrLXJhdGUgZGV0
dW5lOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9k
ZSBzaG91bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQgZnJvbSAw
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbQmlxdWFkIGst
cmF0ZSBkZXR1bmVdIDEgb3V0IG9mIDggYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgay1yYXRlIGRldHVuZTogT3V0cHV0
IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAs
MC4zOTA2NzkwOTEyMTUxMzM2NywwLjgyODA2MjY1MzU0MTU2NDksMS4yMzcxNTI1NzY0NDY1MzMy
LDEuNTQ0NzMwNjYzMjk5NTYwNSwxLjY4OTk3MTQ0Njk5MDk2NjgsMS42MzMyODc0Mjk4MDk1NzAz
LDEuMzYyMjg3NjQwNTcxNTk0MiwwLjg5NDEwNzc1ODk5ODg3MDgsMC4yNzM4Mzc5MjQwMDM2MDEx
LC0wLjQzMDc0NjE5NzcwMDUwMDUsLTEuMTM3NDcxNjc1ODcyODAyNywtMS43NjAwMjkxOTY3Mzkx
OTY4LC0yLjIxODkyMDk0NjEyMTIxNiwtMi40NTE3MTczNzY3MDg5ODQ0LC0yLjQyMTMzNjE3NDAx
MTIzMDUuLi5dLiAKK1BBU1MgICBrLXJhdGUgZGV0dW5lOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1y
YXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250
YWlucyA3OTk5IGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgPCBbQmlxdWFkIGstcmF0ZSBkZXR1
bmVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDggYXNzZXJ0aW9ucykgCiBQQVNTID4g
W0JpcXVhZCBrLXJhdGUgZnJlcXVlbmN5XSAgCiBQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogU2V0
dGluZyBmcmVxdWVuY3kuYXV0b21hdGlvblJhdGUgdG8gImstcmF0ZSIgaXMgZXF1YWwgdG8gay1y
YXRlLiAKIFBBU1MgICBrLXJhdGUgZnJlcXVlbmN5OiBrLXJhdGUgbm9kZTogZnJlcXVlbmN5LnNl
dFZhbHVlQXRUaW1lKDM1MCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCkBAIC00Niw5
ICs0Niw5IEBAIFBBU1MgICBrLXJhdGUgZnJlcXVlbmN5OiBrLXJhdGUgbm9kZTogZnJlcXVlbmN5
LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlkCiBQQVNTICAgay1yYXRlIGZyZXF1ZW5j
eTogYS1yYXRlIG5vZGU6ZnJlcXVlbmN5LnNldFZhbHVlQXRUaW1lKDM1MCwwKSBkaWQgbm90IHRo
cm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogYS1yYXRlIG5vZGU6
ZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBl
eGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBmcmVxdWVuY3k6IE91dHB1dCBvZiBrLXJhdGUgQmlx
dWFkRmlsdGVyTm9kZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMzkwNjc1MDA4Mjk2
OTY2NTUsMC44MjgwNDIzODc5NjIzNDEzLDEuMjM3MTEyMjgzNzA2NjY1LDEuNTQ0Njg1MTI1MzUw
OTUyMSwxLjY4OTk1OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3NzcyODI3LDEuMzYyNTQxNTU2MzU4
MzM3NCwwLjg5NDU5ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2NTQxMjkwMywtMC40Mjk3MjAzNDIx
NTkyNzEyNCwtMS4xMzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgwNzg5NzU2Nzc0OSwtMi4yMTc5MDcx
OTAzMjI4NzYsLTIuNDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1NTE5NDI4MjUzMTc0Li4uXS4gCi1Q
QVNTICAgay1yYXRlIGZyZXF1ZW5jeTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2Rl
IGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSwwLjgyODA0
MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEuNjg5OTU5
ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAuODk0NTk4
NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0LC0xLjEz
NjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3NiwtMi40
NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLUZBSUwgWCBrLXJhdGUg
ZnJlcXVlbmN5OiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmls
dGVyTm9kZSBzaG91bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQg
ZnJvbSAwLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbQmlx
dWFkIGstcmF0ZSBmcmVxdWVuY3ldIDEgb3V0IG9mIDggYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgay1yYXRlIGZyZXF1
ZW5jeTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0
aGUgYXJyYXkgWzAsMC4zOTA2NjkxMzcyMzk0NTYyLDAuODI4MDEzMTgxNjg2NDAxNCwxLjIzNzA1
NDEwOTU3MzM2NDMsMS41NDQ2MTkzMjE4MjMxMjAxLDEuNjg5OTQzMDc1MTgwMDUzNywxLjYzMzQ5
MzE4NTA0MzMzNSwxLjM2MjkwNzY0ODA4NjU0NzksMC44OTUzMDYyODkxOTYwMTQ0LDAuMjc1NzA3
NDgzMjkxNjI2LC0wLjQyODI0MDE4MDAxNTU2Mzk2LC0xLjEzNDUzMjIxMzIxMTA1OTYsLTEuNzU3
MDQzMTIzMjQ1MjM5MywtMi4yMTY0MzkyNDcxMzEzNDc3LC0yLjQ1MDM5Nzk2ODI5MjIzNjMsLTIu
NDIxODUyMTExODE2NDA2Mi4uLl0uIAorUEFTUyAgIGstcmF0ZSBmcmVxdWVuY3k6IERpZmZlcmVu
Y2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIG5vdCBjb25z
dGFudGx5IDAgKGNvbnRhaW5zIDc5OTkgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyA8IFtCaXF1
YWQgay1yYXRlIGZyZXF1ZW5jeV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgOCBhc3Nl
cnRpb25zKSAKIFBBU1MgPiBbQmlxdWFkIGstcmF0ZSBnYWluXSAgCiBQQVNTICAgay1yYXRlIGdh
aW46IFNldHRpbmcgZ2Fpbi5hdXRvbWF0aW9uUmF0ZSB0byAiay1yYXRlIiBpcyBlcXVhbCB0byBr
LXJhdGUuIAogUEFTUyAgIGstcmF0ZSBnYWluOiBrLXJhdGUgbm9kZTogZ2Fpbi5zZXRWYWx1ZUF0
VGltZSgxMCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCkBAIC01Niw4ICs1Niw4IEBA
IFBBU1MgICBrLXJhdGUgZ2Fpbjogay1yYXRlIG5vZGU6IGdhaW4ubGluZWFyUmFtcFRvVmFsdWVB
dFRpbWUoMCwxKSBkaWQgbm90IHRocm93CiBQQVNTICAgay1yYXRlIGdhaW46IGEtcmF0ZSBub2Rl
OmdhaW4uc2V0VmFsdWVBdFRpbWUoMTAsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAog
UEFTUyAgIGstcmF0ZSBnYWluOiBhLXJhdGUgbm9kZTpnYWluLmxpbmVhclJhbXBUb1ZhbHVlQXRU
aW1lKDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBnYWlu
OiBPdXRwdXQgb2Ygay1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBh
cnJheSBbMCwwLjM5MDY3NTAwODI5Njk2NjU1LDAuODI4MDQyMzg3OTYyMzQxMywxLjIzNzExMjI4
MzcwNjY2NSwxLjU0NDY4NTEyNTM1MDk1MjEsMS42ODk5NTk4ODM2ODk4ODA0LDEuNjMzMzcxNzEw
Nzc3MjgyNywxLjM2MjU0MTU1NjM1ODMzNzQsMC44OTQ1OTg1NDM2NDM5NTE0LDAuMjc0NjAzMzk2
NjU0MTI5MDMsLTAuNDI5NzIwMzQyMTU5MjcxMjQsLTEuMTM2MjY4NzM0OTMxOTQ1OCwtMS43NTg4
MDc4OTc1Njc3NDksLTIuMjE3OTA3MTkwMzIyODc2LC0yLjQ1MTE4MDY5NjQ4NzQyNjgsLTIuNDIx
NTUxOTQyODI1MzE3NC4uLl0uIAotUEFTUyAgIGstcmF0ZSBnYWluOiBPdXRwdXQgb2YgYS1yYXRl
IEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDY3NTAw
ODI5Njk2NjU1LDAuODI4MDQyMzg3OTYyMzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0NDY4NTEy
NTM1MDk1MjEsMS42ODk5NTk4ODM2ODk4ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2MjU0MTU1
NjM1ODMzNzQsMC44OTQ1OTg1NDM2NDM5NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAuNDI5NzIw
MzQyMTU5MjcxMjQsLTEuMTM2MjY4NzM0OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDksLTIuMjE3
OTA3MTkwMzIyODc2LC0yLjQ1MTE4MDY5NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3NC4uLl0u
IAotRkFJTCBYIGstcmF0ZSBnYWluOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJh
dGUgQmlxdWFkRmlsdGVyTm9kZSBzaG91bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1
ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
LUZBSUwgPCBbQmlxdWFkIGstcmF0ZSBnYWluXSAxIG91dCBvZiA4IGFzc2VydGlvbnMgd2VyZSBm
YWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElU
IFRBU0sgUlVOTkVSIEZJTklTSEVEOiA0IG91dCBvZiA1IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBrLXJhdGUgZ2FpbjogT3V0
cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkg
WzAsMC4zOTA2Njc1NTc3MTYzNjk2MywwLjgyODAwMDA2ODY2NDU1MDgsMS4yMzcwMDQ3NTY5Mjc0
OTAyLDEuNTQ0NDkyMjQ0NzIwNDU5LDEuNjg5Njg1NDYzOTA1MzM0NSwxLjYzMzA1NDAxODAyMDYy
OTksMS4zNjIyNTc0ODA2MjEzMzgsMC44OTQ0NTg4MzAzNTY1OTc5LDAuMjc0NzM4Njk5MTk3NzY5
MTcsLTAuNDI5MTgxNjY1MTgyMTEzNjUsLTEuMTM1MjI4MDM3ODM0MTY3NSwtMS43NTcyMjM5NjM3
Mzc0ODc4LC0yLjIxNTgxOTgzNTY2Mjg0MiwtMi40NDg3MjQwMzE0NDgzNjQzLC0yLjQxODk1NDYx
MDgyNDU4NS4uLl0uIAorUEFTUyAgIGstcmF0ZSBnYWluOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1y
YXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250
YWlucyA3OTk5IGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgPCBbQmlxdWFkIGstcmF0ZSBnYWlu
XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA4IGFzc2VydGlvbnMpIAorUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA1IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL2JpcXVh
ZC1hdXRvbWF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9k
ZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0CmluZGV4IDU5MGQ3MzQw
OTZhZDE5ODRhZmFjZDc4ZDI1ZDRlZTg4NzVjOTUxYjQuLjhjZTRhMjhiY2E1ZDIwOTEyN2Q4MDQw
YmExYTE2ZWZhNzU5MmE1MDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVy
bm9kZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhw
ZWN0ZWQudHh0CkBAIC04LDk0ICs4LDI3IEBAIFBBU1MgRXhlY3V0aW5nICJhdXRvbWF0ZS1hbGwi
CiBQQVNTIEV4ZWN1dGluZyAibW9kdWxhdGlvbiIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1Mg
PiBbYXV0b21hdGUtZnJlcV0gIAotRkFJTCBYIE91dHB1dCBvZiBiYW5kcGFzcyBmaWx0ZXIgd2l0
aCBmcmVxdWVuY3kgYXV0b21hdGlvbiBkb2VzIG5vdCBlcXVhbCBbMCwwLjI3MjIyMjc1NzMzOTQ3
NzU0LDAuMTcwMzQ4Mzc2MDM1NjkwMywtMC40ODA2MjYxOTU2NjkxNzQyLC0wLjI3ODg0Mzc2MDQ5
MDQxNzUsMC4zOTU3MDU2OTk5MjA2NTQzLDAuMTA4NDAzMjQzMTI0NDg1MDIsLTAuMzk2NzcyMjA1
ODI5NjIwMzYsMC4wNjg3MTIzNTM3MDYzNTk4NiwwLjQxMDA0NDc1OTUxMTk0NzYzLC0wLjE4OTc2
MjkwNTI0MDA1ODksLTAuMzU5MDE0NjYwMTIwMDEwNCwwLjI5MjQ4NTQ3NTU0MDE2MTEzLDAuMjYx
NDU0MjI0NTg2NDg2OCwtMC4zNzY3MjIxMjcxOTkxNzMsLTAuMTQxOTUwMDU1OTU2ODQwNTIuLi5d
IHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjow
LjAwMDAwNDY0NTUsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBl
Y3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQkyLjcyMDc3NDEx
NDEzMTkyNzVlLTEJMi43MjIyMjc1NzMzOTQ3NzU0ZS0xCTEuNDUzNDU5MjYyODQ3OTAwNGUtNAk1
LjMzOTIyNzYxMjkwNDM1NTdlLTQJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0JWzJdCTEuNzA5MjQ5
MzE3NjQ2MDI2NmUtMQkxLjcwMzQ4Mzc2MDM1NjkwMzFlLTEJNS43NjU1NTcyODkxMjM1MzUyZS00
CTMuMzg0NTY4MzkwNTUyNTMwMWUtMwk0LjY0NTQ5OTk5OTk5OTk5OThlLTYKLQlbM10JLTQuNzg4
NDU4MzQ3MzIwNTU2NmUtMQktNC44MDYyNjE5NTY2OTE3NDE5ZS0xCTEuNzgwMzYwOTM3MTE4NTMw
M2UtMwkzLjcwNDI1MjgxMjYwMzY0OTJlLTMJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0JWzRdCS0y
LjgwMzUyMTQ1NDMzNDI1OTBlLTEJLTIuNzg4NDM3NjA0OTA0MTc0OGUtMQkxLjUwODM4NDk0MzAw
ODQyMjllLTMJNS40MDk0MjY5MTQ3NTUyMjE0ZS0zCTQuNjQ1NDk5OTk5OTk5OTk5OGUtNgotCVs1
XQkzLjkxNDI1MzExNTY1Mzk5MTdlLTEJMy45NTcwNTY5OTkyMDY1NDMwZS0xCTQuMjgwMzg4MzU1
MjU1MTI3MGUtMwkxLjA4MTcxMDA1Nzc4MTE3ODZlLTIJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0J
Li4uYW5kIDIwNzIgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDIuMTE5MDEwNjEyMzY4
NTgzN2UtMSBhdCBpbmRleCBvZiAxMTQ5LgotCVsxMTQ5XQktMS4xNDY4ODQwMzkwNDQzODAyZS0x
CTkuNzIxMjY1NzMzMjQyMDM0OWUtMgkyLjExOTAxMDYxMjM2ODU4MzdlLTEJMi4xNzk3NjgyMjIw
NzY4NzQ4ZSswCTQuNjQ1NDk5OTk5OTk5OTk5OGUtNgotCU1heCBSZWxFcnJvciBvZiA5LjY2OTk0
NjI4Nzk4MTE2NDhlKzEgYXQgaW5kZXggb2YgMTAwMC4KLQlbMTAwMF0JLTEuNzUzODkxNzA2NDY2
Njc0OGUtMQktMS43OTUxOTA3MzU3MjAwOTgwZS0zCTEuNzM1OTM5Nzk5MTA5NDczOGUtMQk5LjY2
OTk0NjI4Nzk4MTE2NDhlKzEJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2F1dG9tYXRlLWZyZXFdIDEgb3V0IG9mIDEg
YXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCitQQVNTICAgT3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRoIGZyZXF1ZW5jeSBhdXRv
bWF0aW9uIGVxdWFscyBbMCwwLjI3MjIyMjc1NzMzOTQ3NzU0LDAuMTcwMzQ4Mzc2MDM1NjkwMywt
MC40ODA2MjYxOTU2NjkxNzQyLC0wLjI3ODg0Mzc2MDQ5MDQxNzUsMC4zOTU3MDU2OTk5MjA2NTQz
LDAuMTA4NDAzMjQzMTI0NDg1MDIsLTAuMzk2NzcyMjA1ODI5NjIwMzYsMC4wNjg3MTIzNTM3MDYz
NTk4NiwwLjQxMDA0NDc1OTUxMTk0NzYzLC0wLjE4OTc2MjkwNTI0MDA1ODksLTAuMzU5MDE0NjYw
MTIwMDEwNCwwLjI5MjQ4NTQ3NTU0MDE2MTEzLDAuMjYxNDU0MjI0NTg2NDg2OCwtMC4zNzY3MjIx
MjcxOTkxNzMsLTAuMTQxOTUwMDU1OTU2ODQwNTIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwNDY0NTUsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4gCitQQVNTIDwgW2F1dG9tYXRlLWZyZXFdIEFsbCBhc3NlcnRpb25zIHBhc3Nl
ZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2F1dG9tYXRlLXFdICAKIEZBSUwgWCBP
dXRwdXQgb2YgYmFuZHBhc3MgZmlsdGVyIHdpdGggUSBhdXRvbWF0aW9uIGRvZXMgbm90IGVxdWFs
IFswLDAuMDEzMTE0NzgxMTE4OTI5Mzg2LDAuMDQ3ODIzMzg0NDA0MTgyNDM0LDAuMDk3NjUyOTM0
NDkxNjM0MzcsMC4xNTY1NzEyNTQxMzQxNzgxNiwwLjIxODk5MDU0OTQ0NTE1MjI4LDAuMjc5ODE3
NDYxOTY3NDY4MjYsMC4zMzQ1MjQ0ODI0ODg2MzIyLDAuMzc5MjI2OTUyNzkxMjE0LDAuNDEwNzU0
MjMzNTk4NzA5MSwwLjQyNjcwNzk4MzAxNjk2NzgsMC40MjU1MDE2NzQ0MTM2ODEwMywwLjQwNjM3
ODQ0ODAwOTQ5MDk3LDAuMzY5NDA1MDkwODA4ODY4NCwwLjMxNTQ0MTIyMDk5ODc2NDA0LDAuMjQ2
MDg0NjkwMDkzOTk0MTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjo5LjgzNDhlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRl
eAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAot
CVsxXQkxLjQzMTEwODE3Mjk4MjkzMTFlLTIJMS4zMTE0NzgxMTE4OTI5Mzg2ZS0yCTEuMTk2MzAw
NjEwODk5OTI1MmUtMwk5LjEyMTc3MzM2NDM1NDczOTFlLTIJOS44MzQ4MDAwMDAwMDAwMDA3ZS03
Ci0JWzJdCTUuMzk5OTQwMTYyODk3MTEwMGUtMgk0Ljc4MjMzODQ0MDQxODI0MzRlLTIJNi4xNzYw
MTcyMjQ3ODg2NjU4ZS0zCTEuMjkxNDIyMDMxNjU1NDA0M2UtMQk5LjgzNDgwMDAwMDAwMDAwMDdl
LTcKLQlbM10JMS4xMjM2NDQ2MzUwODEyOTEyZS0xCTkuNzY1MjkzNDQ5MTYzNDM2OWUtMgkxLjQ3
MTE1MjkwMTY0OTQ3NTFlLTIJMS41MDY1MTE3MTg1NzU2NTA1ZS0xCTkuODM0ODAwMDAwMDAwMDAw
N2UtNwotCVs0XQkxLjgyNDQ5ODc3MjYyMTE1NDhlLTEJMS41NjU3MTI1NDEzNDE3ODE2ZS0xCTIu
NTg3ODYyMzEyNzkzNzMxN2UtMgkxLjY1MjgzMzYxMDU1Mjc5NjZlLTEJOS44MzQ4MDAwMDAwMDAw
MDA3ZS03Ci0JWzVdCTIuNTczNTk2MjM5MDg5OTY1OGUtMQkyLjE4OTkwNTQ5NDQ1MTUyMjhlLTEJ
My44MzY5MDc0NDYzODQ0Mjk5ZS0yCTEuNzUyMDg4MTQwODM3OTcyN2UtMQk5LjgzNDgwMDAwMDAw
MDAwMDdlLTcKLQkuLi5hbmQgMzk5NCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgNC44
NzY0NzMwOTg5OTMzMDE0ZS0xIGF0IGluZGV4IG9mIDEyMy4KLQlbMTIzXQk1LjgzNTY3OTc2OTUx
NTk5MTJlLTEJOS41OTIwNjY3MDUyMjY4OTgyZS0yCTQuODc2NDczMDk4OTkzMzAxNGUtMQk1LjA4
Mzg2MDcwMzY5NTkxODllKzAJOS44MzQ4MDAwMDAwMDAwMDA3ZS03Ci0JTWF4IFJlbEVycm9yIG9m
IDEuMzczMzkzNTY5NDg0ODg2MGUrNSBhdCBpbmRleCBvZiAxMDYuCi0JWzEwNl0JLTQuMDgyNDEz
NjEzNzk2MjM0MWUtMQktMi45NzI0NzkyNTExODQyNjc5ZS02CTQuMDgyMzgzODg5MDAzNzIyM2Ut
MQkxLjM3MzM5MzU2OTQ4NDg4NjBlKzUJOS44MzQ4MDAwMDAwMDAwMDA3ZS03CisJWzI1Ml0JNS4y
MjcwODQxNTk4NTEwNzQyZS0xCTUuMjI3MDk0MjkyNjQwNjg2MGUtMQkxLjAxMzI3ODk2MTE4MTY0
MDZlLTYJMS45Mzg1MTI4ODAxMDY3NDEzZS02CTkuODM0ODAwMDAwMDAwMDAwN2UtNworCU1heCBB
YnNFcnJvciBvZiAxLjAxMzI3ODk2MTE4MTY0MDZlLTYgYXQgaW5kZXggb2YgMjUyLgorCU1heCBS
ZWxFcnJvciBvZiAxLjkzODUxMjg4MDEwNjc0MTNlLTYgYXQgaW5kZXggb2YgMjUyLgogIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCA8IFthdXRvbWF0ZS1xXSAxIG91
dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQogUEFTUyA+IFthdXRvbWF0ZS1nYWluXSAgCi1GQUlMIFggT3V0cHV0IG9mIGxv
d3NoZWxmIGZpbHRlciB3aXRoIGdhaW4gYXV0b21hdGlvbiBkb2VzIG5vdCBlcXVhbCBbMCwwLjQ3
ODEzNTY3NTE5MTg3OTMsMS41NTExMzg1MjAyNDA3ODM3LDMuMDQyODE1NDQ2ODUzNjM3Nyw0LjY0
OTQ0MDI4ODU0MzcwMSw2LjE0ODA5OTg5OTI5MTk5Miw3LjQyNDg5MjkwMjM3NDI2OCw4LjQzNjQ3
Mzg0NjQzNTU0Nyw5LjE2OTUzODQ5NzkyNDgwNSw5LjYxODU2NDYwNTcxMjg5LDkuNzc5NDM4OTcy
NDczMTQ1LDkuNjUwODczMTg0MjA0MTAyLDkuMjM3NDc2MzQ4ODc2OTUzLDguNTUxNzUzOTk3ODAy
NzM0LDcuNjE0NjE1NDQwMzY4NjUyLDYuNDU0ODE5Njc5MjYwMjU0Li4uXSB3aXRoIGFuIGVsZW1l
bnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMjc2NTcsInJl
bGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJ
CVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQk0Ljc4NjMwMTU1MzI0OTM1OTFlLTEJNC43
ODEzNTY3NTE5MTg3OTI3ZS0xCTQuOTQ0ODAxMzMwNTY2NDA2M2UtNAkxLjAzNDE4MzcyMzgxMDYx
NTVlLTMJMi43NjU3MDAwMDAwMDAwMDAwZS01Ci0JWzJdCTEuNTU1MDY0MDgyMTQ1NjkwOWUrMAkx
LjU1MTEzODUyMDI0MDc4MzdlKzAJMy45MjU1NjE5MDQ5MDcyMjY2ZS0zCTIuNTMwNzYxNjY1NTAw
OTM4MWUtMwkyLjc2NTcwMDAwMDAwMDAwMDBlLTUKLQlbM10JMy4wNTYwNTY5NzYzMTgzNTk0ZSsw
CTMuMDQyODE1NDQ2ODUzNjM3N2UrMAkxLjMyNDE1Mjk0NjQ3MjE2ODBlLTIJNC4zNTE3MzU5ODEz
NjM1MTU0ZS0zCTIuNzY1NzAwMDAwMDAwMDAwMGUtNQotCVs0XQk0LjY3OTQ4MzQxMzY5NjI4OTFl
KzAJNC42NDk0NDAyODg1NDM3MDEyZSswCTMuMDA0MzEyNTE1MjU4Nzg5MWUtMgk2LjQ2MTY2NDkw
NzYyNjU0OTJlLTMJMi43NjU3MDAwMDAwMDAwMDAwZS01Ci0JWzVdCTYuMjAyMjEyODEwNTE2MzU3
NGUrMAk2LjE0ODA5OTg5OTI5MTk5MjJlKzAJNS40MTEyOTExMjI0MzY1MjM0ZS0yCTguODAxNTY2
NjgwODg1NzE3OGUtMwkyLjc2NTcwMDAwMDAwMDAwMDBlLTUKLQkuLi5hbmQgMjA0OCBtb3JlIGVy
cm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMi40MDkwMjEzNzc1NjM0NzY2ZSswIGF0IGluZGV4IG9m
IDEyMC4KLQlbMTIwXQk5LjkwOTg4MTU5MTc5Njg3NTBlKzAJNy41MDA4NjAyMTQyMzMzOTg0ZSsw
CTIuNDA5MDIxMzc3NTYzNDc2NmUrMAkzLjIxMTY2MDE0MTMxNTc4MjVlLTEJMi43NjU3MDAwMDAw
MDAwMDAwZS01Ci0JTWF4IFJlbEVycm9yIG9mIDEuMDYzMjI5MjQxOTUyNTM3NWUrMiBhdCBpbmRl
eCBvZiAxMDAwLgotCVsxMDAwXQkyLjI5NjgxOTcyNDE0MjU1MTRlLTIJLTIuMTgwNzQwNTU3Mzc4
MTU4MGUtNAkyLjMxODYyNzEyOTcxNjMzMzBlLTIJMS4wNjMyMjkyNDE5NTI1Mzc1ZSsyCTIuNzY1
NzAwMDAwMDAwMDAwMGUtNQotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCA8IFthdXRvbWF0ZS1nYWluXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBs
b3dzaGVsZiBmaWx0ZXIgd2l0aCBnYWluIGF1dG9tYXRpb24gZXF1YWxzIFswLDAuNDc4MTM1Njc1
MTkxODc5MywxLjU1MTEzODUyMDI0MDc4MzcsMy4wNDI4MTU0NDY4NTM2Mzc3LDQuNjQ5NDQwMjg4
NTQzNzAxLDYuMTQ4MDk5ODk5MjkxOTkyLDcuNDI0ODkyOTAyMzc0MjY4LDguNDM2NDczODQ2NDM1
NTQ3LDkuMTY5NTM4NDk3OTI0ODA1LDkuNjE4NTY0NjA1NzEyODksOS43Nzk0Mzg5NzI0NzMxNDUs
OS42NTA4NzMxODQyMDQxMDIsOS4yMzc0NzYzNDg4NzY5NTMsOC41NTE3NTM5OTc4MDI3MzQsNy42
MTQ2MTU0NDAzNjg2NTIsNi40NTQ4MTk2NzkyNjAyNTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzY1NywicmVsYXRpdmVU
aHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbYXV0b21hdGUtZ2Fpbl0gQWxsIGFzc2VydGlvbnMgcGFz
c2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbYXV0b21hdGUtZGV0dW5lXSAgCi1G
QUlMIFggT3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRoIGRldHVuZSBhdXRvbWF0aW9uIGRv
ZXMgbm90IGVxdWFsIFswLDAuMDAwODM4Mzg1NjYyMDYzOTU2MywwLjAwMTQxMTIwNzk1MTYwNTMy
LDAuMDAwMzY2MDkzNjQ5MDYzMjU5MzYsMC4wMDAxMDAwMDkzNzYxODMxNTIyLDAuMDAxMjI5MDI5
NzMwODkzNjcxNSwwLjAwMTEyODYzMDQ3OTc5NzcyMSwwLjAwMDAwMTAwNzU0MDE2MzMwMDI5MTIs
MC4wMDA0NDM2MTkzNTU3OTIxNzk3LDAuMDAxNDMzMTAzNjk0NTgwNDk1NCwwLjAwMDY1ODE1OTM3
NzA1MzM4LC0wLjAwMDExNTM3NzI5MDA1Nzk0OTcyLDAuMDAwODk5NzIyNzk5NjU4Nzc1MywwLjAw
MTM0OTg5NjA3NjEzNTMzNzQsMC4wMDAxNjQ0NjkyNjc0NzQ0ODc0MiwwLjAwMDA2NzE4MjMyMTc5
OTkxOTAxLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRo
cmVzaG9sZCI6MC4wMDAwMzE0NzEsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1
YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVs0XQkx
LjMzMDYwMDIwNzQzODY5MjVlLTQJMS4wMDAwOTM3NjE4MzE1MjIwZS00CTMuMzA1MDY0NDU2MDcx
NzA0NmUtNQkzLjMwNDc1NDU5NjIyODAzMTdlLTEJMy4xNDcwOTk5OTk5OTk5OTk3ZS01Ci0JWzdd
CTYuOTc5MTYyNTcxOTUxNzQ2OWUtNQkxLjAwNzU0MDE2MzMwMDI5MTJlLTYJNi44Nzg0MDg1NTU2
MjE3MTc4ZS01CTYuODI2OTMyMzcwNzA2NTQ2N2UrMQkzLjE0NzA5OTk5OTk5OTk5OTdlLTUKLQlb
OF0JNC44ODY3NDg1MDIwMzA5Njg3ZS00CTQuNDM2MTkzNTU3OTIxNzk3MGUtNAk0LjUwNTU0OTQ0
MTA5MTcxNjNlLTUJMS4wMTU2MzQwOTc2MjU0NDQ5ZS0xCTMuMTQ3MDk5OTk5OTk5OTk5N2UtNQot
CVsxMF0JNy4wNzkwMTQ5MDM4NjU3NTQ2ZS00CTYuNTgxNTkzNzcwNTMzODAwMWUtNAk0Ljk3NDIx
MTMzMzMxOTU0NDhlLTUJNy41NTc3NjEwOTM2NTY5NzI4ZS0yCTMuMTQ3MDk5OTk5OTk5OTk5N2Ut
NQotCVsxMV0JLTQuNDIxMjY2MTEyMzMxMDY4MWUtNgktMS4xNTM3NzI5MDA1Nzk0OTcyZS00CTEu
MTA5NTYwMjM5NDU2MTg2NWUtNAk5LjYxNjc5OTI3NTY1Mzc3NjhlLTEJMy4xNDcwOTk5OTk5OTk5
OTk3ZS01Ci0JLi4uYW5kIDExMjYgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDEuMDE3
ODAwNDM1NDIzODUxMGUrMCBhdCBpbmRleCBvZiAxMDE1LgotCVsxMDE1XQktMS40NTcwMDYxODYy
NDY4NzE5ZS0xCTguNzIwOTk4MTY3OTkxNjM4MmUtMQkxLjAxNzgwMDQzNTQyMzg1MTBlKzAJMS4x
NjcwNjg3NDEyMzU4OTA3ZSswCTMuMTQ3MDk5OTk5OTk5OTk5N2UtNQotCU1heCBSZWxFcnJvciBv
ZiBJbmZpbml0eSBhdCBpbmRleCBvZiAxMDg3LgotCVsxMDg3XQkxLjAwMTc3OTA2NDUzNjA5NDdl
LTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuMDAxNzc5MDY0NTM2MDk0N2UtMQlJbmZpbml0eQkz
LjE0NzA5OTk5OTk5OTk5OTdlLTUKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKLUZBSUwgPCBbYXV0b21hdGUtZGV0dW5lXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBm
YWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1
dCBvZiBiYW5kcGFzcyBmaWx0ZXIgd2l0aCBkZXR1bmUgYXV0b21hdGlvbiBlcXVhbHMgWzAsMC4w
MDA4MzgzODU2NjIwNjM5NTYzLDAuMDAxNDExMjA3OTUxNjA1MzIsMC4wMDAzNjYwOTM2NDkwNjMy
NTkzNiwwLjAwMDEwMDAwOTM3NjE4MzE1MjIsMC4wMDEyMjkwMjk3MzA4OTM2NzE1LDAuMDAxMTI4
NjMwNDc5Nzk3NzIxLDAuMDAwMDAxMDA3NTQwMTYzMzAwMjkxMiwwLjAwMDQ0MzYxOTM1NTc5MjE3
OTcsMC4wMDE0MzMxMDM2OTQ1ODA0OTU0LDAuMDAwNjU4MTU5Mzc3MDUzMzgsLTAuMDAwMTE1Mzc3
MjkwMDU3OTQ5NzIsMC4wMDA4OTk3MjI3OTk2NTg3NzUzLDAuMDAxMzQ5ODk2MDc2MTM1MzM3NCww
LjAwMDE2NDQ2OTI2NzQ3NDQ4NzQyLDAuMDAwMDY3MTgyMzIxNzk5OTE5MDEuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAzMTQ3
MSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbYXV0b21hdGUtZGV0dW5lXSBBbGwg
YXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFthdXRvbWF0
ZS1hbGxdICAKLUZBSUwgWCBPdXRwdXQgb2YgcGVha2luZyBmaWx0ZXIgd2l0aCBhdXRvbWF0aW9u
IG9mIGFsbCBwYXJhbWV0ZXJzIGRvZXMgbm90IGVxdWFsIFswLDAuOTg3Njg4MzYyNTk4NDE5Miwt
MC4zMDkwMTcwMDI1ODI1NTAwNSwtMC44OTEwMDY1MjkzMzEyMDczLDAuNTg3Nzg1MjQzOTg4MDM3
MSwwLjcwNzEwNjc2OTA4NDkzMDQsLTAuODA5MDE3MDAyNTgyNTUsLTAuNDUzOTkwNDg5MjQ0NDYx
MDYsMC45NTEwNTY1NDAwMTIzNTk2LDAuMTU2NDM0NDYxNDc0NDE4NjQsLTEsMC4xNTY0MzQ0NjE0
NzQ0MTg2NCwwLjk1MTA1NjU0MDAxMjM1OTYsLTAuNDUzOTkwNDg5MjQ0NDYxMDYsLTAuODA5MDE3
MDAyNTgyNTUsMC43MDcxMDY3NjkwODQ5MzA0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDA2MjkwNywicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRl
c3QgdGhyZXNob2xkCi0JWzY5N10JLTguOTEwMDY1MjkzMzEyMDcyOGUtMQktOC45NjU5NDgyMjQw
Njc2ODgwZS0xCTUuNTg4MjkzMDc1NTYxNTIzNGUtMwk2LjIzMjc5NjUwNTA3MDg0NTBlLTMJNi4y
OTA3MDAwMDAwMDAwMDAyZS00Ci0JWzY5OF0JLTMuMDkwMTcwMDI1ODI1NTAwNWUtMQktMy4wNDgy
OTYyNzI3NTQ2NjkyZS0xCTQuMTg3Mzc1MzA3MDgzMTI5OWUtMwkxLjM3MzY3NzI3MTYzMTgzNjRl
LTIJNi4yOTA3MDAwMDAwMDAwMDAyZS00Ci0JWzY5OV0JOS44NzY4ODM2MjU5ODQxOTE5ZS0xCTEu
MDA3MjYwMzIyNTcwODAwOGUrMAkxLjk1NzE5NTk5NzIzODE1OTJlLTIJMS45NDMwODg1NDc1OTg5
NjE4ZS0yCTYuMjkwNzAwMDAwMDAwMDAwMmUtNAotCVs3MDBdCS01LjU4Nzk3OTM1MjI0MzAwNTVl
LTE0CS0zLjc3MjY5NDk5MDAzODg3MThlLTIJMy43NzI2OTQ5OTAwMzMyODM5ZS0yCTkuOTk5OTk5
OTk5OTg1MTg4NWUtMQk2LjI5MDcwMDAwMDAwMDAwMDJlLTQKLQlbNzAxXQktOS44NzY4ODM2MjU5
ODQxOTE5ZS0xCS05LjcyNDYyMjk2NDg1OTAwODhlLTEJMS41MjI2MDY2MTEyNTE4MzExZS0yCTEu
NTY1NzIzMDI3Nzc1OTIyMGUtMgk2LjI5MDcwMDAwMDAwMDAwMDJlLTQKLQkuLi5hbmQgMzI5MCBt
b3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMS4wMDAwNzgyNDg5Nzc2NjExZSsxIGF0IGlu
ZGV4IG9mIDIwMzAuCi0JWzIwMzBdCTEuMjc3NjA2NDg3Mjc0MTY5OWUrMAkxLjEyNzgzODg5Nzcw
NTA3ODFlKzEJMS4wMDAwNzgyNDg5Nzc2NjExZSsxCTguODY3MjA4MzQ4NzUxMDE1NmUtMQk2LjI5
MDcwMDAwMDAwMDAwMDJlLTQKLQlNYXggUmVsRXJyb3Igb2YgNy4yNjI2ODE4MTU3MzczMTY1ZSsx
IGF0IGluZGV4IG9mIDg5OC4KLQlbODk4XQktMi4wOTEwNjI4MTM5OTcyNjg3ZS0xCS0yLjg0MDA4
MzA5MjQ1MTA5NTZlLTMJMi4wNjI2NjE5ODMwNzI3NTc3ZS0xCTcuMjYyNjgxODE1NzM3MzE2NWUr
MQk2LjI5MDcwMDAwMDAwMDAwMDJlLTQKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKLUZBSUwgPCBbYXV0b21hdGUtYWxsXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBm
YWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1
dCBvZiBwZWFraW5nIGZpbHRlciB3aXRoIGF1dG9tYXRpb24gb2YgYWxsIHBhcmFtZXRlcnMgZXF1
YWxzIFswLDAuOTg3Njg4MzYyNTk4NDE5MiwtMC4zMDkwMTcwMDI1ODI1NTAwNSwtMC44OTEwMDY1
MjkzMzEyMDczLDAuNTg3Nzg1MjQzOTg4MDM3MSwwLjcwNzEwNjc2OTA4NDkzMDQsLTAuODA5MDE3
MDAyNTgyNTUsLTAuNDUzOTkwNDg5MjQ0NDYxMDYsMC45NTEwNTY1NDAwMTIzNTk2LDAuMTU2NDM0
NDYxNDc0NDE4NjQsLTEsMC4xNTY0MzQ0NjE0NzQ0MTg2NCwwLjk1MTA1NjU0MDAxMjM1OTYsLTAu
NDUzOTkwNDg5MjQ0NDYxMDYsLTAuODA5MDE3MDAyNTgyNTUsMC43MDcxMDY3NjkwODQ5MzA0Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MC4wMDA2MjkwNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbYXV0b21hdGUtYWxs
XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFtt
b2R1bGF0aW9uXSAgCi1GQUlMIFggT3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRoIHNpbnVz
b2lkYWwgbW9kdWxhdGlvbiBvZiBiYW5kcGFzcyBjZW50ZXIgZnJlcXVlbmN5IGRvZXMgbm90IGVx
dWFsIFswLDAuMDAxODAwMzczODk1MDkzNzk4NiwwLjAwNzE2NTgxMjQyMTU5MDA5LDAuMDE1ODYy
NTYzNjI0OTc4MDY1LDAuMDI3NDk2NTQ0NjQ0MjM2NTY1LDAuMDQxNTE5MTE2NjEwMjg4NjIsMC4w
NTcyMzk3MjI0NjA1MDgzNSwwLjA3Mzg0NTQ1MzU2MDM1MjMzLDAuMDkwNDI3MzE2NzI1MjU0MDYs
MC4xMDYwMTI1OTc2ODAwOTE4NiwwLjExOTYwMjQ0OTIzODMwMDMyLDAuMTMwMjEzNDk5MDY5MjEz
ODcsMC4xMzY5MjE4OTc1MzA1NTU3MywwLjEzODkwODE5MjUxNTM3MzIzLDAuMTM1NTAwODMzMzky
MTQzMjUsMC4xMjYyMTY1MTU4OTg3MDQ1My4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDM5Nzg3LCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVz
dCB0aHJlc2hvbGQKLQlbMl0JNi45MzY4MzI3OTY3ODIyNTUyZS0zCTcuMTY1ODEyNDIxNTkwMDg5
OGUtMwkyLjI4OTc5NjI0ODA3ODM0NjNlLTQJMy4xOTU0NDU0MTk2Njk4NjMwZS0yCTMuOTc4Njk5
OTk5OTk5OTk5N2UtNQotCVszXQkxLjUyNDY3MDcwMTQ3Mzk1MTNlLTIJMS41ODYyNTYzNjI0OTc4
MDY1ZS0yCTYuMTU4NTY2MTAyMzg1NTIwOWUtNAkzLjg4MjQ1MzIwNzQyOTc5MDNlLTIJMy45Nzg2
OTk5OTk5OTk5OTk3ZS01Ci0JWzRdCTIuNjI4MzY1MzQ1Mjk5MjQzOWUtMgkyLjc0OTY1NDQ2NDQy
MzY1NjVlLTIJMS4yMTI4OTExOTEyNDQxMjU0ZS0zCTQuNDExMDY3NjcwMjczMDg4MmUtMgkzLjk3
ODY5OTk5OTk5OTk5OTdlLTUKLQlbNV0JMy45NTI4OTI0OTcxODE4OTI0ZS0yCTQuMTUxOTExNjYx
MDI4ODYyMGUtMgkxLjk5MDE5MTYzODQ2OTY5NjBlLTMJNC43OTM0MzQ0NDg4ODM1MjQwZS0yCTMu
OTc4Njk5OTk5OTk5OTk5N2UtNQotCVs2XQk1LjQzNzAxMTI3MTcxNTE2NDJlLTIJNS43MjM5NzIy
NDYwNTA4MzQ3ZS0yCTIuODY5NjA5NzQzMzU2NzA0N2UtMwk1LjAxMzMxODc1ODM3ODkzMzllLTIJ
My45Nzg2OTk5OTk5OTk5OTk3ZS01Ci0JLi4uYW5kIDM5OTMgbW9yZSBlcnJvcnMuCi0JTWF4IEFi
c0Vycm9yIG9mIDEuMjc5ODA0ODg1Mzg3NDIwN2UrMCBhdCBpbmRleCBvZiAzNTIwLgotCVszNTIw
XQktNi4yNjU4MzM5NzM4ODQ1ODI1ZS0xCTYuNTMyMjE0ODc5OTg5NjI0MGUtMQkxLjI3OTgwNDg4
NTM4NzQyMDdlKzAJMS45NTkyMjA0MzEyMDE1MTI1ZSswCTMuOTc4Njk5OTk5OTk5OTk5N2UtNQot
CU1heCBSZWxFcnJvciBvZiAxLjMzNTM2MzYxMDUyMTcyMDZlKzMgYXQgaW5kZXggb2YgMjgyMS4K
LQlbMjgyMV0JMS41ODAyOTk0MzcwNDYwNTEwZS0xCTEuMTgyNTM3MDE2NTc1MjI0N2UtNAkxLjU3
OTExNjkwMDAyOTQ3NThlLTEJMS4zMzUzNjM2MTA1MjE3MjA2ZSszCTMuOTc4Njk5OTk5OTk5OTk5
N2UtNQotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFttb2R1
bGF0aW9uXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVE
OiA2IG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK1BBU1MgICBPdXRwdXQgb2YgYmFuZHBhc3MgZmlsdGVyIHdpdGggc2ludXNv
aWRhbCBtb2R1bGF0aW9uIG9mIGJhbmRwYXNzIGNlbnRlciBmcmVxdWVuY3kgZXF1YWxzIFswLDAu
MDAxODAwMzczODk1MDkzNzk4NiwwLjAwNzE2NTgxMjQyMTU5MDA5LDAuMDE1ODYyNTYzNjI0OTc4
MDY1LDAuMDI3NDk2NTQ0NjQ0MjM2NTY1LDAuMDQxNTE5MTE2NjEwMjg4NjIsMC4wNTcyMzk3MjI0
NjA1MDgzNSwwLjA3Mzg0NTQ1MzU2MDM1MjMzLDAuMDkwNDI3MzE2NzI1MjU0MDYsMC4xMDYwMTI1
OTc2ODAwOTE4NiwwLjExOTYwMjQ0OTIzODMwMDMyLDAuMTMwMjEzNDk5MDY5MjEzODcsMC4xMzY5
MjE4OTc1MzA1NTU3MywwLjEzODkwODE5MjUxNTM3MzIzLDAuMTM1NTAwODMzMzkyMTQzMjUsMC4x
MjYyMTY1MTU4OTg3MDQ1My4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsi
YWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDM5Nzg3LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAor
UEFTUyA8IFttb2R1bGF0aW9uXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2Vy
dGlvbnMpIAorRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiA2IHRh
c2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFjZS9uby1k
ZXppcHBlcmluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUt
aW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dAppbmRleCBmZjBmMTVlN2VmOTdl
ODI2NGYxMzNjZDNmZGE4ZDQ1YzBiOGI0NzRkLi5jYjU1NWYzZWRlZDA4OTU5ZDhiZWNmNTY3ZWZm
MTI3ZWZmMWYwNzM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUt
aW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dApA
QCAtMTEsMTQgKzExLDE0IEBAIFBBU1MgPiBbVGVzdCAwXSBObyBkZXppcHBlcmluZyBmb3IgZnJl
cXVlbmN5CiBQQVNTICAgQXQgdGltZSAwLCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMzUwLiAKIFBB
U1MgICBBdCB0aW1lIDAuMDE1NjI1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gODAwLiAKIFBBU1Mg
ICBBdCB0aW1lIDAuMDU0Njg3NSwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDIwMC4gCi1QQVNTICAg
T3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBlcXVhbHMgWzAuNzg2MzU2MjEwNzA4NjE4Miww
Ljk2NzY2MTg1NzYwNDk4MDUsMS4xMzU3NzI0NjY2NTk1NDYsMS4yODU4MjQ3NzU2OTU4MDA4LDEu
NDEzMzkyNzgyMjExMzAzNywxLjUxNDYxNzY4MTUwMzI5NiwxLjU4NjMyMzE0MjA1MTY5NjgsMS42
MjYxMTEyNjg5OTcxOTI0LDEuNjMyNDM1Njc5NDM1NzMsMS42MDQ2NTA4NTUwNjQzOTIsMS41NDMw
MzY1ODAwODU3NTQ0LDEuNDQ4Nzk0MTI2NTEwNjIwMSwxLjMyNDAxODk1NTIzMDcxMywxLjE3MTY0
NTA0NTI4MDQ1NjUsMC45OTUzNjc2NDYyMTczNDYyLDAuNzk5NTQyMTI5MDM5NzY0NC4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAw
MDAzMDM5OSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBPdXRwdXQgZnJvbSBmcmVx
dWVuY3kgc2V0dGVyIGVxdWFscyBbMC43ODYzNTYyMTA3MDg2MTgyLDAuOTY3NjYxOTE3MjA5NjI1
MiwxLjEzNTc3MjQ2NjY1OTU0NiwxLjI4NTgyNDg5NDkwNTA5MDMsMS40MTMzOTI5MDE0MjA1OTMz
LDEuNTE0NjE3NjgxNTAzMjk2LDEuNTg2MzIzMjYxMjYwOTg2MywxLjYyNjExMTM4ODIwNjQ4Miwx
LjYzMjQzNTc5ODY0NTAxOTUsMS42MDQ2NTA5NzQyNzM2ODE2LDEuNTQzMDM2Njk5Mjk1MDQ0LDEu
NDQ4Nzk0MjQ1NzE5OTA5NywxLjMyNDAxOTA3NDQ0MDAwMjQsMS4xNzE2NDUxNjQ0ODk3NDYsMC45
OTUzNjc3NjU0MjY2MzU3LDAuNzk5NTQyMjQ4MjQ5MDU0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDMwMzk5LCJyZWxhdGl2
ZVRocmVzaG9sZCI6MH0uIAogUEFTUyAgIE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgbWF0
Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgdHJ1ZS4gCiBQQVNTIDwgW1Rlc3QgMF0gQWxs
IGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbVGVzdCAx
XSBObyBkZXppcHBlcmluZyBmb3IgZGV0dW5lIAogUEFTUyAgIEF0IHRpbWUgMCwgZGV0dW5lIGlz
IGVxdWFsIHRvIDMzLiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBkZXR1bmUgaXMgZXF1YWwg
dG8gMTAwMC4gCiBQQVNTICAgQXQgdGltZSAwLjAzOTA2MjUsIGRldHVuZSBpcyBlcXVhbCB0byAt
NDAwLiAKLVBBU1MgICBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGVxdWFscyBbMS4xNDc2NjA5
NzA2ODc4NjYyLDEuMTU2MTk1NDAyMTQ1Mzg1NywxLjEzNzE1NjcyNDkyOTgwOTYsMS4wODkxMzM2
MjAyNjIxNDYsMS4wMTE1MzM5NzU2MDExOTYzLDAuOTA0NjI5NzA3MzM2NDI1OCwwLjc2OTU3Njc4
Nzk0ODYwODQsMC42MDg0MDg4MDg3MDgxOTA5LDAuNDI0MDA0ODIyOTY5NDM2NjUsMC4yMjAwMjg3
NTgwNDkwMTEyMywwLjAwMDg0NjE0Mjg4MDYxODU3MjIsLTAuMjI4NTgyNDQxODA2NzkzMiwtMC40
NjI4MjY4MTgyMjc3Njc5NCwtMC42OTYxMzAzMzUzMzA5NjMxLC0wLjkyMjU2NDA4OTI5ODI0ODMs
LTEuMTM2MTg5ODE4MzgyMjYzMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9m
IHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDA0MDUzMiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9
LiAKK1BBU1MgICBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGVxdWFscyBbMS4xNDc2NjA5NzA2
ODc4NjYyLDEuMTU2MTk1NDAyMTQ1Mzg1NywxLjEzNzE1NjcyNDkyOTgwOTYsMS4wODkxMzM2MjAy
NjIxNDYsMS4wMTE1MzM5NzU2MDExOTYzLDAuOTA0NjI5NzA3MzM2NDI1OCwwLjc2OTU3NjcyODM0
Mzk2MzYsMC42MDg0MDg4MDg3MDgxOTA5LDAuNDI0MDA0NzkzMTY3MTE0MjYsMC4yMjAwMjg3NDMx
NDc4NTAwNCwwLjAwMDg0NjEyOTYwOTI3MTg4NCwtMC4yMjg1ODI0NTY3MDc5NTQ0LC0wLjQ2Mjgy
NjgxODIyNzc2Nzk0LC0wLjY5NjEzMDM5NDkzNTYwNzksLTAuOTIyNTY0MDg5Mjk4MjQ4MywtMS4x
MzYxODk4MTgzODIyNjMyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDQwNTMyLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAog
UEFTUyAgIE91dHB1dCBmcm9tIGRldHVuZSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBv
dXRwdXQgaXMgdHJ1ZS4gCiBQQVNTIDwgW1Rlc3QgMV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgNSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbVGVzdCAyXSBObyBkZXppcHBlcmluZyBmb3Ig
USAKQEAgLTMyLDE0ICszMiwxNCBAQCBQQVNTID4gW1Rlc3QgM10gTm8gZGV6aXBwZXJpbmcgZm9y
IGdhaW4KIFBBU1MgICBBdCB0aW1lIDAsIGdhaW4gaXMgZXF1YWwgdG8gMS4gCiBQQVNTICAgQXQg
dGltZSAwLjAxNTYyNSwgZ2FpbiBpcyBlcXVhbCB0byA1LiAKIFBBU1MgICBBdCB0aW1lIDAuMDQ2
ODc1LCBnYWluIGlzIGVxdWFsIHRvIC0wLjMuIAotUEFTUyAgIE91dHB1dCBmcm9tIGdhaW4gc2V0
dGVyIGVxdWFscyBbLTAuODQ0ODY3MjI5NDYxNjY5OSwtMS4wMzQ1MzU2NDY0Mzg1OTg2LC0xLjE4
NjYwNjE2ODc0Njk0ODIsLTEuMjk5NDczMjg1Njc1MDQ4OCwtMS4zNzIzOTExMDQ2OTgxODEyLC0x
LjQwNTQ4NjM0NTI5MTEzNzcsLTEuMzk5NzUwNTkwMzI0NDAxOSwtMS4zNTcwMTM5NDA4MTExNTcy
LC0xLjI3OTg5ODY0MzQ5MzY1MjMsLTEuMTcxNzUzNjQ0OTQzMjM3MywtMS4wMzY1NzIwOTg3MzE5
OTQ2LC0wLjg3ODg5MTY0Njg2MjAzLC0wLjcwMzY4NDM4OTU5MTIxNywtMC41MTYyMzEyMzg4NDIw
MTA1LC0wLjMyMTk5MjAwOTg3ODE1ODU3LC0wLjEyNjQ2OTMyODk5OTUxOTM1Li4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE5
MDc0LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIE91dHB1dCBmcm9tIGdhaW4gc2V0
dGVyIGVxdWFscyBbLTAuODQ0ODY3MjI5NDYxNjY5OSwtMS4wMzQ1MzU2NDY0Mzg1OTg2LC0xLjE4
NjYwNjE2ODc0Njk0ODIsLTEuMjk5NDczMjg1Njc1MDQ4OCwtMS4zNzIzOTExMDQ2OTgxODEyLC0x
LjQwNTQ4NjM0NTI5MTEzNzcsLTEuMzk5NzUwNTkwMzI0NDAxOSwtMS4zNTcwMTM5NDA4MTExNTcy
LC0xLjI3OTg5ODY0MzQ5MzY1MjMsLTEuMTcxNzUzNjQ0OTQzMjM3MywtMS4wMzY1NzIwOTg3MzE5
OTQ2LC0wLjg3ODg5MTcwNjQ2NjY3NDgsLTAuNzAzNjg0NDQ5MTk1ODYxOCwtMC41MTYyMzEyMzg4
NDIwMTA1LC0wLjMyMTk5MjAzOTY4MDQ4MDk2LC0wLjEyNjQ2OTM0MzkwMDY4MDU0Li4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAw
MDE5MDc0LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAogUEFTUyAgIE91dHB1dCBmcm9tIGdhaW4g
c2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAogUEFTUyA8IFtU
ZXN0IDNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDUgYXNzZXJ0aW9ucykgCiBQQVNT
ID4gW1Rlc3QgNF0gTm8gZGV6aXBwZXJpbmcgb2YgZnJlcXVlbmN5IHZzIEpTIGZpbHRlciAKIEZB
SUwgWCBPdXRwdXQgZnJvbSBsb3dwYXNzIGZpbHRlciBkb2VzIG5vdCBlcXVhbCBbLTAuMDAzMDAx
MDQ4NDYyNDY1NDA1NSwtMC4wMTQwNjk4OTYxOTEzNTg1NjYsLTAuMDMzNDAyMDQ4MDUxMzU3Mjcs
LTAuMDU3MjkxNDEwODYzMzk5NTA2LC0wLjA4MjE2NDMwMjQ2ODI5OTg3LC0wLjEwNDcwMDY0NzI5
NDUyMTMzLC0wLjEyMTk0MDk1NTUxOTY3NjIxLC0wLjEzMTM3NjYzOTAwODUyMjAzLC0wLjEzMTAy
MTczODA1MjM2ODE2LC0wLjExOTQ2NDYwNjA0NjY3NjY0LC0wLjA5NTg5ODgxNDQ5OTM3ODIsLTAu
MDYwMTMzMDIxMzI0ODcyOTcsLTAuMDEyNTgwMTc0MDIxNDIyODYzLDAuMDQ1NzcyOTk1Nzk5Nzc5
ODksMC4xMTM0MTQ3MTk3MDA4MTMzLDAuMTg4MzczMjIyOTQ3MTIwNjcuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjo1Ljk2MDdlLTcsInJl
bGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJ
CVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAogCVswXQktMi42MjU5ODI0NjMzNTk4MzI4ZS0xCS0z
LjAwMTA0ODQ2MjQ2NTQwNTVlLTMJMi41OTU5NzE5Nzg3MzUxNzg3ZS0xCTguNjUwMjE2Nzg2NTc3
ODEzNGUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKLQlbMV0JLTQuMTQ0NDUwNzI0MTI0OTA4NGUt
MQktMS40MDY5ODk2MTkxMzU4NTY2ZS0yCTQuMDAzNzUxNzYyMjExMzIyOGUtMQkyLjg0NTYxNTcw
ODcxNDU2OTRlKzEJNS45NjA3MDAwMDAwMDAwMDAyZS03CisJWzFdCS00LjE0NDQ1MTAyMjE0ODEz
MjNlLTEJLTEuNDA2OTg5NjE5MTM1ODU2NmUtMgk0LjAwMzc1MjA2MDIzNDU0NjdlLTEJMi44NDU2
MTU5MjA1MzA3OTAyZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUtNwogCVsyXQktNS40Mzg2MjUyMTY0
ODQwNjk4ZS0xCS0zLjM0MDIwNDgwNTEzNTcyNjllLTIJNS4xMDQ2MDQ3MzU5NzA0OTcxZS0xCTEu
NTI4MjMxMDYxNzk2NTQ2MWUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKIAlbM10JLTYuMzU5Mjg2
OTA0MzM1MDIyMGUtMQktNS43MjkxNDEwODYzMzk5NTA2ZS0yCTUuNzg2MzcyNzk1NzAxMDI2OWUt
MQkxLjAwOTk4OTU3OTMyNzYxMjRlKzEJNS45NjA3MDAwMDAwMDAwMDAyZS03CiAJWzRdCS02Ljgw
OTA0NTA3NjM3MDIzOTNlLTEJLTguMjE2NDMwMjQ2ODI5OTg2NmUtMgk1Ljk4NzQwMjA1MTY4NzI0
MDZlLTEJNy4yODcxMDg3MjIxODE3MDkwZSswCTUuOTYwNzAwMDAwMDAwMDAwMmUtNwpAQCAtNTUs
MjAgKzU1LDggQEAgUEFTUyA+IFtUZXN0IDVdIFRlc3Qgd2l0aCBtb2R1bGF0aW9uCiBQQVNTICAg
TW9kdWxhdGlvbjogQXQgdGltZSAwLCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMzUwLiAKIFBBU1Mg
ICBNb2R1bGF0aW9uOiBBdCB0aW1lIDAuMDE1NjI1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMTAu
IAogUEFTUyAgIE1vZHVsYXRpb246IEF0IHRpbWUgMC4wNjI1LCBmcmVxdWVuY3kgaXMgZXF1YWwg
dG8gLTEwLiAKLUZBSUwgWCBNb2R1bGF0aW9uOiBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVy
IGRvZXMgbm90IGVxdWFsIFswLC0wLjE2NzkzODMwNjkyNzY4MDk3LC0wLjMzMTEwNjMwNTEyMjM3
NTUsLTAuNDg0ODY5MjQxNzE0NDc3NTQsLTAuNjI0ODU5NTExODUyMjY0NCwtMC43NDcxMDA1OTE2
NTk1NDU5LC0wLjg0ODEyMDMzMTc2NDIyMTIsLTAuOTI1MDQ5MzY0NTY2ODAzLC0wLjk3NTcwMjIy
NjE2MTk1NjgsLTAuOTk4NjQwMTc5NjM0MDk0MiwtMC45OTMyMTIwNDQyMzkwNDQyLC0wLjk1OTU3
MTQyMTE0NjM5MjgsLTAuODk4Njc0NDg4MDY3NjI3LC0wLjgxMjI1MDU1NDU2MTYxNSwtMC43MDI3
NTQ3OTU1NTEzLC0wLjU3MzI5NzE0Mjk4MjQ4MjkuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0u
Ci0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJl
c2hvbGQKLQlbMTI4XQktMy44MjMwMTE4MTU1NDc5NDMxZS0xCS0zLjgyMzY0NjAwODk2ODM1MzNl
LTEJNi4zNDE5MzQyMDQxMDE1NjI1ZS01CTEuNjU4NjA5MTM2MjA4MzY1MGUtNAkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAKLQlbMTI5XQktMi4yMDkxMzY3ODQwNzY2OTA3ZS0xCS0yLjIxMTA5MjU2MTQ4
MzM4MzJlLTEJMS45NTU3Nzc0MDY2OTI1MDQ5ZS00CTguODQ1Mjk4NjU4MDU1MzExMWUtNAkwLjAw
MDAwMDAwMDAwMDAwMDBlKzAKLQlbMTMwXQktNS4yNzgwNTM1MDcyMDg4MjQyZS0yCS01LjMxODAx
OTkxMTY0Njg0MzBlLTIJMy45OTY2NDA0NDM4MDE4Nzk5ZS00CTcuNTE1Mjc5MjAyMDM3MTE5NGUt
MwkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMTMxXQkxLjE3MzY1NTAxODIxMDQxMTFlLTEJMS4x
NjY4ODc2NTU4NTQyMjUyZS0xCTYuNzY3MzYyMzU2MTg1OTEzMWUtNAk1Ljc5OTQ5Nzc2ODQ3MzU1
MjBlLTMJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzEzMl0JMi44NDczNDkwNDc2NjA4Mjc2ZS0x
CTIuODM3MDkzMTc0NDU3NTUwMGUtMQkxLjAyNTU4NzMyMDMyNzc1ODhlLTMJMy42MTQ5MjI5NDE0
MTQ2NzYzZS0zCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCS4uLmFuZCA1MDcgbW9yZSBlcnJvcnMu
Ci0JTWF4IEFic0Vycm9yIG9mIDUuMDQ3NTU5NzM4MTU5MTc5N2UtMiBhdCBpbmRleCBvZiAzNTQu
Ci0JWzM1NF0JMy4wMTA2NTA3MjQxNzI1OTIyZS0yCTguMDU4MjEwNDYyMzMxNzcxOWUtMgk1LjA0
NzU1OTczODE1OTE3OTdlLTIJNi4yNjM4NzE4MTM0MTgyMjE0ZS0xCTAuMDAwMDAwMDAwMDAwMDAw
MGUrMAotCU1heCBSZWxFcnJvciBvZiAzLjA4Njk3OTk0MDc5NDUyNzFlKzAgYXQgaW5kZXggb2Yg
Mjc5LgotCVsyNzldCS01LjEwNDg1MjA5NTI0NjMxNTBlLTIJLTEuMjQ5MDUyMzk3OTA2NzgwMmUt
MgkzLjg1NTc5OTY5NzMzOTUzNDhlLTIJMy4wODY5Nzk5NDA3OTQ1MjcxZSswCTAuMDAwMDAwMDAw
MDAwMDAwMGUrMAotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBY
IE1vZHVsYXRpb246IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1
ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW1Rlc3QgNV0gMiBvdXQgb2YgNSBhc3NlcnRpb25z
IHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwg
IyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMiBvdXQgb2YgNiB0YXNrcyB3ZXJlIGZhaWxl
ZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgTW9kdWxhdGlv
bjogT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBlcXVhbHMgWzAsLTAuMTY3OTM4MzA2OTI3
NjgwOTcsLTAuMzMxMTA2MzA1MTIyMzc1NSwtMC40ODQ4NjkyNDE3MTQ0Nzc1NCwtMC42MjQ4NTk1
MTE4NTIyNjQ0LC0wLjc0NzEwMDU5MTY1OTU0NTksLTAuODQ4MTIwMzMxNzY0MjIxMiwtMC45MjUw
NDkzNjQ1NjY4MDMsLTAuOTc1NzAyMjI2MTYxOTU2OCwtMC45OTg2NDk0Nzc5NTg2NzkyLC0wLjk5
MzI0MTAxMjA5NjQwNSwtMC45NTk1OTM0NzQ4NjQ5NTk3LC0wLjg5ODU5MDY4MzkzNzA3MjgsLTAu
ODExODU5MTMwODU5Mzc1LC0wLjcwMTc4NzQ3MTc3MTI0MDIsLTAuNTcxMjM1NjU2NzM4MjgxMi4u
Ll0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQi
OjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgTW9kdWxhdGlvbjogT3V0cHV0IGZy
b20gZnJlcXVlbmN5IHNldHRlciBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyB0cnVl
LiAKK1BBU1MgPCBbVGVzdCA1XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA1IGFzc2Vy
dGlvbnMpIAorRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiA2IHRh
c2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407682</attachid>
            <date>2020-09-01 08:42:39 -0700</date>
            <delta_ts>2020-09-01 08:54:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216027-20200901084238.patch</filename>
            <type>text/plain</type>
            <size>92498</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2Mzc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmEzYTczNThmNmJhMWU3
MzM3NjYzYTY1OTEzYTY1OTgzZmYxMmU0Zi4uMzRhNDU5ODU2Yjg3OGVjZDVlZDNlOWMwMzNlMWY5
ZTc0ZDA5Y2VjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIwLTA4LTMxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHByb3BlciBrLXJhdGUg
YXV0b21hdGlvbiBzdXBwb3J0IGZvciBCaXF1YWRGaWx0ZXJOb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYwMjcKKworICAgICAgICBSZXZpZXdl
ZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEFkZCBwcm9wZXIgay1yYXRlIGF1dG9tYXRp
b24gc3VwcG9ydCBmb3IgQmlxdWFkRmlsdGVyTm9kZS4gVGhpcyBwYXRjaCBpcworICAgICAgICBi
YXNlZCBvbiBDaHJvbWl1bSdzIGltcGxlbWVudGF0aW9uLgorCisgICAgICAgIE5vIG5ldyB0ZXN0
cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0JpcXVhZERTUEtlcm5lbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpoYXNDb25zdGFudFZh
bHVlcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnVwZGF0ZUNvZWZmaWNp
ZW50c0lmTmVjZXNzYXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6dXBk
YXRlQ29lZmZpY2llbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6cHJv
Y2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJl
c3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6dGFpbFRpbWUgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkRFNQS2VybmVsOjp1cGRhdGVUYWlsVGltZSk6
CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuaDoKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpCaXF1YWRQcm9jZXNzb3I6OmNoZWNrRm9yRGlydHlDb2VmZmljaWVudHMpOgorICAgICAgICAo
V2ViQ29yZTo6QmlxdWFkUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAg
ICogTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9CaXF1YWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpCaXF1YWQpOgor
ICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpwcm9jZXNzKToKKyAgICAgICAgKFdlYkNvcmU6OkJp
cXVhZDo6cHJvY2Vzc0Zhc3QpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpyZXNldCk6Cisg
ICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OnNldExvd3Bhc3NQYXJhbXMpOgorICAgICAgICAoV2Vi
Q29yZTo6QmlxdWFkOjpzZXRIaWdocGFzc1BhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1
YWQ6OnNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFk
OjpzZXRMb3dTaGVsZlBhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OnNldEhpZ2hT
aGVsZlBhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OnNldFBlYWtpbmdQYXJhbXMp
OgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRBbGxwYXNzUGFyYW1zKToKKyAgICAgICAg
KFdlYkNvcmU6OkJpcXVhZDo6c2V0Tm90Y2hQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6Qmlx
dWFkOjpzZXRCYW5kcGFzc1BhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OmdldEZy
ZXF1ZW5jeVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OnJlcGVhdGVkUm9vdFJlc3BvbnNl
KToKKyAgICAgICAgKFdlYkNvcmU6OnJvb3RGaW5kZXIpOgorICAgICAgICAoV2ViQ29yZTo6Qmlx
dWFkOjp0YWlsRnJhbWUpOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL0JpcXVhZC5oOgorCiAy
MDIwLTA4LTMxICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAg
ICAgIEF2b2lkIGNvbXB1dGluZyBtZXRhZGF0YSBmb3IgaWRlbXBvdGVudCB0ZXh0IGF1dG9zaXpp
bmcgb24gbWFjT1MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
QmlxdWFkRFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlx
dWFkRFNQS2VybmVsLmNwcAppbmRleCAxNjlhYTY1YWUzZTM4NWY0YmI5ODQwOGQ0ZWY0ODIyMmQw
MDEzYjAyLi5jMDBlMWRjYjMxZmQyYTlkMGM5MmQ1ZjdmNTg2NDI5ODk0NmQxMGQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZERTUEtlcm5lbC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuY3Bw
CkBAIC00MSw3OCArNDEsMTA5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIHNldHRpbmdzIG9m
IHRoZSBCaXF1YWQuCiBzdGF0aWMgY29uc3QgZG91YmxlIE1heEJpcXVhZERlbGF5VGltZSA9IDAu
MjsKIAotdm9pZCBCaXF1YWREU1BLZXJuZWw6OnVwZGF0ZUNvZWZmaWNpZW50c0lmTmVjZXNzYXJ5
KGJvb2wgdXNlU21vb3RoaW5nLCBib29sIGZvcmNlVXBkYXRlKQorc3RhdGljIGJvb2wgaGFzQ29u
c3RhbnRWYWx1ZXMoZmxvYXQqIHZhbHVlcywgaW50IGZyYW1lc1RvUHJvY2VzcykKIHsKLSAgICBp
ZiAoZm9yY2VVcGRhdGUgfHwgYmlxdWFkUHJvY2Vzc29yKCktPmZpbHRlckNvZWZmaWNpZW50c0Rp
cnR5KCkpIHsKLSAgICAgICAgZG91YmxlIHZhbHVlMTsKLSAgICAgICAgZG91YmxlIHZhbHVlMjsK
LSAgICAgICAgZG91YmxlIGdhaW47Ci0gICAgICAgIGRvdWJsZSBkZXR1bmU7IC8vIGluIENlbnRz
Ci0KLSAgICAgICAgYm9vbCBzaG91bGRVc2VBUmF0ZSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJh
bWV0ZXIxKCkuYXV0b21hdGlvblJhdGUoKSA9PSBBdXRvbWF0aW9uUmF0ZTo6QVJhdGUKLSAgICAg
ICAgICAgIHx8IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIyKCkuYXV0b21hdGlvblJhdGUo
KSA9PSBBdXRvbWF0aW9uUmF0ZTo6QVJhdGUKLSAgICAgICAgICAgIHx8IGJpcXVhZFByb2Nlc3Nv
cigpLT5wYXJhbWV0ZXIzKCkuYXV0b21hdGlvblJhdGUoKSA9PSBBdXRvbWF0aW9uUmF0ZTo6QVJh
dGUKLSAgICAgICAgICAgIHx8IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXI0KCkuYXV0b21h
dGlvblJhdGUoKSA9PSBBdXRvbWF0aW9uUmF0ZTo6QVJhdGU7Ci0gICAgICAgIGlmIChiaXF1YWRQ
cm9jZXNzb3IoKS0+aGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMoKSAmJiBzaG91bGRVc2VBUmF0ZSkg
ewotICAgICAgICAgICAgdmFsdWUxID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjEoKS5m
aW5hbFZhbHVlKCk7Ci0gICAgICAgICAgICB2YWx1ZTIgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFy
YW1ldGVyMigpLmZpbmFsVmFsdWUoKTsKLSAgICAgICAgICAgIGdhaW4gPSBiaXF1YWRQcm9jZXNz
b3IoKS0+cGFyYW1ldGVyMygpLmZpbmFsVmFsdWUoKTsKLSAgICAgICAgICAgIGRldHVuZSA9IGJp
cXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXI0KCkuZmluYWxWYWx1ZSgpOwotICAgICAgICB9IGVs
c2UgaWYgKHVzZVNtb290aGluZykgewotICAgICAgICAgICAgdmFsdWUxID0gYmlxdWFkUHJvY2Vz
c29yKCktPnBhcmFtZXRlcjEoKS5zbW9vdGhlZFZhbHVlKCk7Ci0gICAgICAgICAgICB2YWx1ZTIg
PSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMigpLnNtb290aGVkVmFsdWUoKTsKLSAgICAg
ICAgICAgIGdhaW4gPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMygpLnNtb290aGVkVmFs
dWUoKTsKLSAgICAgICAgICAgIGRldHVuZSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXI0
KCkuc21vb3RoZWRWYWx1ZSgpOworICAgIC8vIEZJWE1FOiBVc2UgU0lNRCB0byBvcHRpbWl6ZSB0
aGlzLiBUaGlzIHdvdWxkIHNwZWVkIHVwIHByb2Nlc3NpbmcgYnkgYSBmYWN0b3Igb2YgNAorICAg
IC8vIGJlY2F1c2Ugd2UgY2FuIHByb2Nlc3MgNCBmbG9hdHMgYXQgYSB0aW1lLgorICAgIGZsb2F0
IHZhbHVlID0gdmFsdWVzWzBdOworICAgIGZvciAoaW50IGsgPSAxOyBrIDwgZnJhbWVzVG9Qcm9j
ZXNzOyArK2spIHsKKyAgICAgICAgaWYgKHZhbHVlc1trXSAhPSB2YWx1ZSkKKyAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgcmV0dXJuIHRydWU7Cit9CisKK3ZvaWQgQmlxdWFk
RFNQS2VybmVsOjp1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2FyeShzaXplX3QgZnJhbWVzVG9Q
cm9jZXNzKQoreworICAgIGlmIChiaXF1YWRQcm9jZXNzb3IoKS0+ZmlsdGVyQ29lZmZpY2llbnRz
RGlydHkoKSkgeworICAgICAgICBpZiAoYmlxdWFkUHJvY2Vzc29yKCktPmhhc1NhbXBsZUFjY3Vy
YXRlVmFsdWVzKCkgJiYgYmlxdWFkUHJvY2Vzc29yKCktPnNob3VsZFVzZUFSYXRlKCkpIHsKKyAg
ICAgICAgICAgIGZsb2F0IGN1dG9mZkZyZXF1ZW5jeVtBdWRpb05vZGU6OlByb2Nlc3NpbmdTaXpl
SW5GcmFtZXNdOworICAgICAgICAgICAgZmxvYXQgcVtBdWRpb05vZGU6OlByb2Nlc3NpbmdTaXpl
SW5GcmFtZXNdOworICAgICAgICAgICAgZmxvYXQgZ2FpbltBdWRpb05vZGU6OlByb2Nlc3NpbmdT
aXplSW5GcmFtZXNdOworICAgICAgICAgICAgZmxvYXQgZGV0dW5lW0F1ZGlvTm9kZTo6UHJvY2Vz
c2luZ1NpemVJbkZyYW1lc107IC8vIGluIENlbnRzCisKKyAgICAgICAgICAgIEFTU0VSVChmcmFt
ZXNUb1Byb2Nlc3MgPD0gQXVkaW9Ob2RlOjpQcm9jZXNzaW5nU2l6ZUluRnJhbWVzKTsKKworICAg
ICAgICAgICAgYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjEoKS5jYWxjdWxhdGVTYW1wbGVB
Y2N1cmF0ZVZhbHVlcyhjdXRvZmZGcmVxdWVuY3ksIGZyYW1lc1RvUHJvY2Vzcyk7CisgICAgICAg
ICAgICBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMigpLmNhbGN1bGF0ZVNhbXBsZUFjY3Vy
YXRlVmFsdWVzKHEsIGZyYW1lc1RvUHJvY2Vzcyk7CisgICAgICAgICAgICBiaXF1YWRQcm9jZXNz
b3IoKS0+cGFyYW1ldGVyMygpLmNhbGN1bGF0ZVNhbXBsZUFjY3VyYXRlVmFsdWVzKGdhaW4sIGZy
YW1lc1RvUHJvY2Vzcyk7CisgICAgICAgICAgICBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVy
NCgpLmNhbGN1bGF0ZVNhbXBsZUFjY3VyYXRlVmFsdWVzKGRldHVuZSwgZnJhbWVzVG9Qcm9jZXNz
KTsKKworICAgICAgICAgICAgLy8gSWYgYWxsIHRoZSB2YWx1ZXMgYXJlIGFjdHVhbGx5IGNvbnN0
YW50IGZvciB0aGlzIHJlbmRlciAob3IgdGhlCisgICAgICAgICAgICAvLyBhdXRvbWF0aW9uIHJh
dGUgaXMgImstcmF0ZSIgZm9yIGFsbCBvZiB0aGUgQXVkaW9QYXJhbXMpLCB3ZSBkb24ndCBuZWVk
CisgICAgICAgICAgICAvLyB0byBjb21wdXRlIGZpbHRlciBjb2VmZmljaWVudHMgZm9yIGVhY2gg
ZnJhbWUgc2luY2UgdGhleSB3b3VsZCBiZSB0aGUKKyAgICAgICAgICAgIC8vIHNhbWUgYXMgdGhl
IGZpcnN0LgorICAgICAgICAgICAgYm9vbCBpc0NvbnN0YW50ID0gaGFzQ29uc3RhbnRWYWx1ZXMo
Y3V0b2ZmRnJlcXVlbmN5LCBmcmFtZXNUb1Byb2Nlc3MpCisgICAgICAgICAgICAgICAgJiYgaGFz
Q29uc3RhbnRWYWx1ZXMocSwgZnJhbWVzVG9Qcm9jZXNzKQorICAgICAgICAgICAgICAgICYmIGhh
c0NvbnN0YW50VmFsdWVzKGdhaW4sIGZyYW1lc1RvUHJvY2VzcykKKyAgICAgICAgICAgICAgICAm
JiBoYXNDb25zdGFudFZhbHVlcyhkZXR1bmUsIGZyYW1lc1RvUHJvY2Vzcyk7CisKKyAgICAgICAg
ICAgIHVwZGF0ZUNvZWZmaWNpZW50cyhpc0NvbnN0YW50ID8gMSA6IGZyYW1lc1RvUHJvY2Vzcywg
Y3V0b2ZmRnJlcXVlbmN5LCBxLCBnYWluLCBkZXR1bmUpOwogICAgICAgICB9IGVsc2UgewotICAg
ICAgICAgICAgdmFsdWUxID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjEoKS52YWx1ZSgp
OwotICAgICAgICAgICAgdmFsdWUyID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjIoKS52
YWx1ZSgpOwotICAgICAgICAgICAgZ2FpbiA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIz
KCkudmFsdWUoKTsKLSAgICAgICAgICAgIGRldHVuZSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJh
bWV0ZXI0KCkudmFsdWUoKTsKKyAgICAgICAgICAgIGZsb2F0IGN1dG9mZkZyZXF1ZW5jeSA9IGJp
cXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIxKCkuZmluYWxWYWx1ZSgpOworICAgICAgICAgICAg
ZmxvYXQgcSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIyKCkuZmluYWxWYWx1ZSgpOwor
ICAgICAgICAgICAgZmxvYXQgZ2FpbiA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIzKCku
ZmluYWxWYWx1ZSgpOworICAgICAgICAgICAgZmxvYXQgZGV0dW5lID0gYmlxdWFkUHJvY2Vzc29y
KCktPnBhcmFtZXRlcjQoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICB1cGRhdGVDb2VmZmlj
aWVudHMoMSwgJmN1dG9mZkZyZXF1ZW5jeSwgJnEsICZnYWluLCAmZGV0dW5lKTsKICAgICAgICAg
fQorICAgIH0KK30KKwordm9pZCBCaXF1YWREU1BLZXJuZWw6OnVwZGF0ZUNvZWZmaWNpZW50cyhz
aXplX3QgbnVtYmVyT2ZGcmFtZXMsIGNvbnN0IGZsb2F0KiBjdXRvZmZGcmVxdWVuY3ksIGNvbnN0
IGZsb2F0KiBxLCBjb25zdCBmbG9hdCogZ2FpbiwgY29uc3QgZmxvYXQqIGRldHVuZSkKK3sKKyAg
ICAvLyBDb252ZXJ0IGZyb20gSGVydHogdG8gbm9ybWFsaXplZCBmcmVxdWVuY3kgMCAtPiAxLgor
ICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlxdWlzdCgpOworCisgICAgbV9iaXF1YWQuc2V0
SGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMobnVtYmVyT2ZGcmFtZXMgPiAxKTsKIAotICAgICAgICAv
LyBDb252ZXJ0IGZyb20gSGVydHogdG8gbm9ybWFsaXplZCBmcmVxdWVuY3kgMCAtPiAxLgotICAg
ICAgICBkb3VibGUgbnlxdWlzdCA9IHRoaXMtPm55cXVpc3QoKTsKLSAgICAgICAgZG91YmxlIG5v
cm1hbGl6ZWRGcmVxdWVuY3kgPSB2YWx1ZTEgLyBueXF1aXN0OworICAgIGZvciAoc2l6ZV90IGsg
PSAwOyBrIDwgbnVtYmVyT2ZGcmFtZXM7ICsraykgeworICAgICAgICBkb3VibGUgbm9ybWFsaXpl
ZEZyZXF1ZW5jeSA9IGN1dG9mZkZyZXF1ZW5jeVtrXSAvIG55cXVpc3Q7CiAKICAgICAgICAgLy8g
T2Zmc2V0IGZyZXF1ZW5jeSBieSBkZXR1bmUuCi0gICAgICAgIGlmIChkZXR1bmUpCi0gICAgICAg
ICAgICBub3JtYWxpemVkRnJlcXVlbmN5ICo9IHBvdygyLCBkZXR1bmUgLyAxMjAwKTsKKyAgICAg
ICAgaWYgKGRldHVuZVtrXSkgeworICAgICAgICAgICAgLy8gRGV0dW5lIG11bHRpcGxpZXMgdGhl
IGZyZXF1ZW5jeSBieSAyXihkZXR1bmVba10gLyAxMjAwKS4KKyAgICAgICAgICAgIG5vcm1hbGl6
ZWRGcmVxdWVuY3kgKj0gc3RkOjpleHAyKGRldHVuZVtrXSAvIDEyMDApOworICAgICAgICB9CiAK
LSAgICAgICAgLy8gQ29uZmlndXJlIHRoZSBiaXF1YWQgd2l0aCB0aGUgbmV3IGZpbHRlciBwYXJh
bWV0ZXJzIGZvciB0aGUgYXBwcm9wcmlhdGUgdHlwZSBvZiBmaWx0ZXIuCisgICAgICAgIC8vIENv
bmZpZ3VyZSB0aGUgYmlxdWFkIHdpdGggdGhlIG5ldyBmaWx0ZXIgcGFyYW1ldGVycyBmb3IgdGhl
IGFwcHJvcHJpYXRlCisgICAgICAgIC8vIHR5cGUgb2YgZmlsdGVyLgogICAgICAgICBzd2l0Y2gg
KGJpcXVhZFByb2Nlc3NvcigpLT50eXBlKCkpIHsKICAgICAgICAgY2FzZSBCaXF1YWRGaWx0ZXJU
eXBlOjpMb3dwYXNzOgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0TG93cGFzc1BhcmFtcyhub3Jt
YWxpemVkRnJlcXVlbmN5LCB2YWx1ZTIpOworICAgICAgICAgICAgbV9iaXF1YWQuc2V0TG93cGFz
c1BhcmFtcyhrLCBub3JtYWxpemVkRnJlcXVlbmN5LCBxW2tdKTsKICAgICAgICAgICAgIGJyZWFr
OwogCiAgICAgICAgIGNhc2UgQmlxdWFkRmlsdGVyVHlwZTo6SGlnaHBhc3M6Ci0gICAgICAgICAg
ICBtX2JpcXVhZC5zZXRIaWdocGFzc1BhcmFtcyhub3JtYWxpemVkRnJlcXVlbmN5LCB2YWx1ZTIp
OworICAgICAgICAgICAgbV9iaXF1YWQuc2V0SGlnaHBhc3NQYXJhbXMoaywgbm9ybWFsaXplZEZy
ZXF1ZW5jeSwgcVtrXSk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIEJpcXVh
ZEZpbHRlclR5cGU6OkJhbmRwYXNzOgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0QmFuZHBhc3NQ
YXJhbXMobm9ybWFsaXplZEZyZXF1ZW5jeSwgdmFsdWUyKTsKKyAgICAgICAgICAgIG1fYmlxdWFk
LnNldEJhbmRwYXNzUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHFba10pOwogICAgICAg
ICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBCaXF1YWRGaWx0ZXJUeXBlOjpMb3dzaGVsZjoK
LSAgICAgICAgICAgIG1fYmlxdWFkLnNldExvd1NoZWxmUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVu
Y3ksIGdhaW4pOworICAgICAgICAgICAgbV9iaXF1YWQuc2V0TG93U2hlbGZQYXJhbXMoaywgbm9y
bWFsaXplZEZyZXF1ZW5jeSwgZ2FpbltrXSk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAg
ICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6OkhpZ2hzaGVsZjoKLSAgICAgICAgICAgIG1fYmlxdWFk
LnNldEhpZ2hTaGVsZlBhcmFtcyhub3JtYWxpemVkRnJlcXVlbmN5LCBnYWluKTsKKyAgICAgICAg
ICAgIG1fYmlxdWFkLnNldEhpZ2hTaGVsZlBhcmFtcyhrLCBub3JtYWxpemVkRnJlcXVlbmN5LCBn
YWluW2tdKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgQmlxdWFkRmlsdGVy
VHlwZTo6UGVha2luZzoKLSAgICAgICAgICAgIG1fYmlxdWFkLnNldFBlYWtpbmdQYXJhbXMobm9y
bWFsaXplZEZyZXF1ZW5jeSwgdmFsdWUyLCBnYWluKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNl
dFBlYWtpbmdQYXJhbXMoaywgbm9ybWFsaXplZEZyZXF1ZW5jeSwgcVtrXSwgZ2FpbltrXSk7CiAg
ICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6Ok5vdGNo
OgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0Tm90Y2hQYXJhbXMobm9ybWFsaXplZEZyZXF1ZW5j
eSwgdmFsdWUyKTsKKyAgICAgICAgICAgIG1fYmlxdWFkLnNldE5vdGNoUGFyYW1zKGssIG5vcm1h
bGl6ZWRGcmVxdWVuY3ksIHFba10pOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2Fz
ZSBCaXF1YWRGaWx0ZXJUeXBlOjpBbGxwYXNzOgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0QWxs
cGFzc1BhcmFtcyhub3JtYWxpemVkRnJlcXVlbmN5LCB2YWx1ZTIpOworICAgICAgICAgICAgbV9i
aXF1YWQuc2V0QWxscGFzc1BhcmFtcyhrLCBub3JtYWxpemVkRnJlcXVlbmN5LCBxW2tdKTsKICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgfQorCisgICAgQVNTRVJUKG51bWJlck9m
RnJhbWVzKTsKKyAgICB1cGRhdGVUYWlsVGltZShudW1iZXJPZkZyYW1lcyAtIDEpOwogfQogCiB2
b2lkIEJpcXVhZERTUEtlcm5lbDo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9hdCog
ZGVzdGluYXRpb24sIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCkBAIC0xMjMsMTUgKzE1NCwxMiBA
QCB2b2lkIEJpcXVhZERTUEtlcm5lbDo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlLCBmbG9h
dCogZGVzdGluYXRpb24sIHNpemVfdCBmcgogICAgIC8vIEZJWE1FOiBhcyBhbiBvcHRpbWl6YXRp
b24sIGltcGxlbWVudCBhIHdheSB0aGF0IGEgQmlxdWFkIG9iamVjdCBjYW4gc2ltcGx5IGNvcHkg
aXRzIGludGVybmFsIGZpbHRlciBjb2VmZmljaWVudHMgZnJvbSBhbm90aGVyIEJpcXVhZCBvYmpl
Y3QuCiAgICAgLy8gVGhlbiByZS1mYWN0b3IgdGhpcyBjb2RlIHRvIG9ubHkgcnVuIGZvciB0aGUg
Zmlyc3QgQmlxdWFkRFNQS2VybmVsIG9mIGVhY2ggQmlxdWFkUHJvY2Vzc29yLgogCi0gICAgdXBk
YXRlQ29lZmZpY2llbnRzSWZOZWNlc3NhcnkodHJ1ZSwgZmFsc2UpOworICAgIHVwZGF0ZUNvZWZm
aWNpZW50c0lmTmVjZXNzYXJ5KGZyYW1lc1RvUHJvY2Vzcyk7CiAKICAgICBtX2JpcXVhZC5wcm9j
ZXNzKHNvdXJjZSwgZGVzdGluYXRpb24sIGZyYW1lc1RvUHJvY2Vzcyk7CiB9CiAKLXZvaWQgQmlx
dWFkRFNQS2VybmVsOjpnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVzLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGZsb2F0KiBmcmVx
dWVuY3lIeiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9h
dCogbWFnUmVzcG9uc2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCit2b2lkIEJpcXVhZERTUEtlcm5lbDo6Z2V0RnJlcXVl
bmN5UmVzcG9uc2UodW5zaWduZWQgbkZyZXF1ZW5jaWVzLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5
SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCiB7CiAgICAgYm9v
bCBpc0dvb2QgPSBuRnJlcXVlbmNpZXMgPiAwICYmIGZyZXF1ZW5jeUh6ICYmIG1hZ1Jlc3BvbnNl
ICYmIHBoYXNlUmVzcG9uc2U7CiAgICAgQVNTRVJUKGlzR29vZCk7CkBAIC0xNDQsMjIgKzE3Miwx
NSBAQCB2b2lkIEJpcXVhZERTUEtlcm5lbDo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoaW50IG5GcmVx
dWVuY2llcywKIAogICAgIC8vIENvbnZlcnQgZnJvbSBmcmVxdWVuY3kgaW4gSHogdG8gbm9ybWFs
aXplZCBmcmVxdWVuY3kgKDAgLT4gMSksCiAgICAgLy8gd2l0aCAxIGVxdWFsIHRvIHRoZSBOeXF1
aXN0IGZyZXF1ZW5jeS4KLSAgICBmb3IgKGludCBrID0gMDsgayA8IG5GcmVxdWVuY2llczsgKytr
KQotICAgICAgICBmcmVxdWVuY3lba10gPSBuYXJyb3dQcmVjaXNpb25Ub0Zsb2F0KGZyZXF1ZW5j
eUh6W2tdIC8gbnlxdWlzdCk7Ci0KLSAgICAvLyBXZSB3YW50IHRvIGdldCB0aGUgZmluYWwgdmFs
dWVzIG9mIHRoZSBjb2VmZmljaWVudHMgYW5kIGNvbXB1dGUKLSAgICAvLyB0aGUgcmVzcG9uc2Ug
ZnJvbSB0aGF0IGluc3RlYWQgb2Ygc29tZSBpbnRlcm1lZGlhdGUgc21vb3RoZWQKLSAgICAvLyBz
ZXQuIEZvcmNlZnVsbHkgdXBkYXRlIHRoZSBjb2VmZmljaWVudHMgZXZlbiBpZiB0aGV5IGFyZSBu
b3QKLSAgICAvLyBkaXJ0eS4KLQotICAgIHVwZGF0ZUNvZWZmaWNpZW50c0lmTmVjZXNzYXJ5KGZh
bHNlLCB0cnVlKTsKKyAgICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbkZyZXF1ZW5jaWVzOyAr
K2spCisgICAgICAgIGZyZXF1ZW5jeVtrXSA9IGZyZXF1ZW5jeUh6W2tdIC8gbnlxdWlzdDsKIAog
ICAgIG1fYmlxdWFkLmdldEZyZXF1ZW5jeVJlc3BvbnNlKG5GcmVxdWVuY2llcywgZnJlcXVlbmN5
LmRhdGEoKSwgbWFnUmVzcG9uc2UsIHBoYXNlUmVzcG9uc2UpOwogfQogCiBkb3VibGUgQmlxdWFk
RFNQS2VybmVsOjp0YWlsVGltZSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIE1heEJpcXVhZERlbGF5
VGltZTsKKyAgICByZXR1cm4gbV90YWlsVGltZTsKIH0KIAogZG91YmxlIEJpcXVhZERTUEtlcm5l
bDo6bGF0ZW5jeVRpbWUoKSBjb25zdApAQCAtMTY3LDYgKzE4OCwyMSBAQCBkb3VibGUgQmlxdWFk
RFNQS2VybmVsOjpsYXRlbmN5VGltZSgpIGNvbnN0CiAgICAgcmV0dXJuIDA7CiB9CiAKK3ZvaWQg
QmlxdWFkRFNQS2VybmVsOjp1cGRhdGVUYWlsVGltZShzaXplX3QgY29lZkluZGV4KQoreworICAg
IC8vIEEgcmVhc29uYWJsZSB1cHBlciBsaW1pdCBmb3IgdGhlIHRhaWwgdGltZS4gV2hpbGUgaXQn
cyBlYXN5IHRvCisgICAgLy8gY3JlYXRlIGJpcXVhZCBmaWx0ZXJzIHdob3NlIHRhaWwgdGltZSBj
YW4gYmUgbXVjaCBsYXJnZXIgdGhhbgorICAgIC8vIHRoaXMsIGxpbWl0IHRoZSBtYXhpbXVtIHRv
IHRoaXMgdmFsdWUgc28gdGhhdCB3ZSBkb24ndCBrZWVwIHN1Y2gKKyAgICAvLyBub2RlcyBhbGl2
ZSAiZm9yZXZlciIuCisgICAgLy8gVE9ETzogV2hhdCBpcyBhIHJlYXNvbmFibGUgdXBwZXIgbGlt
aXQ/CisgICAgY29uc3RleHByIGRvdWJsZSBtYXhUYWlsVGltZSA9IDMwOworCisgICAgZG91Ymxl
IHNhbXBsZVJhdGUgPSB0aGlzLT5zYW1wbGVSYXRlKCk7CisgICAgZG91YmxlIHRhaWwgPSBtX2Jp
cXVhZC50YWlsRnJhbWUoY29lZkluZGV4LCBtYXhUYWlsVGltZSAqIHNhbXBsZVJhdGUpIC8gc2Ft
cGxlUmF0ZTsKKworICAgIG1fdGFpbFRpbWUgPSBzdGQ6OmNsYW1wKHRhaWwsIDAuMCwgbWF4VGFp
bFRpbWUpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUo
V0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9C
aXF1YWREU1BLZXJuZWwuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFk
RFNQS2VybmVsLmgKaW5kZXggN2FlMTYxYTE2MmMzM2NhMjIwZmU2Y2UyMTU3ZGJkMTVhODc0MzI5
Ni4uYTA2MzYyMjZjYTY1NTAzMjRmMmFmZTBkNzViMjIyOWQ5ZDVjYTNlZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZERTUEtlcm5lbC5oCkBAIC00Nywx
NCArNDcsMTMgQEAgcHVibGljOgogCiAgICAgLy8gR2V0IHRoZSBtYWduaXR1ZGUgYW5kIHBoYXNl
IHJlc3BvbnNlIG9mIHRoZSBmaWx0ZXIgYXQgdGhlIGdpdmVuCiAgICAgLy8gc2V0IG9mIGZyZXF1
ZW5jaWVzIChpbiBIeikuIFRoZSBwaGFzZSByZXNwb25zZSBpcyBpbiByYWRpYW5zLgotICAgIHZv
aWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UoaW50IG5GcmVxdWVuY2llcywKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3lIeiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZsb2F0KiBtYWdSZXNwb25zZSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKKyAgICB2b2lkIGdldEZyZXF1ZW5jeVJl
c3BvbnNlKHVuc2lnbmVkIG5GcmVxdWVuY2llcywgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBm
bG9hdCogbWFnUmVzcG9uc2UsIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKIAogICAgIGRvdWJsZSB0
YWlsVGltZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIGRvdWJsZSBsYXRlbmN5VGltZSgpIGNvbnN0
IG92ZXJyaWRlOwogCisgICAgdm9pZCB1cGRhdGVDb2VmZmljaWVudHMoc2l6ZV90IG51bWJlck9m
RnJhbWVzLCBjb25zdCBmbG9hdCogY3V0b2ZmRnJlcXVlbmN5LCBjb25zdCBmbG9hdCogcSwgY29u
c3QgZmxvYXQqIGdhaW4sIGNvbnN0IGZsb2F0KiBkZXR1bmUpOworCiBwcml2YXRlOgogICAgIEJp
cXVhZCBtX2JpcXVhZDsKICAgICBCaXF1YWRQcm9jZXNzb3IqIGJpcXVhZFByb2Nlc3NvcigpIHsg
cmV0dXJuIHN0YXRpY19jYXN0PEJpcXVhZFByb2Nlc3Nvcio+KHByb2Nlc3NvcigpKTsgfQpAQCAt
NjYsNyArNjUsMTAgQEAgcHJpdmF0ZToKICAgICAvLyB1c2VkLiBJZiB8Zm9yY2VVcGRhdGV8IGlz
IHRydWUsIHdlIHVwZGF0ZSB0aGUgY29lZmZpY2llbnRzIGV2ZW4KICAgICAvLyBpZiB0aGV5IGFy
ZSBub3QgZGlydHkuIChVc2VkIHdoZW4gY29tcHV0aW5nIHRoZSBmcmVxdWVuY3kKICAgICAvLyBy
ZXNwb25zZS4pCi0gICAgdm9pZCB1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2FyeShib29sIHVz
ZVNtb290aGluZywgYm9vbCBmb3JjZVVwZGF0ZSk7CisgICAgdm9pZCB1cGRhdGVDb2VmZmljaWVu
dHNJZk5lY2Vzc2FyeShzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICB2b2lkIHVwZGF0ZVRh
aWxUaW1lKHNpemVfdCBjb2VmSW5kZXgpOworCisgICAgZG91YmxlIG1fdGFpbFRpbWUgeyBzdGQ6
Om51bWVyaWNfbGltaXRzPGRvdWJsZT46OmluZmluaXR5KCkgfTsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
QmlxdWFkRmlsdGVyTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jp
cXVhZEZpbHRlck5vZGUuY3BwCmluZGV4IDFlN2U4ZjBlNzIyMzZlYTUwZGVmOWQzZTY3ZDBkZWYw
ZjliN2FiMWMuLjNiZTdhOTIxMmY3MjA4ZjY5Nzk2YTQ1ZTZjZmYxOTJlMGM4YjM0YzEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFkRmlsdGVyTm9kZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRGaWx0ZXJOb2Rl
LmNwcApAQCAtNzYsNyArNzYsNyBAQCB2b2lkIEJpcXVhZEZpbHRlck5vZGU6OnNldFR5cGUoQmlx
dWFkRmlsdGVyVHlwZSB0eXBlKQogCiBFeGNlcHRpb25Pcjx2b2lkPiBCaXF1YWRGaWx0ZXJOb2Rl
OjpnZXRGcmVxdWVuY3lSZXNwb25zZShjb25zdCBSZWY8RmxvYXQzMkFycmF5PiYgZnJlcXVlbmN5
SHosIGNvbnN0IFJlZjxGbG9hdDMyQXJyYXk+JiBtYWdSZXNwb25zZSwgY29uc3QgUmVmPEZsb2F0
MzJBcnJheT4mIHBoYXNlUmVzcG9uc2UpCiB7Ci0gICAgYXV0byBsZW5ndGggPSBmcmVxdWVuY3lI
ei0+bGVuZ3RoKCk7CisgICAgdW5zaWduZWQgbGVuZ3RoID0gZnJlcXVlbmN5SHotPmxlbmd0aCgp
OwogICAgIGlmIChtYWdSZXNwb25zZS0+bGVuZ3RoKCkgIT0gbGVuZ3RoIHx8IHBoYXNlUmVzcG9u
c2UtPmxlbmd0aCgpICE9IGxlbmd0aCkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFs
aWRTdGF0ZUVycm9yLCAiVGhlIGFycmF5cyBwYXNzZWQgYXMgYXJndW1lbnRzIG11c3QgaGF2ZSB0
aGUgc2FtZSBsZW5ndGgiIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vQmlxdWFkUHJvY2Vzc29yLmNwcAppbmRleCBkYzlkYTA3ZjM1NWYwNjNkY2I4NjI1YzBh
NTQxMjMyMDlkZTQ4MTFiLi43ODdjOTNkNjAxZDE3ODRjNWE3YzRmMjY0NTJiODRiZWM0NWNlYjhl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nl
c3Nvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9j
ZXNzb3IuY3BwCkBAIC02OCw2ICs2OCwxMSBAQCB2b2lkIEJpcXVhZFByb2Nlc3Nvcjo6Y2hlY2tG
b3JEaXJ0eUNvZWZmaWNpZW50cygpCiAgICAgaWYgKG1fcGFyYW1ldGVyMS0+aGFzU2FtcGxlQWNj
dXJhdGVWYWx1ZXMoKSB8fCBtX3BhcmFtZXRlcjItPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkg
fHwgbV9wYXJhbWV0ZXIzLT5oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpIHx8IG1fcGFyYW1ldGVy
NC0+aGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMoKSkgewogICAgICAgICBtX2ZpbHRlckNvZWZmaWNp
ZW50c0RpcnR5ID0gdHJ1ZTsKICAgICAgICAgbV9oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcyA9IHRy
dWU7CisKKyAgICAgICAgbV9zaG91bGRVc2VBUmF0ZSA9IG1fcGFyYW1ldGVyMS0+YXV0b21hdGlv
blJhdGUoKSA9PSBBdXRvbWF0aW9uUmF0ZTo6QVJhdGUKKyAgICAgICAgICAgIHx8IG1fcGFyYW1l
dGVyMi0+YXV0b21hdGlvblJhdGUoKSA9PSBBdXRvbWF0aW9uUmF0ZTo6QVJhdGUKKyAgICAgICAg
ICAgIHx8IG1fcGFyYW1ldGVyMy0+YXV0b21hdGlvblJhdGUoKSA9PSBBdXRvbWF0aW9uUmF0ZTo6
QVJhdGUKKyAgICAgICAgICAgIHx8IG1fcGFyYW1ldGVyNC0+YXV0b21hdGlvblJhdGUoKSA9PSBB
dXRvbWF0aW9uUmF0ZTo6QVJhdGU7CiAgICAgfSBlbHNlIHsKICAgICAgICAgaWYgKG1faGFzSnVz
dFJlc2V0KSB7CiAgICAgICAgICAgICAvLyBTbmFwIHRvIGV4YWN0IHZhbHVlcyBmaXJzdCB0aW1l
IGFmdGVyIHJlc2V0LCB0aGVuIHNtb290aCBmb3Igc3Vic2VxdWVudCBjaGFuZ2VzLgpAQCAtMTEx
LDcgKzExNiw3IEBAIHZvaWQgQmlxdWFkUHJvY2Vzc29yOjpzZXRUeXBlKEJpcXVhZEZpbHRlclR5
cGUgdHlwZSkKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lS
ZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVzLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0
KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpCit2b2lkIEJpcXVhZFByb2Nlc3Nv
cjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UodW5zaWduZWQgbkZyZXF1ZW5jaWVzLCBjb25zdCBmbG9h
dCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2Up
CiB7CiAgICAgLy8gQ29tcHV0ZSB0aGUgZnJlcXVlbmN5IHJlc3BvbnNlIG9uIGEgc2VwYXJhdGUg
dGVtcG9yYXJ5IGtlcm5lbAogICAgIC8vIHRvIGF2b2lkIGludGVyZmVyaW5nIHdpdGggdGhlIHBy
b2Nlc3NpbmcgcnVubmluZyBpbiB0aGUgYXVkaW8KQEAgLTExOSw2ICsxMjQsMTQgQEAgdm9pZCBC
aXF1YWRQcm9jZXNzb3I6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKGludCBuRnJlcXVlbmNpZXMsIGNv
bnN0IGZsb2F0KiBmcmVxdWUKICAgICAKICAgICBhdXRvIHJlc3BvbnNlS2VybmVsID0gbWFrZVVu
aXF1ZTxCaXF1YWREU1BLZXJuZWw+KHRoaXMpOwogCisgICAgLy8gR2V0IGEgY29weSBvZiB0aGUg
Y3VycmVudCBiaXF1YWQgZmlsdGVyIGNvZWZmaWNpZW50cyBzbyB3ZSBjYW4gdXBkYXRlCisgICAg
Ly8gfHJlc3BvbnNlS2VybmVsfCB3aXRoIHRoZXNlIHZhbHVlcy4KKyAgICBmbG9hdCBjdXRvZmZG
cmVxdWVuY3kgPSBwYXJhbWV0ZXIxKCkudmFsdWUoKTsKKyAgICBmbG9hdCBxID0gcGFyYW1ldGVy
MigpLnZhbHVlKCk7CisgICAgZmxvYXQgZ2FpbiA9IHBhcmFtZXRlcjMoKS52YWx1ZSgpOworICAg
IGZsb2F0IGRldHVuZSA9IHBhcmFtZXRlcjQoKS52YWx1ZSgpOworCisgICAgcmVzcG9uc2VLZXJu
ZWwtPnVwZGF0ZUNvZWZmaWNpZW50cygxLCAmY3V0b2ZmRnJlcXVlbmN5LCAmcSwgJmdhaW4sICZk
ZXR1bmUpOwogICAgIHJlc3BvbnNlS2VybmVsLT5nZXRGcmVxdWVuY3lSZXNwb25zZShuRnJlcXVl
bmNpZXMsIGZyZXF1ZW5jeUh6LCBtYWdSZXNwb25zZSwgcGhhc2VSZXNwb25zZSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29y
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5oCmlu
ZGV4IGRhY2NjMjU1ODFjZTQ3Y2M4ODE5NGI4ZDJkMmRjMTM2ZTdmNGY4NmIuLmFkYjBhNmE5ODEx
OWE3ZjhmMmEyMmEyODdiNWI2MWYxNWVmOGVlZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29yLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuaApAQCAtNTAsMTAgKzUwLDcgQEAgcHVi
bGljOgogCiAgICAgLy8gR2V0IHRoZSBtYWduaXR1ZGUgYW5kIHBoYXNlIHJlc3BvbnNlIG9mIHRo
ZSBmaWx0ZXIgYXQgdGhlIGdpdmVuCiAgICAgLy8gc2V0IG9mIGZyZXF1ZW5jaWVzIChpbiBIeiku
IFRoZSBwaGFzZSByZXNwb25zZSBpcyBpbiByYWRpYW5zLgotICAgIHZvaWQgZ2V0RnJlcXVlbmN5
UmVzcG9uc2UoaW50IG5GcmVxdWVuY2llcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGNvbnN0IGZsb2F0KiBmcmVxdWVuY3lIeiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZsb2F0KiBtYWdSZXNwb25zZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0
KiBwaGFzZVJlc3BvbnNlKTsKKyAgICB2b2lkIGdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVk
IG5GcmVxdWVuY2llcywgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LCBmbG9hdCogbWFnUmVzcG9u
c2UsIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKIAogICAgIHZvaWQgY2hlY2tGb3JEaXJ0eUNvZWZm
aWNpZW50cygpOwogICAgIApAQCAtNjgsNiArNjUsOCBAQCBwdWJsaWM6CiAgICAgQmlxdWFkRmls
dGVyVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAgICAgdm9pZCBzZXRUeXBl
KEJpcXVhZEZpbHRlclR5cGUpOwogCisgICAgYm9vbCBzaG91bGRVc2VBUmF0ZSgpIGNvbnN0IHsg
cmV0dXJuIG1fc2hvdWxkVXNlQVJhdGU7IH0KKwogcHJpdmF0ZToKICAgICBCaXF1YWRGaWx0ZXJU
eXBlIG1fdHlwZTsKIApAQCAtODEsNiArODAsOCBAQCBwcml2YXRlOgogCiAgICAgLy8gU2V0IHRv
IHRydWUgaWYgYW55IG9mIHRoZSBmaWx0ZXIgcGFyYW1ldGVycyBhcmUgc2FtcGxlLWFjY3VyYXRl
LgogICAgIGJvb2wgbV9oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlczsKKworICAgIGJvb2wgbV9zaG91
bGRVc2VBUmF0ZSB7IHRydWUgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuY3BwCmluZGV4IDE2ODZiNTZhNzY0NzVhN2Q2
MzA1YmI5MDgwMWZlZGVhOTQyYTk1NGIuLjgxYjFlYzVkYWMyOGUwOGMxZDI2YzA2MjE1YjcxZmFm
OGEyNTNhMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVh
ZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmNwcApAQCAt
NDUsNiArNDUsOCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NvbnN0IHNpemVfdCBCaXF1
YWQ6Ok1heEZyYW1lc1RvUHJvY2VzcyA9IDEyODsKKwogI2lmIFVTRShBQ0NFTEVSQVRFKQogY29u
c3QgaW50IGtCdWZmZXJTaXplID0gMTAyNDsKICNlbmRpZgpAQCAtNTcsOCArNTksMTYgQEAgQmlx
dWFkOjpCaXF1YWQoKQogICAgIG1fb3V0cHV0QnVmZmVyLmFsbG9jYXRlKGtCdWZmZXJTaXplICsg
Mik7CiAjZW5kaWYKIAorICAgIC8vIEFsbG9jYXRlIGVub3VnaCBzcGFjZSBmb3IgdGhlIGEtcmF0
ZSBmaWx0ZXIgY29lZmZpY2llbnRzIHRvIGhhbmRsZSBhCisgICAgLy8gcmVuZGVyaW5nIHF1YW50
dW0gb2YgMTI4IGZyYW1lcy4KKyAgICBtX2IwLmFsbG9jYXRlKE1heEZyYW1lc1RvUHJvY2Vzcyk7
CisgICAgbV9iMS5hbGxvY2F0ZShNYXhGcmFtZXNUb1Byb2Nlc3MpOworICAgIG1fYjIuYWxsb2Nh
dGUoTWF4RnJhbWVzVG9Qcm9jZXNzKTsKKyAgICBtX2ExLmFsbG9jYXRlKE1heEZyYW1lc1RvUHJv
Y2Vzcyk7CisgICAgbV9hMi5hbGxvY2F0ZShNYXhGcmFtZXNUb1Byb2Nlc3MpOworCiAgICAgLy8g
SW5pdGlhbGl6ZSBhcyBwYXNzLXRocnUgKHN0cmFpZ2h0LXdpcmUsIG5vIGZpbHRlciBlZmZlY3Qp
Ci0gICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygxLCAwLCAwLCAxLCAwLCAwKTsKKyAgICBz
ZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDAsIDEsIDAsIDAsIDEsIDAsIDApOwogCiAgICAgcmVz
ZXQoKTsgLy8gY2xlYXIgZmlsdGVyIG1lbW9yeQogfQpAQCAtNjcsMTMgKzc3LDgyIEBAIEJpcXVh
ZDo6fkJpcXVhZCgpID0gZGVmYXVsdDsKIAogdm9pZCBCaXF1YWQ6OnByb2Nlc3MoY29uc3QgZmxv
YXQqIHNvdXJjZVAsIGZsb2F0KiBkZXN0UCwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKIHsKKyAg
ICBpZiAoaGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMoKSkgeworICAgICAgICBzaXplX3QgbiA9IGZy
YW1lc1RvUHJvY2VzczsKKworICAgICAgICAvLyBDcmVhdGUgbG9jYWwgY29waWVzIG9mIG1lbWJl
ciB2YXJpYWJsZXMKKyAgICAgICAgZG91YmxlIHgxID0gbV94MTsKKyAgICAgICAgZG91YmxlIHgy
ID0gbV94MjsKKyAgICAgICAgZG91YmxlIHkxID0gbV95MTsKKyAgICAgICAgZG91YmxlIHkyID0g
bV95MjsKKworICAgICAgICBhdXRvKiBiMCA9IG1fYjAuZGF0YSgpOworICAgICAgICBhdXRvKiBi
MSA9IG1fYjEuZGF0YSgpOworICAgICAgICBhdXRvKiBiMiA9IG1fYjIuZGF0YSgpOworICAgICAg
ICBhdXRvKiBhMSA9IG1fYTEuZGF0YSgpOworICAgICAgICBhdXRvKiBhMiA9IG1fYTIuZGF0YSgp
OworCisgICAgICAgIGZvciAoc2l6ZV90IGsgPSAwOyBrIDwgbjsgKytrKSB7CisgICAgICAgICAg
ICAvLyBGSVhNRTogdGhpcyBjYW4gYmUgb3B0aW1pemVkIGJ5IHBpcGVsaW5pbmcgdGhlIG11bHRp
cGx5IGFkZHMuLi4KKyAgICAgICAgICAgIGZsb2F0IHggPSAqc291cmNlUCsrOworICAgICAgICAg
ICAgZmxvYXQgeSA9IGIwW2tdICogeCArIGIxW2tdICogeDEgKyBiMltrXSAqIHgyIC0gYTFba10g
KiB5MSAtIGEyW2tdICogeTI7CisKKyAgICAgICAgICAgICpkZXN0UCsrID0geTsKKworICAgICAg
ICAgICAgLy8gVXBkYXRlIHN0YXRlIHZhcmlhYmxlcworICAgICAgICAgICAgeDIgPSB4MTsKKyAg
ICAgICAgICAgIHgxID0geDsKKyAgICAgICAgICAgIHkyID0geTE7CisgICAgICAgICAgICB5MSA9
IHk7CisgICAgICAgIH0KKworICAgICAgICAvLyBMb2NhbCB2YXJpYWJsZXMgYmFjayB0byBtZW1i
ZXIuIEZsdXNoIGRlbm9ybWFscyBoZXJlIHNvIHdlCisgICAgICAgIC8vIGRvbid0IHNsb3cgZG93
biB0aGUgaW5uZXIgbG9vcCBhYm92ZS4KKyAgICAgICAgbV94MSA9IERlbm9ybWFsRGlzYWJsZXI6
OmZsdXNoRGVub3JtYWxGbG9hdFRvWmVybyh4MSk7CisgICAgICAgIG1feDIgPSBEZW5vcm1hbERp
c2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRUb1plcm8oeDIpOworICAgICAgICBtX3kxID0gRGVu
b3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHkxKTsKKyAgICAgICAgbV95
MiA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxGbG9hdFRvWmVybyh5Mik7CisKKyAg
ICAgICAgLy8gVGhlcmUgaXMgYW4gYXNzdW1wdGlvbiBoZXJlIHRoYXQgb25jZSB3ZSBoYXZlIHNh
bXBsZSBhY2N1cmF0ZSB2YWx1ZXMgd2UKKyAgICAgICAgLy8gY2FuIG5ldmVyIGdvIGJhY2sgdG8g
bm90IGhhdmluZyBzYW1wbGUgYWNjdXJhdGUgdmFsdWVzLiBUaGlzIGlzCisgICAgICAgIC8vIGN1
cnJlbnRseSB0cnVlIGluIHRoZSB3YXkgQXVkaW9QYXJhbVRpbWxpbmUgaXMgaW1wbGVtZW50ZWQ6
IG9uY2UgYW4KKyAgICAgICAgLy8gZXZlbnQgaXMgaW5zZXJ0ZWQsIHNhbXBsZSBhY2N1cmF0ZSBw
cm9jZXNzaW5nIGlzIGFsd2F5cyBlbmFibGVkLgorICAgICAgICAvLworICAgICAgICAvLyBJZiBz
bywgdGhlbiB3ZSBuZXZlciBoYXZlIHRvIHVwZGF0ZSB0aGUgc3RhdGUgdmFyaWFibGVzIGZvciB0
aGUgTUFDT1NYCisgICAgICAgIC8vIHBhdGguIFRoZSBzdHJ1Y3R1cmUgb2YgdGhlIHN0YXRlIHZh
cmlhYmxlIGluIHRoZXNlIGNhc2VzIGFyZW4ndCB3ZWxsCisgICAgICAgIC8vIGRvY3VtZW50ZWQg
c28gaXQncyBub3QgY2xlYXIgaG93IHRvIHVwZGF0ZSB0aGVtIGFueXdheS4KKyAgICAgICAgcmV0
dXJuOworICAgIH0KKwogI2lmIFVTRShBQ0NFTEVSQVRFKQorICAgIGF1dG8qIGlucHV0UCA9IG1f
aW5wdXRCdWZmZXIuZGF0YSgpOworICAgIGF1dG8qIG91dHB1dFAgPSBtX291dHB1dEJ1ZmZlci5k
YXRhKCk7CisKKyAgICAvLyBTZXQgdXAgZmlsdGVyIHN0YXRlLiBUaGlzIGlzIG5lZWRlZCBpbiBj
YXNlIHdlJ3JlIHN3aXRjaGluZyBmcm9tCisgICAgLy8gZmlsdGVyaW5nIHdpdGggdmFyaWFibGUg
Y29lZmZpY2llbnRzIChpLmUuLCB3aXRoIGF1dG9tYXRpb25zKSB0bworICAgIC8vIGZpeGVkIGNv
ZWZmaWNpZW50cyAod2l0aG91dCBhdXRvbWF0aW9ucykuCisgICAgaW5wdXRQWzBdID0gbV94MjsK
KyAgICBpbnB1dFBbMV0gPSBtX3gxOworICAgIG91dHB1dFBbMF0gPSBtX3kyOworICAgIG91dHB1
dFBbMV0gPSBtX3kxOworCiAgICAgLy8gVXNlIHZlY0xpYiBpZiBhdmFpbGFibGUKICAgICBwcm9j
ZXNzRmFzdChzb3VyY2VQLCBkZXN0UCwgZnJhbWVzVG9Qcm9jZXNzKTsKIAorICAgIEFTU0VSVChm
cmFtZXNUb1Byb2Nlc3MgPj0gMik7CisKKyAgICAvLyBDb3B5IHRoZSBsYXN0IGlucHV0cyBhbmQg
b3V0cHV0cyB0byB0aGUgZmlsdGVyIG1lbW9yeSB2YXJpYWJsZXMuCisgICAgLy8gVGhpcyBpcyBu
ZWVkZWQgYmVjYXVzZSB0aGUgbmV4dCByZW5kZXJpbmcgcXVhbnR1bSBtaWdodCBiZSBhbgorICAg
IC8vIGF1dG9tYXRpb24gd2hpY2ggbmVlZHMgdGhlIGhpc3RvcnkgdG8gY29udGludWUgY29ycmVj
dGx5LiBCZWNhdXNlCisgICAgLy8gc291cmNlUCBhbmQgZGVzdFAgY2FuIGJlIHRoZSBzYW1lIGJs
b2NrIG9mIG1lbW9yeSwgd2UgY2FuJ3QgcmVhZCBmcm9tCisgICAgLy8gc291cmNlUCB0byBnZXQg
dGhlIGxhc3QgaW5wdXRzLiBGb3J0dW5hdGVseSwgcHJvY2Vzc0Zhc3QgaGFzIHB1dCB0aGUKKyAg
ICAvLyBsYXN0IGlucHV0cyBpbiBpbnB1dFswXSBhbmQgaW5wdXRbMV0uCisgICAgbV94MSA9IGlu
cHV0UFsxXTsKKyAgICBtX3gyID0gaW5wdXRQWzBdOworICAgIG1feTEgPSBkZXN0UFtmcmFtZXNU
b1Byb2Nlc3MgLSAxXTsKKyAgICBtX3kyID0gZGVzdFBbZnJhbWVzVG9Qcm9jZXNzIC0gMl07CiAj
ZWxzZQotCi0gICAgaW50IG4gPSBmcmFtZXNUb1Byb2Nlc3M7CisgICAgc2l6ZV90IG4gPSBmcmFt
ZXNUb1Byb2Nlc3M7CiAKICAgICAvLyBDcmVhdGUgbG9jYWwgY29waWVzIG9mIG1lbWJlciB2YXJp
YWJsZXMKICAgICBkb3VibGUgeDEgPSBtX3gxOwpAQCAtODEsMTYgKzE2MCwxNiBAQCB2b2lkIEJp
cXVhZDo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3Qg
ZnJhbWVzVG9Qcm9jZXNzKQogICAgIGRvdWJsZSB5MSA9IG1feTE7CiAgICAgZG91YmxlIHkyID0g
bV95MjsKIAotICAgIGRvdWJsZSBiMCA9IG1fYjA7Ci0gICAgZG91YmxlIGIxID0gbV9iMTsKLSAg
ICBkb3VibGUgYjIgPSBtX2IyOwotICAgIGRvdWJsZSBhMSA9IG1fYTE7Ci0gICAgZG91YmxlIGEy
ID0gbV9hMjsKKyAgICBkb3VibGUgYjAgPSBtX2IwWzBdOworICAgIGRvdWJsZSBiMSA9IG1fYjFb
MF07CisgICAgZG91YmxlIGIyID0gbV9iMlswXTsKKyAgICBkb3VibGUgYTEgPSBtX2ExWzBdOwor
ICAgIGRvdWJsZSBhMiA9IG1fYTJbMF07CiAKICAgICB3aGlsZSAobi0tKSB7CiAgICAgICAgIC8v
IEZJWE1FOiB0aGlzIGNhbiBiZSBvcHRpbWl6ZWQgYnkgcGlwZWxpbmluZyB0aGUgbXVsdGlwbHkg
YWRkcy4uLgogICAgICAgICBmbG9hdCB4ID0gKnNvdXJjZVArKzsKLSAgICAgICAgZmxvYXQgeSA9
IGIwKnggKyBiMSp4MSArIGIyKngyIC0gYTEqeTEgLSBhMip5MjsKKyAgICAgICAgZmxvYXQgeSA9
IGIwICogeCArIGIxICogeDEgKyBiMiAqIHgyIC0gYTEgKiB5MSAtIGEyICogeTI7CiAKICAgICAg
ICAgKmRlc3RQKysgPSB5OwogCkBAIC0xMDcsMTIgKzE4Niw2IEBAIHZvaWQgQmlxdWFkOjpwcm9j
ZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2VQLCBmbG9hdCogZGVzdFAsIHNpemVfdCBmcmFtZXNUb1By
b2Nlc3MpCiAgICAgbV94MiA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxGbG9hdFRv
WmVybyh4Mik7CiAgICAgbV95MSA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxGbG9h
dFRvWmVybyh5MSk7CiAgICAgbV95MiA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxG
bG9hdFRvWmVybyh5Mik7Ci0KLSAgICBtX2IwID0gYjA7Ci0gICAgbV9iMSA9IGIxOwotICAgIG1f
YjIgPSBiMjsKLSAgICBtX2ExID0gYTE7Ci0gICAgbV9hMiA9IGEyOwogI2VuZGlmCiB9CiAKQEAg
LTEyMywxMSArMTk2LDExIEBAIHZvaWQgQmlxdWFkOjpwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3Vy
Y2VQLCBmbG9hdCogZGVzdFAsIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCiB2b2lkIEJpcXVhZDo6
cHJvY2Vzc0Zhc3QoY29uc3QgZmxvYXQqIHNvdXJjZVAsIGZsb2F0KiBkZXN0UCwgc2l6ZV90IGZy
YW1lc1RvUHJvY2VzcykKIHsKICAgICBkb3VibGUgZmlsdGVyQ29lZmZpY2llbnRzWzVdOwotICAg
IGZpbHRlckNvZWZmaWNpZW50c1swXSA9IG1fYjA7Ci0gICAgZmlsdGVyQ29lZmZpY2llbnRzWzFd
ID0gbV9iMTsKLSAgICBmaWx0ZXJDb2VmZmljaWVudHNbMl0gPSBtX2IyOwotICAgIGZpbHRlckNv
ZWZmaWNpZW50c1szXSA9IG1fYTE7Ci0gICAgZmlsdGVyQ29lZmZpY2llbnRzWzRdID0gbV9hMjsK
KyAgICBmaWx0ZXJDb2VmZmljaWVudHNbMF0gPSBtX2IwWzBdOworICAgIGZpbHRlckNvZWZmaWNp
ZW50c1sxXSA9IG1fYjFbMF07CisgICAgZmlsdGVyQ29lZmZpY2llbnRzWzJdID0gbV9iMlswXTsK
KyAgICBmaWx0ZXJDb2VmZmljaWVudHNbM10gPSBtX2ExWzBdOworICAgIGZpbHRlckNvZWZmaWNp
ZW50c1s0XSA9IG1fYTJbMF07CiAKICAgICBkb3VibGUqIGlucHV0UCA9IG1faW5wdXRCdWZmZXIu
ZGF0YSgpOwogICAgIGRvdWJsZSogb3V0cHV0UCA9IG1fb3V0cHV0QnVmZmVyLmRhdGEoKTsKQEAg
LTEzNyw3ICsyMTAsNyBAQCB2b2lkIEJpcXVhZDo6cHJvY2Vzc0Zhc3QoY29uc3QgZmxvYXQqIHNv
dXJjZVAsIGZsb2F0KiBkZXN0UCwgc2l6ZV90IGZyYW1lc1RvUHJvYwogCiAgICAgLy8gQnJlYWsg
dXAgcHJvY2Vzc2luZyBpbnRvIHNtYWxsZXIgc2xpY2VzIChrQnVmZmVyU2l6ZSkgaWYgbmVjZXNz
YXJ5LgogCi0gICAgaW50IG4gPSBmcmFtZXNUb1Byb2Nlc3M7CisgICAgc2l6ZV90IG4gPSBmcmFt
ZXNUb1Byb2Nlc3M7CiAKICAgICB3aGlsZSAobiA+IDApIHsKICAgICAgICAgaW50IGZyYW1lc1Ro
aXNUaW1lID0gbiA8IGtCdWZmZXJTaXplID8gbiA6IGtCdWZmZXJTaXplOwpAQCAtMTYxLDcgKzIz
NCw3IEBAIHZvaWQgQmlxdWFkOjpwcm9jZXNzU2xpY2VGYXN0KGRvdWJsZSogc291cmNlUCwgZG91
YmxlKiBkZXN0UCwgZG91YmxlKiBjb2VmZmljaWVuCiAgICAgLy8gVXNlIGRvdWJsZS1wcmVjaXNp
b24gZm9yIGZpbHRlciBzdGFiaWxpdHkKICAgICB2RFNQX2RlcTIyRChzb3VyY2VQLCAxLCBjb2Vm
ZmljaWVudHNQLCBkZXN0UCwgMSwgZnJhbWVzVG9Qcm9jZXNzKTsKIAotICAgIC8vIFNhdmUgaGlz
dG9yeS4gIE5vdGUgdGhhdCBzb3VyY2VQIGFuZCBkZXN0UCByZWZlcmVuY2UgbV9pbnB1dEJ1ZmZl
ciBhbmQgbV9vdXRwdXRCdWZmZXIgcmVzcGVjdGl2ZWx5LgorICAgIC8vIFNhdmUgaGlzdG9yeS4g
Tm90ZSB0aGF0IHNvdXJjZVAgYW5kIGRlc3RQIHJlZmVyZW5jZSBtX2lucHV0QnVmZmVyIGFuZCBt
X291dHB1dEJ1ZmZlciByZXNwZWN0aXZlbHkuCiAgICAgLy8gVGhlc2UgYnVmZmVycyBhcmUgYWxs
b2NhdGVkIChpbiB0aGUgY29uc3RydWN0b3IpIHdpdGggc3BhY2UgZm9yIHR3byBleHRyYSBzYW1w
bGVzIHNvIGl0J3MgT0sgdG8gYWNjZXNzCiAgICAgLy8gYXJyYXkgdmFsdWVzIHR3byBiZXlvbmQg
ZnJhbWVzVG9Qcm9jZXNzLgogICAgIHNvdXJjZVBbMF0gPSBzb3VyY2VQW2ZyYW1lc1RvUHJvY2Vz
cyAtIDIgKyAyXTsKQEAgLTE4NCwyMSArMjU3LDIwIEBAIHZvaWQgQmlxdWFkOjpyZXNldCgpCiAg
ICAgZG91YmxlKiBvdXRwdXRQID0gbV9vdXRwdXRCdWZmZXIuZGF0YSgpOwogICAgIG91dHB1dFBb
MF0gPSAwOwogICAgIG91dHB1dFBbMV0gPSAwOworI2VuZGlmCiAKLSNlbHNlCiAgICAgbV94MSA9
IG1feDIgPSBtX3kxID0gbV95MiA9IDA7Ci0jZW5kaWYKKwogfQogCi12b2lkIEJpcXVhZDo6c2V0
TG93cGFzc1BhcmFtcyhkb3VibGUgY3V0b2ZmLCBkb3VibGUgcmVzb25hbmNlKQordm9pZCBCaXF1
YWQ6OnNldExvd3Bhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgY3V0b2ZmLCBkb3VibGUg
cmVzb25hbmNlKQogewogICAgIC8vIExpbWl0IGN1dG9mZiB0byAwIHRvIDEuCiAgICAgY3V0b2Zm
ID0gc3RkOjptYXgoMC4wLCBzdGQ6Om1pbihjdXRvZmYsIDEuMCkpOwogICAgIAogICAgIGlmIChj
dXRvZmYgPT0gMSkgewogICAgICAgICAvLyBXaGVuIGN1dG9mZiBpcyAxLCB0aGUgei10cmFuc2Zv
cm0gaXMgMS4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygxLCAwLCAwLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9IGVsc2Ug
aWYgKGN1dG9mZiA+IDApIHsKICAgICAgICAgLy8gQ29tcHV0ZSBiaXF1YWQgY29lZmZpY2llbnRz
IGZvciBsb3dwYXNzIGZpbHRlcgogICAgICAgICByZXNvbmFuY2UgPSBzdGQ6Om1heCgwLjAsIHJl
c29uYW5jZSk7IC8vIGNhbid0IGdvIG5lZ2F0aXZlCkBAIC0yMTcsMjQgKzI4OSwyMiBAQCB2b2lk
IEJpcXVhZDo6c2V0TG93cGFzc1BhcmFtcyhkb3VibGUgY3V0b2ZmLCBkb3VibGUgcmVzb25hbmNl
KQogICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGNvc3c7CiAgICAgICAgIGRvdWJsZSBhMiA9IDEg
LSBhbHBoYTsKIAotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGIwLCBiMSwgYjIs
IGEwLCBhMSwgYTIpOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBi
MCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICB9IGVsc2UgewogICAgICAgICAvLyBXaGVuIGN1
dG9mZiBpcyB6ZXJvLCBub3RoaW5nIGdldHMgdGhyb3VnaCB0aGUgZmlsdGVyLCBzbyBzZXQKICAg
ICAgICAgLy8gY29lZmZpY2llbnRzIHVwIGNvcnJlY3RseS4KLSAgICAgICAgc2V0Tm9ybWFsaXpl
ZENvZWZmaWNpZW50cygwLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDEsIDAsIDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAwLCAw
LCAwLCAxLCAwLCAwKTsKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRIaWdocGFzc1BhcmFt
cyhkb3VibGUgY3V0b2ZmLCBkb3VibGUgcmVzb25hbmNlKQordm9pZCBCaXF1YWQ6OnNldEhpZ2hw
YXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGN1dG9mZiwgZG91YmxlIHJlc29uYW5jZSkK
IHsKICAgICAvLyBMaW1pdCBjdXRvZmYgdG8gMCB0byAxLgogICAgIGN1dG9mZiA9IHN0ZDo6bWF4
KDAuMCwgc3RkOjptaW4oY3V0b2ZmLCAxLjApKTsKIAogICAgIGlmIChjdXRvZmYgPT0gMSkgewog
ICAgICAgICAvLyBUaGUgei10cmFuc2Zvcm0gaXMgMC4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENv
ZWZmaWNpZW50cygwLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEs
IDAsIDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAwLCAwLCAw
LCAxLCAwLCAwKTsKICAgICB9IGVsc2UgaWYgKGN1dG9mZiA+IDApIHsKICAgICAgICAgLy8gQ29t
cHV0ZSBiaXF1YWQgY29lZmZpY2llbnRzIGZvciBoaWdocGFzcyBmaWx0ZXIKICAgICAgICAgcmVz
b25hbmNlID0gc3RkOjptYXgoMC4wLCByZXNvbmFuY2UpOyAvLyBjYW4ndCBnbyBuZWdhdGl2ZQpA
QCAtMjUzLDI5ICszMjMsMjggQEAgdm9pZCBCaXF1YWQ6OnNldEhpZ2hwYXNzUGFyYW1zKGRvdWJs
ZSBjdXRvZmYsIGRvdWJsZSByZXNvbmFuY2UpCiAgICAgICAgIGRvdWJsZSBhMSA9IC0yICogY29z
dzsKICAgICAgICAgZG91YmxlIGEyID0gMSAtIGFscGhhOwogCi0gICAgICAgIHNldE5vcm1hbGl6
ZWRDb2VmZmljaWVudHMoYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgIHNldE5vcm1h
bGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOwogICAgIH0g
ZWxzZSB7CiAgICAgICAvLyBXaGVuIGN1dG9mZiBpcyB6ZXJvLCB3ZSBuZWVkIHRvIGJlIGNhcmVm
dWwgYmVjYXVzZSB0aGUgYWJvdmUKICAgICAgIC8vIGdpdmVzIGEgcXVhZHJhdGljIGRpdmlkZWQg
YnkgdGhlIHNhbWUgcXVhZHJhdGljLCB3aXRoIHBvbGVzCiAgICAgICAvLyBhbmQgemVyb3Mgb24g
dGhlIHVuaXQgY2lyY2xlIGluIHRoZSBzYW1lIHBsYWNlLiBXaGVuIGN1dG9mZgogICAgICAgLy8g
aXMgemVybywgdGhlIHotdHJhbnNmb3JtIGlzIDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2Vm
ZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAw
LCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwg
MSwgMCwgMCk7CiAgICAgfQogfQogCi12b2lkIEJpcXVhZDo6c2V0Tm9ybWFsaXplZENvZWZmaWNp
ZW50cyhkb3VibGUgYjAsIGRvdWJsZSBiMSwgZG91YmxlIGIyLCBkb3VibGUgYTAsIGRvdWJsZSBh
MSwgZG91YmxlIGEyKQordm9pZCBCaXF1YWQ6OnNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoc2l6
ZV90IGluZGV4LCBkb3VibGUgYjAsIGRvdWJsZSBiMSwgZG91YmxlIGIyLCBkb3VibGUgYTAsIGRv
dWJsZSBhMSwgZG91YmxlIGEyKQogewogICAgIGRvdWJsZSBhMEludmVyc2UgPSAxIC8gYTA7CiAg
ICAgCi0gICAgbV9iMCA9IGIwICogYTBJbnZlcnNlOwotICAgIG1fYjEgPSBiMSAqIGEwSW52ZXJz
ZTsKLSAgICBtX2IyID0gYjIgKiBhMEludmVyc2U7Ci0gICAgbV9hMSA9IGExICogYTBJbnZlcnNl
OwotICAgIG1fYTIgPSBhMiAqIGEwSW52ZXJzZTsKKyAgICBtX2IwW2luZGV4XSA9IGIwICogYTBJ
bnZlcnNlOworICAgIG1fYjFbaW5kZXhdID0gYjEgKiBhMEludmVyc2U7CisgICAgbV9iMltpbmRl
eF0gPSBiMiAqIGEwSW52ZXJzZTsKKyAgICBtX2ExW2luZGV4XSA9IGExICogYTBJbnZlcnNlOwor
ICAgIG1fYTJbaW5kZXhdID0gYTIgKiBhMEludmVyc2U7CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRM
b3dTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKQordm9pZCBCaXF1
YWQ6OnNldExvd1NoZWxmUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91
YmxlIGRiR2FpbikKIHsKICAgICAvLyBDbGlwIGZyZXF1ZW5jaWVzIHRvIGJldHdlZW4gMCBhbmQg
MSwgaW5jbHVzaXZlLgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwgc3RkOjptaW4oZnJl
cXVlbmN5LCAxLjApKTsKQEAgLTI4NCw4ICszNTMsNyBAQCB2b2lkIEJpcXVhZDo6c2V0TG93U2hl
bGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKIAogICAgIGlmIChmcmVx
dWVuY3kgPT0gMSkgewogICAgICAgICAvLyBUaGUgei10cmFuc2Zvcm0gaXMgYSBjb25zdGFudCBn
YWluLgotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKEEgKiBBLCAwLCAwLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBBICogQSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfSBl
bHNlIGlmIChmcmVxdWVuY3kgPiAwKSB7CiAgICAgICAgIGRvdWJsZSB3MCA9IHBpRG91YmxlICog
ZnJlcXVlbmN5OwogICAgICAgICBkb3VibGUgUyA9IDE7IC8vIGZpbHRlciBzbG9wZSAoMSBpcyBt
YXggdmFsdWUpCkBAIC0zMDIsMTUgKzM3MCwxNCBAQCB2b2lkIEJpcXVhZDo6c2V0TG93U2hlbGZQ
YXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKICAgICAgICAgZG91YmxlIGEx
ID0gLTIgKiAoYU1pbnVzT25lICsgYVBsdXNPbmUgKiBrKTsKICAgICAgICAgZG91YmxlIGEyID0g
YVBsdXNPbmUgKyBhTWludXNPbmUgKiBrIC0gazI7CiAKLSAgICAgICAgc2V0Tm9ybWFsaXplZENv
ZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAgc2V0Tm9ybWFsaXpl
ZENvZWZmaWNpZW50cyhpbmRleCwgYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CiAgICAgfSBlbHNl
IHsKICAgICAgICAgLy8gV2hlbiBmcmVxdWVuY3kgaXMgMCwgdGhlIHotdHJhbnNmb3JtIGlzIDEu
Ci0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENv
ZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfQogfQogCi12b2lkIEJp
cXVhZDo6c2V0SGlnaFNoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBkYkdhaW4p
Cit2b2lkIEJpcXVhZDo6c2V0SGlnaFNoZWxmUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZy
ZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKIHsKICAgICAvLyBDbGlwIGZyZXF1ZW5jaWVzIHRvIGJl
dHdlZW4gMCBhbmQgMSwgaW5jbHVzaXZlLgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwg
c3RkOjptaW4oZnJlcXVlbmN5LCAxLjApKTsKQEAgLTMxOSw4ICszODYsNyBAQCB2b2lkIEJpcXVh
ZDo6c2V0SGlnaFNoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBkYkdhaW4pCiAK
ICAgICBpZiAoZnJlcXVlbmN5ID09IDEpIHsKICAgICAgICAgLy8gVGhlIHotdHJhbnNmb3JtIGlz
IDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXpl
ZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfSBlbHNlIGlmIChm
cmVxdWVuY3kgPiAwKSB7CiAgICAgICAgIGRvdWJsZSB3MCA9IHBpRG91YmxlICogZnJlcXVlbmN5
OwogICAgICAgICBkb3VibGUgUyA9IDE7IC8vIGZpbHRlciBzbG9wZSAoMSBpcyBtYXggdmFsdWUp
CkBAIC0zMzcsMTUgKzQwMywxNCBAQCB2b2lkIEJpcXVhZDo6c2V0SGlnaFNoZWxmUGFyYW1zKGRv
dWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBkYkdhaW4pCiAgICAgICAgIGRvdWJsZSBhMSA9IDIgKiAo
YU1pbnVzT25lIC0gYVBsdXNPbmUgKiBrKTsKICAgICAgICAgZG91YmxlIGEyID0gYVBsdXNPbmUg
LSBhTWludXNPbmUgKiBrIC0gazI7CiAKLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50
cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNp
ZW50cyhpbmRleCwgYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CiAgICAgfSBlbHNlIHsKICAgICAg
ICAgLy8gV2hlbiBmcmVxdWVuY3kgPSAwLCB0aGUgZmlsdGVyIGlzIGp1c3QgYSBnYWluLCBBXjIu
Ci0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoQSAqIEEsIDAsIDAsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6
ZWRDb2VmZmljaWVudHMoaW5kZXgsIEEgKiBBLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9CiB9CiAK
LXZvaWQgQmlxdWFkOjpzZXRQZWFraW5nUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBR
LCBkb3VibGUgZGJHYWluKQordm9pZCBCaXF1YWQ6OnNldFBlYWtpbmdQYXJhbXMoc2l6ZV90IGlu
ZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSwgZG91YmxlIGRiR2FpbikKIHsKICAgICAv
LyBDbGlwIGZyZXF1ZW5jaWVzIHRvIGJldHdlZW4gMCBhbmQgMSwgaW5jbHVzaXZlLgogICAgIGZy
ZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwgc3RkOjptaW4oZnJlcXVlbmN5LCAxLjApKTsKQEAgLTM2
OCwyMiArNDMzLDIwIEBAIHZvaWQgQmlxdWFkOjpzZXRQZWFraW5nUGFyYW1zKGRvdWJsZSBmcmVx
dWVuY3ksIGRvdWJsZSBRLCBkb3VibGUgZGJHYWluKQogICAgICAgICAgICAgZG91YmxlIGExID0g
LTIgKiBrOwogICAgICAgICAgICAgZG91YmxlIGEyID0gMSAtIGFscGhhIC8gQTsKIAotICAgICAg
ICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsK
KyAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIs
IGEwLCBhMSwgYTIpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gV2hlbiBRID0g
MCwgdGhlIGFib3ZlIGZvcm11bGFzIGhhdmUgcHJvYmxlbXMuIElmIHdlIGxvb2sgYXQKICAgICAg
ICAgICAgIC8vIHRoZSB6LXRyYW5zZm9ybSwgd2UgY2FuIHNlZSB0aGF0IHRoZSBsaW1pdCBhcyBR
LT4wIGlzIEFeMiwgc28KICAgICAgICAgICAgIC8vIHNldCB0aGUgZmlsdGVyIHRoYXQgd2F5Lgot
ICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhBICogQSwgMCwgMCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgICAgICBz
ZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBBICogQSwgMCwgMCwgMSwgMCwgMCk7CiAg
ICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICAvLyBXaGVuIGZyZXF1ZW5jeSBpcyAwIG9y
IDEsIHRoZSB6LXRyYW5zZm9ybSBpcyAxLgotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2ll
bnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7
CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIDEsIDAsIDAsIDEsIDAs
IDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6OnNldEFsbHBhc3NQYXJhbXMoZG91YmxlIGZy
ZXF1ZW5jeSwgZG91YmxlIFEpCit2b2lkIEJpcXVhZDo6c2V0QWxscGFzc1BhcmFtcyhzaXplX3Qg
aW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKQogewogICAgIC8vIENsaXAgZnJlcXVl
bmNpZXMgdG8gYmV0d2VlbiAwIGFuZCAxLCBpbmNsdXNpdmUuCiAgICAgZnJlcXVlbmN5ID0gc3Rk
OjptYXgoMC4wLCBzdGQ6Om1pbihmcmVxdWVuY3ksIDEuMCkpOwpAQCAtNDA0LDIyICs0NjcsMjAg
QEAgdm9pZCBCaXF1YWQ6OnNldEFsbHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91Ymxl
IFEpCiAgICAgICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGs7CiAgICAgICAgICAgICBkb3VibGUg
YTIgPSAxIC0gYWxwaGE7CiAKLSAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMo
YjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZp
Y2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICAgICAgfSBlbHNlIHsK
ICAgICAgICAgICAgIC8vIFdoZW4gUSA9IDAsIHRoZSBhYm92ZSBmb3JtdWxhcyBoYXZlIHByb2Js
ZW1zLiBJZiB3ZSBsb29rIGF0CiAgICAgICAgICAgICAvLyB0aGUgei10cmFuc2Zvcm0sIHdlIGNh
biBzZWUgdGhhdCB0aGUgbGltaXQgYXMgUS0+MCBpcyAtMSwgc28KICAgICAgICAgICAgIC8vIHNl
dCB0aGUgZmlsdGVyIHRoYXQgd2F5LgotICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNp
ZW50cygtMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwg
MCwgMCk7CisgICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAtMSwg
MCwgMCwgMSwgMCwgMCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICAvLyBXaGVu
IGZyZXF1ZW5jeSBpcyAwIG9yIDEsIHRoZSB6LXRyYW5zZm9ybSBpcyAxLgotICAgICAgICBzZXRO
b3JtYWxpemVkQ29lZmZpY2llbnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5k
ZXgsIDEsIDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6OnNldE5vdGNo
UGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKQordm9pZCBCaXF1YWQ6OnNldE5vdGNo
UGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCiB7CiAgICAg
Ly8gQ2xpcCBmcmVxdWVuY2llcyB0byBiZXR3ZWVuIDAgYW5kIDEsIGluY2x1c2l2ZS4KICAgICBm
cmVxdWVuY3kgPSBzdGQ6Om1heCgwLjAsIHN0ZDo6bWluKGZyZXF1ZW5jeSwgMS4wKSk7CkBAIC00
NDAsMjIgKzUwMSwyMCBAQCB2b2lkIEJpcXVhZDo6c2V0Tm90Y2hQYXJhbXMoZG91YmxlIGZyZXF1
ZW5jeSwgZG91YmxlIFEpCiAgICAgICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGs7CiAgICAgICAg
ICAgICBkb3VibGUgYTIgPSAxIC0gYWxwaGE7CiAKLSAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgICAgICBzZXROb3Jt
YWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIFdoZW4gUSA9IDAsIHRoZSBhYm92ZSBmb3JtdWxh
cyBoYXZlIHByb2JsZW1zLiBJZiB3ZSBsb29rIGF0CiAgICAgICAgICAgICAvLyB0aGUgei10cmFu
c2Zvcm0sIHdlIGNhbiBzZWUgdGhhdCB0aGUgbGltaXQgYXMgUS0+MCBpcyAwLCBzbwogICAgICAg
ICAgICAgLy8gc2V0IHRoZSBmaWx0ZXIgdGhhdCB3YXkuCi0gICAgICAgICAgICBzZXROb3JtYWxp
emVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDEsIDAsIDApOworICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhp
bmRleCwgMCwgMCwgMCwgMSwgMCwgMCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAg
ICAvLyBXaGVuIGZyZXF1ZW5jeSBpcyAwIG9yIDEsIHRoZSB6LXRyYW5zZm9ybSBpcyAxLgotICAg
ICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmlj
aWVudHMoaW5kZXgsIDEsIDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6
OnNldEJhbmRwYXNzUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKQordm9pZCBCaXF1
YWQ6OnNldEJhbmRwYXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91
YmxlIFEpCiB7CiAgICAgLy8gTm8gbmVnYXRpdmUgZnJlcXVlbmNpZXMgYWxsb3dlZC4KICAgICBm
cmVxdWVuY3kgPSBzdGQ6Om1heCgwLjAsIGZyZXF1ZW5jeSk7CkBAIC00NzYsMTMgKzUzNSwxMiBA
QCB2b2lkIEJpcXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91Ymxl
IFEpCiAgICAgICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGs7CiAgICAgICAgICAgICBkb3VibGUg
YTIgPSAxIC0gYWxwaGE7CiAKLSAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMo
YjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZp
Y2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKICAgICAgICAgfSBlbHNlIHsK
ICAgICAgICAgICAgIC8vIFdoZW4gUSA9IDAsIHRoZSBhYm92ZSBmb3JtdWxhcyBoYXZlIHByb2Js
ZW1zLiBJZiB3ZSBsb29rIGF0CiAgICAgICAgICAgICAvLyB0aGUgei10cmFuc2Zvcm0sIHdlIGNh
biBzZWUgdGhhdCB0aGUgbGltaXQgYXMgUS0+MCBpcyAxLCBzbwogICAgICAgICAgICAgLy8gc2V0
IHRoZSBmaWx0ZXIgdGhhdCB3YXkuCi0gICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2ll
bnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAs
IDApOworICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwg
MCwgMSwgMCwgMCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICAvLyBXaGVuIHRo
ZSBjdXRvZmYgaXMgemVybywgdGhlIHotdHJhbnNmb3JtIGFwcHJvYWNoZXMgMCwgaWYgUQpAQCAt
NDkwLDM5ICs1NDgsMTQgQEAgdm9pZCBCaXF1YWQ6OnNldEJhbmRwYXNzUGFyYW1zKGRvdWJsZSBm
cmVxdWVuY3ksIGRvdWJsZSBRKQogICAgICAgICAvLyBwcmV0dHkgbXVjaCB1bmRlZmluZWQuIFdo
YXQgc2hvdWxkIHdlIGRvIGluIHRoaXMgY2FzZT8KICAgICAgICAgLy8gRm9yIG5vdywganVzdCBt
YWtlIHRoZSBmaWx0ZXIgMC4gV2hlbiB0aGUgY3V0b2ZmIGlzIDEsIHRoZQogICAgICAgICAvLyB6
LXRyYW5zZm9ybSBhbHNvIGFwcHJvYWNoZXMgMC4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZm
aWNpZW50cygwLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAs
IDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAwLCAwLCAwLCAx
LCAwLCAwKTsKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRaZXJvUG9sZVBhaXJzKHN0ZDo6
Y29tcGxleDxkb3VibGU+IHplcm8sIHN0ZDo6Y29tcGxleDxkb3VibGU+IHBvbGUpCi17Ci0gICAg
ZG91YmxlIGIwID0gMTsKLSAgICBkb3VibGUgYjEgPSAtMiAqIHplcm8ucmVhbCgpOwotCi0gICAg
ZG91YmxlIHplcm9NYWcgPSBhYnMoemVybyk7Ci0gICAgZG91YmxlIGIyID0gemVyb01hZyAqIHpl
cm9NYWc7Ci0KLSAgICBkb3VibGUgYTEgPSAtMiAqIHBvbGUucmVhbCgpOwotCi0gICAgZG91Ymxl
IHBvbGVNYWcgPSBhYnMocG9sZSk7Ci0gICAgZG91YmxlIGEyID0gcG9sZU1hZyAqIHBvbGVNYWc7
Ci0gICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCAxLCBhMSwgYTIpOwot
fQotCi12b2lkIEJpcXVhZDo6c2V0QWxscGFzc1BvbGUoc3RkOjpjb21wbGV4PGRvdWJsZT4gcG9s
ZSkKLXsKLSAgICBzdGQ6OmNvbXBsZXg8ZG91YmxlPiB6ZXJvID0gc3RkOjpjb21wbGV4PGRvdWJs
ZT4oMSwgMCkgLyBwb2xlOwotICAgIHNldFplcm9Qb2xlUGFpcnMoemVybywgcG9sZSk7Ci19Ci0K
LXZvaWQgQmlxdWFkOjpnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVzLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3ksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQqIG1hZ1Jlc3BvbnNlLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0KiBwaGFzZVJlc3BvbnNlKQordm9p
ZCBCaXF1YWQ6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIG5GcmVxdWVuY2llcywgY29u
c3QgZmxvYXQqIGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNw
b25zZSkKIHsKICAgICAvLyBFdmFsdWF0ZSB0aGUgWi10cmFuc2Zvcm0gb2YgdGhlIGZpbHRlciBh
dCBnaXZlbiBub3JtYWxpemVkCi0gICAgLy8gZnJlcXVlbmN5IGZyb20gMCB0byAxLiAgKDEgY29y
cmVzcG9uZHMgdG8gdGhlIE55cXVpc3QKKyAgICAvLyBmcmVxdWVuY3kgZnJvbSAwIHRvIDEuICgx
IGNvcnJlc3BvbmRzIHRvIHRoZSBOeXF1aXN0CiAgICAgLy8gZnJlcXVlbmN5LikKICAgICAvLwog
ICAgIC8vIFRoZSB6LXRyYW5zZm9ybSBvZiB0aGUgZmlsdGVyIGlzCkBAIC01MzgsMTMgKzU3MSwx
MyBAQCB2b2lkIEJpcXVhZDo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoaW50IG5GcmVxdWVuY2llcywK
ICAgICAvLyB3aXRoIHoxID0gMS96IGFuZCB6ID0gZXhwKGoqcGkqZnJlcXVlbmN5KS4gSGVuY2Ug
ejEgPSBleHAoLWoqcGkqZnJlcXVlbmN5KQogCiAgICAgLy8gTWFrZSBsb2NhbCBjb3BpZXMgb2Yg
dGhlIGNvZWZmaWNpZW50cyBhcyBhIG1pY3JvLW9wdGltaXphdGlvbi4KLSAgICBkb3VibGUgYjAg
PSBtX2IwOwotICAgIGRvdWJsZSBiMSA9IG1fYjE7Ci0gICAgZG91YmxlIGIyID0gbV9iMjsKLSAg
ICBkb3VibGUgYTEgPSBtX2ExOwotICAgIGRvdWJsZSBhMiA9IG1fYTI7CisgICAgZG91YmxlIGIw
ID0gbV9iMFswXTsKKyAgICBkb3VibGUgYjEgPSBtX2IxWzBdOworICAgIGRvdWJsZSBiMiA9IG1f
YjJbMF07CisgICAgZG91YmxlIGExID0gbV9hMVswXTsKKyAgICBkb3VibGUgYTIgPSBtX2EyWzBd
OwogICAgIAotICAgIGZvciAoaW50IGsgPSAwOyBrIDwgbkZyZXF1ZW5jaWVzOyArK2spIHsKKyAg
ICBmb3IgKHVuc2lnbmVkIGsgPSAwOyBrIDwgbkZyZXF1ZW5jaWVzOyArK2spIHsKICAgICAgICAg
ZG91YmxlIG9tZWdhID0gLXBpRG91YmxlICogZnJlcXVlbmN5W2tdOwogICAgICAgICBzdGQ6OmNv
bXBsZXg8ZG91YmxlPiB6ID0gc3RkOjpjb21wbGV4PGRvdWJsZT4oY29zKG9tZWdhKSwgc2luKG9t
ZWdhKSk7CiAgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IG51bWVyYXRvciA9IGIwICsgKGIx
ICsgYjIgKiB6KSAqIHo7CkBAIC01NTUsNiArNTg4LDMwOCBAQCB2b2lkIEJpcXVhZDo6Z2V0RnJl
cXVlbmN5UmVzcG9uc2UoaW50IG5GcmVxdWVuY2llcywKICAgICB9CiB9CiAKK3N0YXRpYyBkb3Vi
bGUgcmVwZWF0ZWRSb290UmVzcG9uc2UoZG91YmxlIG4sIGRvdWJsZSBjMSwgZG91YmxlIGMyLCBk
b3VibGUgciwgZG91YmxlIGxvZ0VQUykKK3sKKyAgICAvLyBUaGUgcmVzcG9uc2UgaXMgaChuKSA9
IHJeKG4tMikqW2MxKihuKzEpKnJeMitjMl0uIFdlJ3JlIGxvb2tpbmcKKyAgICAvLyBmb3IgbiBz
dWNoIHRoYXQgfGgobil8ID0gZXBzLiBFcXVpdmFsZW50bHksIHdlIHdhbnQgYSByb290CisgICAg
Ly8gb2YgdGhlIGVxdWF0aW9uIGxvZyh8aChuKXwpIC0gbG9nKGVwcykgPSAwIG9yCisgICAgLy8K
KyAgICAvLyAgIChuLTIpKmxvZyhyKSArIGxvZyh8YzEqKG4rMSkqcl4yK2MyfCkgLSBsb2coZXBz
KQorICAgIC8vCisgICAgLy8gVGhpcyBoZWxwcyB3aXRoIGZpbmRpbmcgYSBudWVtcmljYWwgc29s
dXRpb24gYmVjYXVzZSB0aGlzCisgICAgLy8gYXBwcm94aW1hdGVseSBsaW5lYXJpemVzIHRoZSBy
ZXNwb25zZSBmb3IgbGFyZ2Ugbi4KKworICAgIHJldHVybiAobiAtIDIpICogc3RkOjpsb2cocikg
KyBzdGQ6OmxvZyhzdGQ6OmZhYnMoYzEgKiAobiArIDEpICogciAqIHIgKyBjMikpIC0gbG9nRVBT
OworfQorCisKKy8vIFJlZ3VsYSBGYWxzaSByb290IGZpbmRlciwgSWxsaW5vaXMgdmFyaWFudAor
Ly8gKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0ZhbHNlX3Bvc2l0aW9uX21ldGhvZCNU
aGVfSWxsaW5vaXNfYWxnb3JpdGhtKS4KKy8vCisvLyBUaGlzIGZpbmRzIGEgcm9vdCBvZiB0aGUg
cmVwZWF0ZWQgcm9vdCByZXNwb25zZSB3aGVyZSB0aGUgcm9vdCBpcworLy8gYXNzdW1lZCB0byBs
aWUgYmV0d2VlbiB8bG93fCBhbmQgfGhpZ2h8LiBUaGUgcmVzcG9uc2UgaXMgZ2l2ZW4gYnkKKy8v
IHxjMXwsIHxjMnwsIGFuZCB8cnwgYXMgZGV0ZXJtaW5lZCBieSB8UmVwZWF0ZWRSb290UmVzcG9u
c2V8LgorLy8gfGxvZ0VQU3wgaXMgdGhlIGxvZyB0aGUgdGhlIG1heGltdW0gYWxsb3dlZCBhbXBs
aXR1ZGUgaW4gdGhlCisvLyByZXNwb25zZS4KK3N0YXRpYyBkb3VibGUgcm9vdEZpbmRlcihkb3Vi
bGUgbG93LCBkb3VibGUgaGlnaCwgZG91YmxlIGxvZ0VQUywgZG91YmxlIGMxLCBkb3VibGUgYzIs
IGRvdWJsZSByKQoreworICAgIC8vIERlc2lyZWQgYWNjdXJheSBvZiB0aGUgcm9vdCAoaW4gZnJh
bWVzKS4gVGhpcyBkb2Vzbid0IG5lZWQgdG8gYmUKKyAgICAvLyBzdXBlci1hY2N1cmF0ZSwgc28g
aGFsZiBmcmFtZSBpcyBnb29kIGVub3VnaCwgYW5kIHNob3VsZCBiZSBsZXNzCisgICAgLy8gdGhh
biAxIGJlY2F1c2UgdGhlIGFsZ29yaXRobSBtYXkgcHJlbWF0dXJlbHkgdGVybWluYXRlLgorICAg
IGNvbnN0ZXhwciBkb3VibGUgYWNjdXJhY3lUaHJlc2hvbGQgPSAwLjU7CisgICAgLy8gTWF4IG51
bWJlciBvZiBpdGVyYXRpb25zIHRvIGRvLiBJZiB3ZSBoYXZlbid0IGNvbnZlcmdlZCBieSBub3cs
CisgICAgLy8ganVzdCByZXR1cm4gd2hhdGV2ZXIgd2UndmUgZm91bmQuCisgICAgY29uc3RleHBy
IGludCBtYXhJdGVyYXRpb25zID0gMTA7CisKKyAgICBpbnQgc2lkZSA9IDA7CisgICAgZG91Ymxl
IHJvb3QgPSAwOworICAgIGRvdWJsZSBmTG93ID0gcmVwZWF0ZWRSb290UmVzcG9uc2UobG93LCBj
MSwgYzIsIHIsIGxvZ0VQUyk7CisgICAgZG91YmxlIGZIaWdoID0gcmVwZWF0ZWRSb290UmVzcG9u
c2UoaGlnaCwgYzEsIGMyLCByLCBsb2dFUFMpOworCisgICAgLy8gVGhlIGZ1bmN0aW9uIHZhbHVl
cyBtdXN0IGJlIGZpbml0ZSBhbmQgaGF2ZSBvcHBvc2l0ZSBzaWducyEKKyAgICBBU1NFUlQoc3Rk
Ojppc2Zpbml0ZShmTG93KSk7CisgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoZkhpZ2gpKTsKKyAg
ICBBU1NFUlQoZkxvdyAqIGZIaWdoIDw9IDApOworCisgICAgaW50IGl0ZXJhdGlvbjsKKyAgICBm
b3IgKGl0ZXJhdGlvbiA9IDA7IGl0ZXJhdGlvbiA8IG1heEl0ZXJhdGlvbnM7ICsraXRlcmF0aW9u
KSB7CisgICAgICAgIHJvb3QgPSAoZkxvdyAqIGhpZ2ggLSBmSGlnaCAqIGxvdykgLyAoZkxvdyAt
IGZIaWdoKTsKKyAgICAgICAgaWYgKGZhYnMoaGlnaCAtIGxvdykgPCBhY2N1cmFjeVRocmVzaG9s
ZCAqIHN0ZDo6ZmFicyhoaWdoICsgbG93KSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBk
b3VibGUgZnIgPSByZXBlYXRlZFJvb3RSZXNwb25zZShyb290LCBjMSwgYzIsIHIsIGxvZ0VQUyk7
CisKKyAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoZnIpKTsKKworICAgICAgICBpZiAoZnIg
KiBmSGlnaCA+IDApIHsKKyAgICAgICAgICAgIC8vIGZyIGFuZCBmSGlnaCBoYXZlIHNhbWUgc2ln
bi4gQ29weSByb290IHRvIGZIaWdoCisgICAgICAgICAgICBoaWdoID0gcm9vdDsKKyAgICAgICAg
ICAgIGZIaWdoID0gZnI7CisgICAgICAgICAgICBzaWRlID0gLTE7CisgICAgICAgIH0gZWxzZSBp
ZiAoZkxvdyAqIGZyID4gMCkgeworICAgICAgICAgICAgLy8gZnIgYW5kIGZMb3cgaGF2ZSBzYW1l
IHNpZ24uIENvcHkgcm9vdCB0byBmTG93CisgICAgICAgICAgICBsb3cgPSByb290OworICAgICAg
ICAgICAgZkxvdyA9IGZyOworICAgICAgICAgICAgaWYgKHNpZGUgPT0gMSkKKyAgICAgICAgICAg
ICAgICBmSGlnaCAvPSAyOworICAgICAgICAgICAgc2lkZSA9IDE7CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICAvLyBmTG93ICogZnIgbG9va3MgbGlrZSB6ZXJvLCBzbyBhc3N1bWUgd2Un
dmUgY29udmVyZ2VkLgorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisKKyAg
ICAvLyBXYW50IHRvIGtub3cgaWYgdGhlIG1heCBudW1iZXIgb2YgaXRlcmF0aW9ucyBpcyBldmVy
IGV4Y2VlZGVkIHNvCisgICAgLy8gd2UgY2FuIHVuZGVyc3RhbmQgd2h5IHRoYXQgaGFwcGVuZWQu
CisgICAgQVNTRVJUKGl0ZXJhdGlvbiA8IG1heEl0ZXJhdGlvbnMpOworCisgICAgcmV0dXJuIHJv
b3Q7Cit9CisKK2RvdWJsZSBCaXF1YWQ6OnRhaWxGcmFtZShzaXplX3QgY29lZkluZGV4LCBkb3Vi
bGUgbWF4RnJhbWUpCit7CisgICAgLy8gVGhlIEJpcXVhZCBmaWx0ZXIgaXMgZ2l2ZW4gYnkKKyAg
ICAvLworICAgIC8vICAgSCh6KSA9IChiMCArIGIxL3ogKyBiMi96XjIpLygxICsgYTEveiArIGEy
L3peMikuCisgICAgLy8KKyAgICAvLyBUbyBjb21wdXRlIHRoZSB0YWlsIHRpbWUsIGNvbXB1dGUg
dGhlIGltcHVsc2UgcmVzcG9uc2UsIGgobiksIG9mCisgICAgLy8gSCh6KSwgd2hpY2ggd2UgY2Fu
IGRvIGFuYWx5dGljYWxseS4gRnJvbSB0aGlzIGltcHVsc2UgcmVzcG9uc2UsCisgICAgLy8gZmlu
ZCB0aGUgdmFsdWUgbjAgd2hlcmUgfGgobil8IDw9IGVwcyBmb3IgbiA+PSBuMC4KKyAgICAvLwor
ICAgIC8vIEFzc3VtZSBmaXJzdCB0aGF0IHRoZSB0d28gcG9sZXMgb2YgSCh6KSBhcmUgbm90IHJl
cGVhdGVkLCBzYXkgcjEKKyAgICAvLyBhbmQgcjIuIFRoZW4sIHdlIGNhbiBjb21wdXRlIGEgcGFy
dGlhbCBmcmFjdGlvbiBleHBhbnNpb24gb2YKKyAgICAvLyBIKHopOgorICAgIC8vCisgICAgLy8g
ICBIKHopID0gKGIwK2IxL3orYjIvel4yKS9bKDEtcjEveikqKDEtcjIveildCisgICAgLy8gICAg
ICAgID0gYjAgKyBDMi8oei1yMikgLSBDMS8oei1yMSkKKyAgICAvLworICAgIC8vICB3aGVyZQor
ICAgIC8vICAgIEMyID0gKGIwKnIyXjIrYjEqcjIrYjIpLyhyMi1yMSkKKyAgICAvLyAgICBDMSA9
IChiMCpyMV4yK2IxKnIxK2IyKS8ocjItcjEpCisgICAgLy8KKyAgICAvLyBFeHBhbmQgSCh6KSB0
aGVuIHRoaXMgaW4gcG93ZXJzIG9mIDEveiBnaXZlczoKKyAgICAvLworICAgIC8vICAgSCh6KSA9
IGIwIC0oQzIvcjIrQzEvcjEpICsgc3VtKEMyKnIyXihpLTEpL3peaSArIEMxKnIxXihpLTEpL3pe
aSkKKyAgICAvLworICAgIC8vIFRodXMsIGZvciBuID4gMSAod2UgZG9uJ3QgY2FyZSBhYm91dCBz
bWFsbCBuKSwKKyAgICAvLworICAgIC8vICAgaChuKSA9IEMyKnIyXihuLTEpICsgQzEqcjFeKG4t
MSkKKyAgICAvLworICAgIC8vIFdlIG5lZWQgdG8gZmluZCBuMCBzdWNoIHRoYXQgfGgobil8IDwg
ZXBzIGZvciBuID4gbjAuCisgICAgLy8KKyAgICAvLyBDYXNlIDE6IHIxIGFuZCByMiBhcmUgcmVh
bCBhbmQgZGlzdGluY3QsIHdpdGggfHIxfD49fHIyfC4KKyAgICAvLworICAgIC8vIFRoZW4KKyAg
ICAvLworICAgIC8vICAgaChuKSA9IEMxKnIxXihuLTEpKigxICsgQzIvQzEqKHIyL3IxKV4obi0x
KSkKKyAgICAvLworICAgIC8vIHNvCisgICAgLy8KKyAgICAvLyAgIHxoKG4pfCA9IHxDMXwqfHIx
fF4obi0xKSp8MStDMi9DMSoocjIvcjEpXihuLTEpfAorICAgIC8vICAgICAgICAgIDw9IHxDMXwq
fHIxfF4obi0xKSpbMSArIHxDMi9DMXwqfHIyL3IxfF4obi0xKV0KKyAgICAvLyAgICAgICAgICA8
PSB8QzF8KnxyMXxeKG4tMSkqWzEgKyB8QzIvQzF8XQorICAgIC8vCisgICAgLy8gc28KKyAgICAv
LworICAgIC8vICAgfGgobil8ID0gfEMxfCp8cjF8XihuLTEpKnwxK0MyL0MxKihyMi9yMSleKG4t
MSl8CisgICAgLy8gICAgICAgICAgPD0gfEMxfCp8cjF8XihuLTEpKlsxICsgfEMyL0MxfCp8cjIv
cjF8XihuLTEpXQorICAgIC8vICAgICAgICAgIDw9IHxDMXwqfHIxfF4obi0xKSpbMSArIHxDMi9D
MXxdCisgICAgLy8KKyAgICAvLyBieSB1c2luZyB0aGUgdHJpYW5nbGUgaW5lcXVhbGl0eSBhbmQg
dGhlIGZhY3QgdGhhdCB8cjJ8PD18cjF8LgorICAgIC8vIEFuZCB3ZSB3YW50IHxoKG4pfDw9ZXBz
IHdoaWNoIGlzIHRydWUgaWYKKyAgICAvLworICAgIC8vICAgfEMxfCp8cjF8XihuLTEpKlsxICsg
fEMyL0MxfF0gPD0gZXBzCisgICAgLy8KKyAgICAvLyBvcgorICAgIC8vCisgICAgLy8gICBuID49
IDEgKyBsb2coZXBzL0MpL2xvZyh8cjF8KQorICAgIC8vCisgICAgLy8gd2hlcmUgQyA9IHxDMXwq
WzErfEMyL0MxfF0gPSB8QzF8ICsgfEMyfC4KKyAgICAvLworICAgIC8vIENhc2UgMjogcjEgYW5k
IHIyIGFyZSBjb21wbGV4CisgICAgLy8KKyAgICAvLyBUaG5lIHdlIGNhbiB3cml0ZSByMT1yKmV4
cChpKnApIGFuZCByMj1yKmV4cCgtaSpwKS4gU28sCisgICAgLy8KKyAgICAvLyAgIHxoKG4pfCA9
IHxDMipyXihuLTEpKmV4cCgtaSpwKihuLTEpKSArIEMxKnJeKG4tMSkqZXhwKGkqcCoobi0xKSl8
CisgICAgLy8gICAgICAgICAgPSB8QzF8KnJeKG4tMSkqfDEgKyBDMi9DMSpleHAoLWkqcCoobi0x
KSkvZXhwKGkqbioobi0xKSl8CisgICAgLy8gICAgICAgICAgPD0gfEMxfCpyXihuLTEpKlsxICsg
fEMyL0MxfF0KKyAgICAvLworICAgIC8vIEFnYWluLCB0aGlzIGlzIGVhc2lseSBzb2x2ZWQgdG8g
Z2l2ZQorICAgIC8vCisgICAgLy8gICBuID49IDEgKyBsb2coZXBzL0MpL2xvZyhyKQorICAgIC8v
CisgICAgLy8gd2hlcmUgQyA9IHxDMXwqWzErfEMyL0MxfF0gPSB8QzF8ICsgfEMyfC4KKyAgICAv
LworICAgIC8vIENhc2UgMzogUmVwZWF0ZWQgcm9vdHMsIHIxPXIyPXIuCisgICAgLy8KKyAgICAv
LyBJbiB0aGlzIGNhc2UsCisgICAgLy8KKyAgICAvLyAgIEgoeikgPSAoYjArYjEveitiMi96XjIp
L1soMS1yL3opXjIKKyAgICAvLworICAgIC8vIEV4cGFuZGluZyB0aGlzIGluIHBvd2VycyBvZiAx
L3ogZ2l2ZXM6CisgICAgLy8KKyAgICAvLyAgIEgoeikgPSBDMSpzdW0oKGkrMSkqcl5pL3peaSkg
LSBDMiAqIHN1bShyXihpLTIpL3peaSkgKyBiMi9yXjIKKyAgICAvLyAgICAgICAgPSBiMi9yXjIg
KyBzdW0oW0MxKihpKzEpKnJeaSArIEMyKnJeKGktMildL3peaSkKKyAgICAvLyB3aGVyZQorICAg
IC8vICAgQzEgPSAoYjAqcl4yK2IxKnIrYjIpL3JeMgorICAgIC8vICAgQzIgPSBiMSpyKzIqYjIK
KyAgICAvLworICAgIC8vIFRodXMsIHRoZSBpbXB1bHNlIHJlc3BvbnNlIGlzCisgICAgLy8KKyAg
ICAvLyAgIGgobikgPSBDMSoobisxKSpyXm4gKyBDMipyXihuLTIpCisgICAgLy8gICAgICAgID0g
cl4obi0yKSpbQzEqKG4rMSkqcl4yK0MyXQorICAgIC8vCisgICAgLy8gU28KKyAgICAvLworICAg
IC8vICAgfGgobil8ID0gfHJ8XihuLTIpKnxDMSoobisxKSpyXjIrQzJ8CisgICAgLy8KKyAgICAv
LyBUbyBmaW5kIG4gc3VjaCB0aGF0IHxoKG4pfCA8IGVwcywgd2UgbmVlZCBhIG51bWVyaWNhbCBt
ZXRob2QgaW4KKyAgICAvLyBnZW5lcmFsLCBzbyB0aGVyZSdzIG5vIHJlYWwgcmVhc29uIHRvIHNp
bXBsaWZ5IHRoaXMgb3IgdXNlIG90aGVyCisgICAgLy8gYXBwcm94aW1hdGlvbnMuIEp1c3Qgc29s
dmUgfGgobil8PWVwcyBkaXJlY3RseS4KKyAgICAvLworICAgIC8vIFRodXMsIGZvciBhbiBzZXQg
b2YgZmlsdGVyIGNvZWZmaWNpZW50cywgd2UgY2FuIGNvbXB1dGUgdGhlIHRhaWwKKyAgICAvLyB0
aW1lLgorICAgIC8vCisKKyAgICAvLyBJZiB0aGUgbWF4aW11bSBhbXBsaXR1ZGUgb2YgdGhlIGlt
cHVsc2UgcmVzcG9uc2UgaXMgbGVzcyB0aGFuCisgICAgLy8gdGhpcywgd2UgYXNzdW1lIHRoYXQg
d2UndmUgcmVhY2hlZCB0aGUgdGFpbCBvZiB0aGUgcmVzcG9uc2UuCisgICAgLy8gQ3VycmVudGx5
LCB0aGlzIG1lYW5zIHRoYXQgdGhlIGltcHVsc2UgaXMgbGVzcyB0aGFuIDEgYml0IG9mIGEKKyAg
ICAvLyAxNi1iaXQgUENNIHZhbHVlLgorICAgIGNvbnN0ZXhwciBkb3VibGUgbWF4VGFpbEFtcGxp
dHVkZSA9IDEgLyAzMjc2OC4wOworCisgICAgLy8gRmluZCB0aGUgcm9vdHMgb2YgMSthMS96K2Ey
L3peMiA9IDAuIE9yIGVxdWl2YWxlbnRseSwKKyAgICAvLyB6XjIrYTEqeithMiA9IDAuIEZyb20g
dGhlIHF1YWRyYXRpYyBmb3JtdWxhIHRoZSByb290cyBhcmUKKyAgICAvLyAoLWExKy8tc3FydChh
MV4yLTQqYTIpKS8yLgorCisgICAgZG91YmxlIGExID0gbV9hMVtjb2VmSW5kZXhdOworICAgIGRv
dWJsZSBhMiA9IG1fYTJbY29lZkluZGV4XTsKKyAgICBkb3VibGUgYjAgPSBtX2IwW2NvZWZJbmRl
eF07CisgICAgZG91YmxlIGIxID0gbV9iMVtjb2VmSW5kZXhdOworICAgIGRvdWJsZSBiMiA9IG1f
YjJbY29lZkluZGV4XTsKKworICAgIGRvdWJsZSBkaXNjcmltID0gYTEgKiBhMSAtIDQgKiBhMjsK
KyAgICBpZiAoZGlzY3JpbSA+IDApIHsKKyAgICAgICAgLy8gQ29tcHV0ZSB0aGUgcmVhbCByb290
cyBzbyB0aGF0IHIxIGhhcyB0aGUgbGFyZ2VzdCBtYWduaXR1ZGUuCisgICAgICAgIGRvdWJsZSBy
cGx1cyA9ICgtYTEgKyBzdGQ6OnNxcnQoZGlzY3JpbSkpIC8gMjsKKyAgICAgICAgZG91YmxlIHJt
aW51cyA9ICgtYTEgLSBzdGQ6OnNxcnQoZGlzY3JpbSkpIC8gMjsKKyAgICAgICAgZG91YmxlIHIx
ID0gc3RkOjpmYWJzKHJwbHVzKSA+PSBzdGQ6OmZhYnMocm1pbnVzKSA/IHJwbHVzIDogcm1pbnVz
OworICAgICAgICAvLyBVc2UgdGhlIGZhY3QgdGhhdCBhMiA9IHIxKnIyCisgICAgICAgIGRvdWJs
ZSByMiA9IGEyIC8gcjE7CisKKyAgICAgICAgZG91YmxlIGMxID0gKGIwICogcjEgKiByMSArIGIx
ICogcjEgKyBiMikgLyAocjIgLSByMSk7CisgICAgICAgIGRvdWJsZSBjMiA9IChiMCAqIHIyICog
cjIgKyBiMSAqIHIyICsgYjIpIC8gKHIyIC0gcjEpOworCisgICAgICAgIEFTU0VSVChzdGQ6Omlz
ZmluaXRlKHIxKSk7CisgICAgICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKHIyKSk7CisgICAgICAg
IEFTU0VSVChzdGQ6OmlzZmluaXRlKGMxKSk7CisgICAgICAgIEFTU0VSVChzdGQ6OmlzZmluaXRl
KGMyKSk7CisKKyAgICAgICAgLy8gSXQncyBwb3NzaWJsZSBmb3IgbWF4VGFpbEFtcGxpdHVkZSB0
byBiZSBncmVhdGVyIHRoYW4gYzEgKyBjMi4KKyAgICAgICAgLy8gVGhpcyBtYXkgcHJvZHVjZSBh
IG5lZ2F0aXZlIHRhaWwgZnJhbWUuIEp1c3QgY2xhbXAgdGhlIHRhaWwKKyAgICAgICAgLy8gZnJh
bWUgdG8gMC4KKyAgICAgICAgZG91YmxlIHRhaWxGcmFtZSA9IGNsYW1wVG8oMSArIHN0ZDo6bG9n
KG1heFRhaWxBbXBsaXR1ZGUgLyAoc3RkOjpmYWJzKGMxKSArIHN0ZDo6ZmFicyhjMikpKSAvIHN0
ZDo6bG9nKHN0ZDo6ZmFicyhyMSkpLCAwKTsKKworICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0
ZSh0YWlsRnJhbWUpKTsKKyAgICAgICAgcmV0dXJuIHRhaWxGcmFtZTsKKyAgICB9CisKKyAgICBp
ZiAoZGlzY3JpbSA8IDApIHsKKyAgICAgICAgLy8gVHdvIGNvbXBsZXggcm9vdHMuCisgICAgICAg
IC8vIE9uZSByb290IGlzIC1hMS8yICsgaSpzcXJ0KC1kaXNjcmltKS8yLgorICAgICAgICBkb3Vi
bGUgeCA9IC1hMSAvIDI7CisgICAgICAgIGRvdWJsZSB5ID0gc3RkOjpzcXJ0KC1kaXNjcmltKSAv
IDI7CisgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IHIxKHgsIHkpOworICAgICAgICBzdGQ6
OmNvbXBsZXg8ZG91YmxlPiByMih4LCAteSk7CisgICAgICAgIGRvdWJsZSByID0gc3RkOjpoeXBv
dCh4LCB5KTsKKworICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShyKSk7CisKKyAgICAgICAg
ZG91YmxlIHRhaWxGcmFtZSA9IDA7CisgICAgICAgIC8vIEl0J3MgcG9zc2libGUgZm9yIHIgdG8g
YmUgMS4gKExQRiB3aXRoIFEgdmVyeSBsYXJnZSBjYW4gY2F1c2UgdGhpcy4pCisgICAgICAgIGlm
IChyID09IDEpCisgICAgICAgICAgICB0YWlsRnJhbWUgPSBtYXhGcmFtZTsKKyAgICAgICAgZWxz
ZSB7CisgICAgICAgICAgICBkb3VibGUgYzEgPSBzdGQ6OmFicygoYjAgKiByMSAqIHIxICsgYjEg
KiByMSArIGIyKSAvIChyMiAtIHIxKSk7CisgICAgICAgICAgICBkb3VibGUgYzIgPSBzdGQ6OmFi
cygoYjAgKiByMiAqIHIyICsgYjEgKiByMiArIGIyKSAvIChyMiAtIHIxKSk7CisKKyAgICAgICAg
ICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKGMxKSk7CisgICAgICAgICAgICBBU1NFUlQoc3RkOjpp
c2Zpbml0ZShjMikpOworICAgICAgICAgICAgdGFpbEZyYW1lID0gMSArIHN0ZDo6bG9nKG1heFRh
aWxBbXBsaXR1ZGUgLyAoYzEgKyBjMikpIC8gc3RkOjpsb2cocik7CisgICAgICAgICAgICBpZiAo
IWMxICYmICFjMikgeworICAgICAgICAgICAgICAgIC8vIElmIGMxID0gYzIgPSAwLCB0aGVuIEgo
eikgPSBiMC4gSGVuY2UsIHRoZXJlJ3Mgbm8gdGFpbAorICAgICAgICAgICAgICAgIC8vIGJlY2F1
c2UgdGhpcyBpcyBqdXN0IGEgd2lyZSBmcm9tIGlucHV0IHRvIG91dHB1dC4KKyAgICAgICAgICAg
ICAgICB0YWlsRnJhbWUgPSAwOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAvLyBPdGhlcndpc2UsIGNoZWNrIHRoYXQgdGhlIHRhaWwgaGFzIGZpbml0ZSBsZW5ndGguIE5v
dAorICAgICAgICAgICAgICAgIC8vIHN0cmljdGx5IG5lY2Vzc2FyeSwgYnV0IHdlIHdhbnQgdG8g
a25vdyBpZiB0aGlzIGV2ZXIKKyAgICAgICAgICAgICAgICAvLyBoYXBwZW5zLgorICAgICAgICAg
ICAgICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKHRhaWxGcmFtZSkpOworICAgICAgICAgICAgfQor
ICAgICAgICB9CisgICAgICAgIHJldHVybiB0YWlsRnJhbWU7CisgICAgfQorCisgICAgLy8gUmVw
ZWF0ZWQgcm9vdHMuIFRoaXMgc2hvdWxkIGJlIHByZXR0eSByYXJlIGJlY2F1c2UgYWxsIHRoZQor
ICAgIC8vIGNvZWZmaWNpZW50cyBuZWVkIHRvIGJlIGp1c3QgdGhlIHJpZ2h0IHZhbHVlcyB0byBn
ZXQgYQorICAgIC8vIGRpc2NyaW1pbmFudCBvZiBleGFjdGx5IHplcm8uCisgICAgZG91YmxlIHIg
PSAtYTEgLyAyOworCisgICAgZG91YmxlIHRhaWxGcmFtZSA9IDA7CisgICAgaWYgKCFyKSB7Cisg
ICAgICAgIC8vIERvdWJsZSBwb2xlIGF0IDAuIFRoaXMganVzdCBkZWxheXMgdGhlIHNpZ25hbCBi
eSAyIGZyYW1lcywKKyAgICAgICAgLy8gc28gc2V0IHRoZSB0YWlsIGZyYW1lIHRvIDIuCisgICAg
ICAgIHRhaWxGcmFtZSA9IDI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZG91YmxlIGMxID0gKGIw
ICogciAqIHIgKyBiMSAqIHIgKyBiMikgLyAociAqIHIpOworICAgICAgICBkb3VibGUgYzIgPSBi
MSAqIHIgKyAyICogYjI7CisKKyAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzEpKTsKKyAg
ICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzIpKTsKKworICAgICAgICAvLyBJdCBjYW4gaGFw
cGVuIHRoYXQgYzE9YzI9MC4gVGhpcyBiYXNpY2FsbHkgbWVhbnMgdGhhdCBIKHopID0KKyAgICAg
ICAgLy8gY29uc3RhbnQsIHdoaWNoIGlzIHRoZSBsaW1pdGluZyBjYXNlIGZvciBzZXZlcmFsIG9m
IHRoZQorICAgICAgICAvLyBiaXF1YWQgZmlsdGVycy4KKyAgICAgICAgaWYgKCFjMSAmJiAhYzIp
CisgICAgICAgICAgICB0YWlsRnJhbWUgPSAwOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAg
IC8vIFRoZSBmdW5jdGlvbiBjKihuKzEpKnJebiBpcyBub3QgbW9ub3RvbmljLCBidXQgaXQncyBl
YXN5IHRvCisgICAgICAgICAgICAvLyBmaW5kIHRoZSBtYXggcG9pbnQgc2luY2UgdGhlIGRlcml2
YXRpdmUgaXMKKyAgICAgICAgICAgIC8vIGMqcl5uKigxKyhuKzEpKmxvZyhyKSkuIFRoaXMgaGFz
IGEgcm9vdCBhdAorICAgICAgICAgICAgLy8gLSgxK2xvZyhyKSkvbG9nKHIpLiBzbyB3ZSBjYW4g
c3RhcnQgb3VyIHNlYXJjaCBmcm9tIHRoYXQKKyAgICAgICAgICAgIC8vIHBvaW50IHRvIG1heEZy
YW1lcy4KKworICAgICAgICAgICAgZG91YmxlIGxvdyA9IHN0ZDo6Y2xhbXAoLSgxICsgc3RkOjps
b2cocikpIC8gc3RkOjpsb2cociksIDEuMCwgc3RhdGljX2Nhc3Q8ZG91YmxlPihtYXhGcmFtZSAt
IDEpKTsKKyAgICAgICAgICAgIGRvdWJsZSBoaWdoID0gbWF4RnJhbWU7CisKKyAgICAgICAgICAg
IEFTU0VSVChzdGQ6OmlzZmluaXRlKGxvdykpOworICAgICAgICAgICAgQVNTRVJUKHN0ZDo6aXNm
aW5pdGUoaGlnaCkpOworCisgICAgICAgICAgICB0YWlsRnJhbWUgPSByb290RmluZGVyKGxvdywg
aGlnaCwgc3RkOjpsb2cobWF4VGFpbEFtcGxpdHVkZSksIGMxLCBjMiwgcik7CisgICAgICAgIH0K
KyAgICB9CisKKyAgICByZXR1cm4gdGFpbEZyYW1lOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9h
dWRpby9CaXF1YWQuaAppbmRleCA3MTM0OTRjOTE0ZDMzNzg2NDNlMjlhODBiYzM5ZTc3MzY2ZGYx
ODJiLi4zYTk5ZmQyZmUxNzllYjdjZDExOTFlNjFiZTk1NWY5MGQ4ZjNjYjcxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuaApAQCAtNDYsMjYgKzQ2LDIzIEBAIHB1YmxpYzoK
ICAgICBCaXF1YWQoKTsKICAgICB+QmlxdWFkKCk7CiAKKyAgICBzdGF0aWMgY29uc3Qgc2l6ZV90
IE1heEZyYW1lc1RvUHJvY2VzczsKKwogICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291
cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKTsKIAorICAgIGJvb2wg
aGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMoKSBjb25zdCB7IHJldHVybiBtX2hhc1NhbXBsZUFjY3Vy
YXRlVmFsdWVzOyB9CisgICAgdm9pZCBzZXRIYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcyhib29sIGhh
c1NhbXBsZUFjY3VyYXRlVmFsdWVzKSB7IG1faGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMgPSBoYXNT
YW1wbGVBY2N1cmF0ZVZhbHVlczsgfQorCiAgICAgLy8gZnJlcXVlbmN5IGlzIDAgLSAxIG5vcm1h
bGl6ZWQsIHJlc29uYW5jZSBhbmQgZGJHYWluIGFyZSBpbiBkZWNpYmVscy4KICAgICAvLyBRIGlz
IGEgdW5pdGxlc3MgcXVhbGl0eSBmYWN0b3IuCi0gICAgdm9pZCBzZXRMb3dwYXNzUGFyYW1zKGRv
dWJsZSBmcmVxdWVuY3ksIGRvdWJsZSByZXNvbmFuY2UpOwotICAgIHZvaWQgc2V0SGlnaHBhc3NQ
YXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIHJlc29uYW5jZSk7Ci0gICAgdm9pZCBzZXRC
YW5kcGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSk7Ci0gICAgdm9pZCBzZXRM
b3dTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKTsKLSAgICB2b2lk
IHNldEhpZ2hTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKTsKLSAg
ICB2b2lkIHNldFBlYWtpbmdQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEsIGRvdWJs
ZSBkYkdhaW4pOwotICAgIHZvaWQgc2V0QWxscGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBk
b3VibGUgUSk7Ci0gICAgdm9pZCBzZXROb3RjaFBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3Vi
bGUgUSk7Ci0KLSAgICAvLyBTZXQgdGhlIGJpcXVhZCBjb2VmZmljaWVudHMgZ2l2ZW4gYSBzaW5n
bGUgemVybyAob3RoZXIgemVybyB3aWxsIGJlIGNvbmp1Z2F0ZSkKLSAgICAvLyBhbmQgYSBzaW5n
bGUgcG9sZSAob3RoZXIgcG9sZSB3aWxsIGJlIGNvbmp1Z2F0ZSkKLSAgICB2b2lkIHNldFplcm9Q
b2xlUGFpcnMoc3RkOjpjb21wbGV4PGRvdWJsZT4gemVybywgc3RkOjpjb21wbGV4PGRvdWJsZT4g
cG9sZSk7Ci0KLSAgICAvLyBTZXQgdGhlIGJpcXVhZCBjb2VmZmljaWVudHMgZ2l2ZW4gYSBzaW5n
bGUgcG9sZSAob3RoZXIgcG9sZSB3aWxsIGJlIGNvbmp1Z2F0ZSkKLSAgICAvLyAoVGhlIHplcm9l
cyB3aWxsIGJlIHRoZSBpbnZlcnNlIG9mIHRoZSBwb2xlcykKLSAgICB2b2lkIHNldEFsbHBhc3NQ
b2xlKHN0ZDo6Y29tcGxleDxkb3VibGU+KTsKKyAgICB2b2lkIHNldExvd3Bhc3NQYXJhbXMoc2l6
ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgcmVzb25hbmNlKTsKKyAgICB2b2lk
IHNldEhpZ2hwYXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91Ymxl
IHJlc29uYW5jZSk7CisgICAgdm9pZCBzZXRCYW5kcGFzc1BhcmFtcyhzaXplX3QgaW5kZXgsIGRv
dWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRKTsKKyAgICB2b2lkIHNldExvd1NoZWxmUGFyYW1zKHNp
emVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2Fpbik7CisgICAgdm9pZCBz
ZXRIaWdoU2hlbGZQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUg
ZGJHYWluKTsKKyAgICB2b2lkIHNldFBlYWtpbmdQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUg
ZnJlcXVlbmN5LCBkb3VibGUgUSwgZG91YmxlIGRiR2Fpbik7CisgICAgdm9pZCBzZXRBbGxwYXNz
UGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpOworICAgIHZv
aWQgc2V0Tm90Y2hQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUg
USk7CiAKICAgICAvLyBSZXNldHMgZmlsdGVyIHN0YXRlCiAgICAgdm9pZCByZXNldCgpOwpAQCAt
NzMsMzYgKzcwLDQxIEBAIHB1YmxpYzoKICAgICAvLyBGaWx0ZXIgcmVzcG9uc2UgYXQgYSBzZXQg
b2YgbiBmcmVxdWVuY2llcy4gVGhlIG1hZ25pdHVkZSBhbmQKICAgICAvLyBwaGFzZSByZXNwb25z
ZSBhcmUgcmV0dXJuZWQgaW4gbWFnUmVzcG9uc2UgYW5kIHBoYXNlUmVzcG9uc2UuCiAgICAgLy8g
VGhlIHBoYXNlIHJlc3BvbnNlIGlzIGluIHJhZGlhbnMuCi0gICAgdm9pZCBnZXRGcmVxdWVuY3lS
ZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZs
b2F0KiBtYWdSZXNwb25zZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0KiBw
aGFzZVJlc3BvbnNlKTsKKyAgICB2b2lkIGdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIG5G
cmVxdWVuY2llcywgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBm
bG9hdCogcGhhc2VSZXNwb25zZSk7CisKKyAgICAvLyBDb21wdXRlIHRhaWwgZnJhbWUgYmFzZWQg
b24gdGhlIGZpbHRlciBjb2VmZmljZW50cyBhdCBpbmRleAorICAgIC8vIHxjb2VmSW5kZXh8LiBU
aGUgdGFpbCBmcmFtZSBpcyB0aGUgZnJhbWUgbnVtYmVyIHdoZXJlIHRoZQorICAgIC8vIGltcHVs
c2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBmYWxscyBiZWxvdyBhIHRocmVzaG9sZCB2YWx1ZS4K
KyAgICAvLyBUaGUgbWF4aW11bSBhbGxvd2VkIGZyYW1lIHZhbHVlIGlzIGdpdmVuIGJ5IHxtYXhG
cmFtZXwuIFRoaXMKKyAgICAvLyBsaW1pdHMgaG93IG11Y2ggd29yayBpcyBkb25lIGluIGNvbXB1
dGluZyB0aGUgZnJhbWUgbnVtYmVyLgorICAgIGRvdWJsZSB0YWlsRnJhbWUoc2l6ZV90IGNvZWZJ
bmRleCwgZG91YmxlIG1heEZyYW1lKTsKKwogcHJpdmF0ZToKLSAgICB2b2lkIHNldE5vcm1hbGl6
ZWRDb2VmZmljaWVudHMoZG91YmxlIGIwLCBkb3VibGUgYjEsIGRvdWJsZSBiMiwgZG91YmxlIGEw
LCBkb3VibGUgYTEsIGRvdWJsZSBhMik7Ci0gICAgCisgICAgdm9pZCBzZXROb3JtYWxpemVkQ29l
ZmZpY2llbnRzKHNpemVfdCBpbmRleCwgZG91YmxlIGIwLCBkb3VibGUgYjEsIGRvdWJsZSBiMiwg
ZG91YmxlIGEwLCBkb3VibGUgYTEsIGRvdWJsZSBhMik7CisKICAgICAvLyBGaWx0ZXIgY29lZmZp
Y2llbnRzLiBUaGUgZmlsdGVyIGlzIGRlZmluZWQgYXMKICAgICAvLwogICAgIC8vIHlbbl0gKyBt
X2ExKnlbbi0xXSArIG1fYTIqeVtuLTJdID0gbV9iMCp4W25dICsgbV9iMSp4W24tMV0gKyBtX2Iy
Knhbbi0yXS4KLSAgICBkb3VibGUgbV9iMDsKLSAgICBkb3VibGUgbV9iMTsKLSAgICBkb3VibGUg
bV9iMjsKLSAgICBkb3VibGUgbV9hMTsKLSAgICBkb3VibGUgbV9hMjsKKyAgICBBdWRpb0RvdWJs
ZUFycmF5IG1fYjA7CisgICAgQXVkaW9Eb3VibGVBcnJheSBtX2IxOworICAgIEF1ZGlvRG91Ymxl
QXJyYXkgbV9iMjsKKyAgICBBdWRpb0RvdWJsZUFycmF5IG1fYTE7CisgICAgQXVkaW9Eb3VibGVB
cnJheSBtX2EyOwogCiAjaWYgVVNFKEFDQ0VMRVJBVEUpCiAgICAgdm9pZCBwcm9jZXNzRmFzdChj
b25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNz
KTsKICAgICB2b2lkIHByb2Nlc3NTbGljZUZhc3QoZG91YmxlKiBzb3VyY2VQLCBkb3VibGUqIGRl
c3RQLCBkb3VibGUqIGNvZWZmaWNpZW50c1AsIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOwotCiAg
ICAgQXVkaW9Eb3VibGVBcnJheSBtX2lucHV0QnVmZmVyOwogICAgIEF1ZGlvRG91YmxlQXJyYXkg
bV9vdXRwdXRCdWZmZXI7CisjZW5kaWYKIAotI2Vsc2UKICAgICAvLyBGaWx0ZXIgbWVtb3J5CiAg
ICAgZG91YmxlIG1feDE7IC8vIGlucHV0IGRlbGF5ZWQgYnkgMSBzYW1wbGUKICAgICBkb3VibGUg
bV94MjsgLy8gaW5wdXQgZGVsYXllZCBieSAyIHNhbXBsZXMKICAgICBkb3VibGUgbV95MTsgLy8g
b3V0cHV0IGRlbGF5ZWQgYnkgMSBzYW1wbGUKICAgICBkb3VibGUgbV95MjsgLy8gb3V0cHV0IGRl
bGF5ZWQgYnkgMiBzYW1wbGVzCi0jZW5kaWYKKworICAgIGJvb2wgbV9oYXNTYW1wbGVBY2N1cmF0
ZVZhbHVlcyB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBmOWFhYzY5OGE1OGQ5MmM1MzQxMWFhY2E2MzRiOGU1
MDRmMTM1ZDY2Li42ZTU3MzRkOGE2ZGU3Nzg1Yjc1NTg3ZTJjNWIyNDQ2MjExOTExMmJmIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMC0wOC0zMSAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBwcm9wZXIgay1y
YXRlIGF1dG9tYXRpb24gc3VwcG9ydCBmb3IgQmlxdWFkRmlsdGVyTm9kZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MDI3CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyBu
b3cgdGhhdCBtb3JlIGNoZWNrcyBhcmUgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9r
LXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFj
ZS9rLXJhdGUtYmlxdWFkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uv
YmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFj
ZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQ6CisKIDIwMjAtMDgtMzEgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1tYW5kYXRvcnktZ2V0U3Rh
dHMuaHR0cHMuaHRtbCBzbyB0aGF0IGl0IG5vIGxvbmdlciB0aW1lcyBvdXQgaWYgZmlyc3QgdGVz
dCBmYWlscwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9r
LXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRp
b3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhwZWN0ZWQudHh0Cmlu
ZGV4IGMzMGUzZTg4OTM1MWRkMzRmNWE0NzM1NTEzOTY5YzFlMjQ4N2JjZjkuLjkzMjhiMTk5Yzkw
NjMzNGZhYTY4YmQyZTE5N2JlMzc3MWIxZWM1MDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
YXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWJpcXVhZC1jb25uZWN0aW9uLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1iaXF1YWQt
Y29ubmVjdGlvbi1leHBlY3RlZC50eHQKQEAgLTI4LDcgKzI4LDcgQEAgUEFTUyAgIFRlc3QgQmlx
dWFkRmlsdGVyTm9kZShjb250ZXh0LCB7InR5cGUiOiJiYW5kcGFzcyIsImZyZXF1ZW5jeSI6NDQw
LCJRIjowfSkKIFBBU1MgICBROiBtb2Qub2Zmc2V0LnNldFZhbHVlQXRUaW1lKDAsMCkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIFE6IG1vZC5vZmZzZXQubGluZWFyUmFtcFRv
VmFsdWVBdFRpbWUoMTAwLDAuMTI1KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNT
ICAgay1yYXRlIFEgd2l0aCBpbnB1dDogb3V0cHV0WzAsMjA0OF0gZXF1YWxzIFswLDAuOTgyMjg3
MTY4NTAyODA3NiwwLjM2ODEyNDMwNjIwMTkzNDgsLTAuODQ0MzI3ODA3NDI2NDUyNiwtMC42ODQ1
NDY3MDkwNjA2NjksMC41ODc3ODUzNjMxOTczMjY3LDAuOTA0ODI2NjQxMDgyNzYzNywtMC4yNDg2
OTAzMDcxNDAzNTAzNCwtMC45OTgwMjY2MDk0MjA3NzY0LC0wLjEyNTMzMjQ0NDkwNjIzNDc0LDAu
OTUxMDU2NzE4ODI2Mjk0LDAuNDgxNzUyODQyNjY0NzE4NjMsLTAuNzcwNTEzNzEzMzU5ODMyOCwt
MC43NzA1MTIyMjMyNDM3MTM0LDAuNDgxNzU0NjAxMDAxNzM5NSwwLjk1MTA1NjAwMzU3MDU1NjYu
Li5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xk
IjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAotUEFTUyAgIGstcmF0ZSBRIHdpdGggaW5wdXQ6
IG91dHB1dFsyMDQ4Ol0gZXF1YWxzIFswLjAwNTYzNTU5MzA4NjQ4MTA5NCwwLjAwMzcxNDY1NTI5
MzE1MTczNjMsMC4wMDE5OTA2OTU3MTY4MTMyMDY3LDAuMDAzMjk1MjY4MTY0OTQ3NjI5LDAuMDA0
ODMyMjY0MDM1OTQwMTcsMC4wMDI4MDA3MDYzMDgzMzUwNjYsLTAuMDAxMjc4OTM1Njk4NzkyMzM4
NCwtMC4wMDI4MzM2NjcyMTEyMzQ1Njk1LC0wLjAwMTQzNzU0MTIxMzgxNzg5NDUsLTAuMDAxMjY3
MTY3MTU3NDkzNTMxNywtMC4wMDQwOTk1MjM2NDg2MTk2NTIsLTAuMDA2MjU2MzQ0MjYyNTEwNTM4
LC0wLjAwNDQ3OTg5NzIwODUxMTgyOSwtMC4wMDEyMDE5MjQyODU4NTE0MTksLTAuMDAwNjQ1MDk3
NTc3OTQ0Mzk3OSwtMC4wMDIwODY3NTIwOTQzMjg0MDM1Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQi
OjB9LiAKK1BBU1MgICBrLXJhdGUgUSB3aXRoIGlucHV0OiBvdXRwdXRbMjA0ODpdIGVxdWFscyBb
MC4wMDU2MzU1OTIxNTUxNTg1MiwwLjAwMzcxNDY1NDU5NDY1OTgwNTMsMC4wMDE5OTA2OTU0ODM5
ODI1NjMsMC4wMDMyOTUyNjg2MzA2MDg5MTYzLDAuMDA0ODMyMjY0OTY3MjYyNzQ1LDAuMDAyODAw
NzA3NzA1MzE4OTI3OCwtMC4wMDEyNzg5MzQxODUzOTMxNTQ2LC0wLjAwMjgzMzY2NTU4MTQyMDA2
NCwtMC4wMDE0Mzc1Mzk3MDA0MTg3MTA3LC0wLjAwMTI2NzE2NTg3NjkyNDk5MTYsLTAuMDA0MDk5
NTIyNzE3Mjk3MDc3LC0wLjAwNjI1NjM0NDI2MjUxMDUzOCwtMC4wMDQ0Nzk4OTc2NzQxNzMxMTcs
LTAuMDAxMjAxOTI1MTAwNzU4NjcxOCwtMC4wMDA2NDUwOTg3NDIwOTc2MTYyLC0wLjAwMjA4Njc1
MzcyNDE0MjkwOS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1
dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCiBQQVNTIDwgW1EgQXVkaW9Q
YXJhbV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgOSBhc3NlcnRpb25zKSAKIFBBU1Mg
PiBbR2FpbiBBdWRpb1BhcmFtXSBrLXJhdGUgaW5wdXQgd29ya3MgCiBQQVNTICAgZ2FpbjogbmV3
IE9zY2lsbGF0b3JOb2RlKGNvbnRleHQsIHtmcmVxdWVuY3k6IDE3NjB9KSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCkBAIC01MCw3ICs1MCw3IEBAIFBBU1MgICBUZXN0IEJpcXVhZEZpbHRl
ck5vZGUoY29udGV4dCwgeyJ0eXBlIjoibG93cGFzcyIsImZyZXF1ZW5jeSI6MjIwMCwiZGV0dW5l
CiBQQVNTICAgZGV0dW5lOiBtb2Qub2Zmc2V0LnNldFZhbHVlQXRUaW1lKDAsMCkgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGRldHVuZTogbW9kLm9mZnNldC5saW5lYXJSYW1w
VG9WYWx1ZUF0VGltZSgtMTMzMjMuOTQ1MzcwMDk0NDI3LDAuMTI1KSBkaWQgbm90IHRocm93IGFu
IGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGRldHVuZSB3aXRoIGlucHV0OiBvdXRwdXRbMCwy
MDQ4XSBlcXVhbHMgWzAsMC4xMzEwNjE3MTc4Njc4NTEyNiwwLjQ4NzYxNDk4OTI4MDcwMDcsMC44
MjgwNzI0ODgzMDc5NTI5LDAuOTcwODAzOTE2NDU0MzE1MiwwLjk5ODc4NzY0MTUyNTI2ODYsMC45
NDcyMzczMTI3OTM3MzE3LDAuNzc3NDUzNzgwMTc0MjU1NCwwLjUwMTg1MTI2MDY2MjA3ODksMC4x
NzE1NTk0NTMwMTA1NTkwOCwtMC4xNzQzOTg0ODE4NDU4NTU3LC0wLjUwMjI3NjgzNzgyNTc3NTEs
LTAuNzcyMTQxNTc1ODEzMjkzNSwtMC45NDk1MDU5ODQ3ODMxNzI2LC0xLjAxNDI2NTE3OTYzNDA5
NDIsLTAuOTU5NjE4NTY4NDIwNDEwMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCi1QQVNT
ICAgay1yYXRlIGRldHVuZSB3aXRoIGlucHV0OiBvdXRwdXRbMjA0ODpdIGVxdWFscyBbMC4wMTE4
OTA5MjU0NjcwMTQzMTMsMC4wMTE5Mzg2MjIyMjEzNTA2NywwLjAxMTk4NTc0MzQxODMzNTkxNSww
LjAxMjAzMjI1MzY2NzcxMjIxMiwwLjAxMjA3ODE4OTI5MTA1OTk3LDAuMDEyMTIzNjQ1MjgzMjgx
ODAzLDAuMDEyMTY4NzczNDQ5OTU3MzcsMC4wMTIyMTM3NTcyNjE2MzM4NzMsMC4wMTIyNTg3OTEz
NjQ3Mjk0MDQsMC4wMTIzMDQwNjI5NTUwODE0NjMsMC4wMTIzNDk3MjQ3Njk1OTIyODUsMC4wMTIz
OTU4NzgzMjI0MjI1MDQsMC4wMTI0NDI1NjI3MjkxMjAyNTUsMC4wMTI0ODk3NTE5MTI2NTM0NDYs
MC4wMTI1MzczNTE4MDk0NDIwNDMsMC4wMTI1ODUyMTgwNjQ0ODY5OC4uLl0gd2l0aCBhbiBlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4gCitQQVNTICAgay1yYXRlIGRldHVuZSB3aXRoIGlucHV0OiBvdXRwdXRbMjA0
ODpdIGVxdWFscyBbMC4wMTE4OTU4MTc3MDQ0OTg3NjgsMC4wMTE5NDM1MTgxODQxMjU0MjMsMC4w
MTE5OTA2NDIxNzUwNzgzOTIsMC4wMTIwMzcxNTYxNDk3NDQ5ODcsMC4wMTIwODMwOTM2MzU3Mzc4
OTYsMC4wMTIxMjg1NTQyODQ1NzI2MDEsMC4wMTIxNzM2ODUyNDUyMTU4OTMsMC4wMTIyMTg2NzA5
MTk1Mzc1NDQsMC4wMTIyNjM3MDg3NDc5MjMzNzQsMC4wMTIzMDg5ODQwNjM1NjU3MzEsMC4wMTIz
NTQ2NDg2NzIwNDQyNzcsMC4wMTI0MDA4MDUwMTg4NDIyMiwwLjAxMjQ0NzQ5MzE1MDgzMDI2OSww
LjAxMjQ5NDY4NTEyODMzMTE4NCwwLjAxMjU0MjI4NzgxOTA4NzUwNSwwLjAxMjU5MDE1Njg2ODEw
MDE2Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJl
c2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCiBQQVNTIDwgW0RldHVuZSBBdWRpb1Bh
cmFtXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA5IGFzc2VydGlvbnMpIAogUEFTUyA+
IFtBbGwgay1yYXRlIGlucHV0c10gIAogUEFTUyAgIENyZWF0ZTogcmVmTm9kZSA9IG5ldyBCaXF1
YWRGaWx0ZXJOb2RlKGNvbnRleHQsIHsidHlwZSI6InBlYWtpbmciLCJmcmVxdWVuY3kiOjAsImRl
dHVuZSI6MCwiZ2FpbiI6MCwiUSI6MH0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWJpcXVh
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0
ZS1iaXF1YWQtZXhwZWN0ZWQudHh0CmluZGV4IDFlMzExNmU4MDA4Mzk2NjQ1ZmZhYWM3YTc2YjRk
Y2UzYWJiOGEyODAuLjllZTQ5YTdkNzg3ZWRjODcxMjdiYzg3YzA2YzdhMTE3MDY4OTI1YTEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWJpcXVh
ZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9r
LXJhdGUtYmlxdWFkLWV4cGVjdGVkLnR4dApAQCAtMTYsOCArMTYsOCBAQCBQQVNTICAgQWxsIGst
cmF0ZSBwYXJhbXM6IGstcmF0ZSBub2RlOiBmcmVxdWVuY3kubGluZWFyUmFtcFRvVmFsdWVBdFRp
bWUoMCwxKSBkaQogUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBhLXJhdGUgbm9kZTpmcmVxdWVu
Y3kuc2V0VmFsdWVBdFRpbWUoMzUwLDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBB
U1MgICBBbGwgay1yYXRlIHBhcmFtczogYS1yYXRlIG5vZGU6ZnJlcXVlbmN5LmxpbmVhclJhbXBU
b1ZhbHVlQXRUaW1lKDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIEFs
bCBrLXJhdGUgcGFyYW1zOiBPdXRwdXQgb2Ygay1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRl
bnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjAwNTY3MjczNzk1NjA0NzA1OCwwLjAzMTc2MTQyMjc1
MzMzNDA0NSwwLjA5MTUyODk0NDY3MTE1NDAyLDAuMTg4MjIwMzk2NjM3OTE2NTYsMC4zMTUyOTEx
OTYxMDc4NjQ0LDAuNDU4MDIzOTk1MTYxMDU2NSwwLjU5NjIzNjk0NDE5ODYwODQsMC43MDc2NzA5
ODY2NTIzNzQzLDAuNzcxNTgxNjQ5NzgwMjczNCwwLjc3MjA1NTU2NjMxMDg4MjYsMC43MDA2MjE0
ODU3MTAxNDQsMC41NTc4Mjg2NjQ3Nzk2NjMxLDAuMzUzNTk4NzczNDc5NDYxNjcsMC4xMDYzMTc1
Mjc1OTIxODIxNiwtMC4xNTkyMTIzMjEwNDMwMTQ1My4uLl0uIAotUEFTUyAgIEFsbCBrLXJhdGUg
cGFyYW1zOiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRv
IHRoZSBhcnJheSBbMCwwLjAwNTY3MjczNzk1NjA0NzA1OCwwLjAzMTc2MTQyMjc1MzMzNDA0NSww
LjA5MTUyODk0NDY3MTE1NDAyLDAuMTg4MjIwMzk2NjM3OTE2NTYsMC4zMTUyOTExOTYxMDc4NjQ0
LDAuNDU4MDIzOTk1MTYxMDU2NSwwLjU5NjIzNjk0NDE5ODYwODQsMC43MDc2NzA5ODY2NTIzNzQz
LDAuNzcxNTgxNjQ5NzgwMjczNCwwLjc3MjA1NTU2NjMxMDg4MjYsMC43MDA2MjE0ODU3MTAxNDQs
MC41NTc4Mjg2NjQ3Nzk2NjMxLDAuMzUzNTk4NzczNDc5NDYxNjcsMC4xMDYzMTc1Mjc1OTIxODIx
NiwtMC4xNTkyMTIzMjEwNDMwMTQ1My4uLl0uIAotUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBE
aWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBu
b3QgY29uc3RhbnRseSAwIChjb250YWlucyA3ODcyIGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1Mg
ICBBbGwgay1yYXRlIHBhcmFtczogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlz
IGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4wMDU2NzE0MDI5MDUxMzYzNDcsMC4wMzE3NDky
MTQ5NzcwMjU5ODYsMC4wOTE0ODMxMjM2MDA0ODI5NCwwLjE4ODExMDAwODgzNTc5MjU0LDAuMzE1
MDg4NjI5NzIyNTk1MiwwLjQ1NzcxOTc3MzA1NDEyMjksMC41OTU4NTM1MDc1MTg3NjgzLDAuNzA3
MjcxMjE4Mjk5ODY1NywwLjc3MTI2OTAyMzQxODQyNjUsMC43NzE5NjM4MzQ3NjI1NzMyLDAuNzAw
ODk1MDcxMDI5NjYzMSwwLjU1ODU5NTI0MDExNjExOTQsMC4zNTQ5MzkzNDE1NDUxMDUsMC4xMDgy
Mzg1NjI5NDE1NTEyMSwtMC4xNTY3OTg2MDExNTA1MTI3Li4uXS4gCitQQVNTICAgQWxsIGstcmF0
ZSBwYXJhbXM6IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0
ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDc5OTkgZGlmZmVyZW50IHZhbHVl
cykuIAogUEFTUyA8IFtCaXF1YWQgay1yYXRlIEF1ZGlvUGFyYW1zIChhbGwpXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCAxMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbQmlxdWFkIGstcmF0
ZSBRXSAgCiBQQVNTICAgay1yYXRlIFE6IFNldHRpbmcgUS5hdXRvbWF0aW9uUmF0ZSB0byAiay1y
YXRlIiBpcyBlcXVhbCB0byBrLXJhdGUuIApAQCAtMjYsOSArMjYsOSBAQCBQQVNTICAgay1yYXRl
IFE6IGstcmF0ZSBub2RlOiBRLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEwLDEpIGRpZCBub3Qg
dGhyb3cgYW4gZQogUEFTUyAgIGstcmF0ZSBROiBhLXJhdGUgbm9kZTpRLnNldFZhbHVlQXRUaW1l
KDEsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBROiBhLXJh
dGUgbm9kZTpRLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEwLDEpIGRpZCBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uLiAKIFBBU1MgICBrLXJhdGUgUTogT3V0cHV0IG9mIGstcmF0ZSBCaXF1YWRGaWx0
ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSww
LjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEu
Njg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAu
ODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0
LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3
NiwtMi40NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLVBBU1MgICBr
LXJhdGUgUTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0
byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4y
MzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYz
MzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3
NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgs
LTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0MjY4
LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLUZBSUwgWCBrLXJhdGUgUTogRGlmZmVyZW5jZSBi
ZXR3ZWVuIGEtcmF0ZSBhbmQgay1yYXRlIEJpcXVhZEZpbHRlck5vZGUgc2hvdWxkIGhhdmUgY29u
dGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUgZGlmZmVyZW50IGZyb20gMC4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW0JpcXVhZCBrLXJhdGUgUV0gMSBvdXQgb2Yg
OCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK1BBU1MgICBrLXJhdGUgUTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2Rl
IGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2MjA3NjgwNzAyMjA5NSwwLjgyNzc1
NjI4NTY2NzQxOTQsMS4yMzY0NTUyMDIxMDI2NjExLDEuNTQzNjM2NDQxMjMwNzc0LDEuNjg4NjY4
NDg5NDU2MTc2OCwxLjYzMjE2MzUyNDYyNzY4NTUsMS4zNjE4Nzk4MjU1OTIwNDEsMC44OTUwMDIw
NjcwODkwODA4LDAuMjc2NTM3Mjk5MTU2MTg4OTYsLTAuNDI1OTYwODY4NTk3MDMwNjQsLTEuMTMw
NjU4NjI2NTU2Mzk2NSwtMS43NTE2NTQxNDgxMDE4MDY2LC0yLjIwOTg1NzQ2MzgzNjY3LC0yLjQ0
MzE3MDA3MDY0ODE5MzQsLTIuNDE0NjkwNzMyOTU1OTMyNi4uLl0uIAorUEFTUyAgIGstcmF0ZSBR
OiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBp
cyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA3OTk5IGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BB
U1MgPCBbQmlxdWFkIGstcmF0ZSBRXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA4IGFz
c2VydGlvbnMpIAogUEFTUyA+IFtCaXF1YWQgay1yYXRlIGRldHVuZV0gIAogUEFTUyAgIGstcmF0
ZSBkZXR1bmU6IFNldHRpbmcgZGV0dW5lLmF1dG9tYXRpb25SYXRlIHRvICJrLXJhdGUiIGlzIGVx
dWFsIHRvIGstcmF0ZS4gCiBQQVNTICAgay1yYXRlIGRldHVuZTogay1yYXRlIG5vZGU6IGRldHVu
ZS5zZXRWYWx1ZUF0VGltZSgwLDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKQEAgLTM2
LDkgKzM2LDkgQEAgUEFTUyAgIGstcmF0ZSBkZXR1bmU6IGstcmF0ZSBub2RlOiBkZXR1bmUubGlu
ZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTIwMCwxKSBkaWQgbm8KIFBBU1MgICBrLXJhdGUgZGV0dW5l
OiBhLXJhdGUgbm9kZTpkZXR1bmUuc2V0VmFsdWVBdFRpbWUoMCwwKSBkaWQgbm90IHRocm93IGFu
IGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGRldHVuZTogYS1yYXRlIG5vZGU6ZGV0dW5lLmxp
bmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEyMDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAogUEFTUyAgIGstcmF0ZSBkZXR1bmU6IE91dHB1dCBvZiBrLXJhdGUgQmlxdWFkRmlsdGVyTm9k
ZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMzkwNjc1MDA4Mjk2OTY2NTUsMC44Mjgw
NDIzODc5NjIzNDEzLDEuMjM3MTEyMjgzNzA2NjY1LDEuNTQ0Njg1MTI1MzUwOTUyMSwxLjY4OTk1
OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3NzcyODI3LDEuMzYyNTQxNTU2MzU4MzM3NCwwLjg5NDU5
ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2NTQxMjkwMywtMC40Mjk3MjAzNDIxNTkyNzEyNCwtMS4x
MzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgwNzg5NzU2Nzc0OSwtMi4yMTc5MDcxOTAzMjI4NzYsLTIu
NDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1NTE5NDI4MjUzMTc0Li4uXS4gCi1QQVNTICAgay1yYXRl
IGRldHVuZTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0
byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4y
MzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYz
MzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3
NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgs
LTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0MjY4
LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLUZBSUwgWCBrLXJhdGUgZGV0dW5lOiBEaWZmZXJl
bmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBzaG91bGQgaGF2
ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbQmlxdWFkIGstcmF0ZSBkZXR1bmVd
IDEgb3V0IG9mIDggYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitQQVNTICAgay1yYXRlIGRldHVuZTogT3V0cHV0IG9mIGEtcmF0ZSBC
aXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzkwOTEy
MTUxMzM2NywwLjgyODA2MjY1MzU0MTU2NDksMS4yMzcxNTI1NzY0NDY1MzMyLDEuNTQ0NzMwNjYz
Mjk5NTYwNSwxLjY4OTk3MTQ0Njk5MDk2NjgsMS42MzMyODc0Mjk4MDk1NzAzLDEuMzYyMjg3NjQw
NTcxNTk0MiwwLjg5NDEwNzc1ODk5ODg3MDgsMC4yNzM4Mzc5MjQwMDM2MDExLC0wLjQzMDc0NjE5
NzcwMDUwMDUsLTEuMTM3NDcxNjc1ODcyODAyNywtMS43NjAwMjkxOTY3MzkxOTY4LC0yLjIxODky
MDk0NjEyMTIxNiwtMi40NTE3MTczNzY3MDg5ODQ0LC0yLjQyMTMzNjE3NDAxMTIzMDUuLi5dLiAK
K1BBU1MgICBrLXJhdGUgZGV0dW5lOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJh
dGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA3OTk5IGRp
ZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgPCBbQmlxdWFkIGstcmF0ZSBkZXR1bmVdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDggYXNzZXJ0aW9ucykgCiBQQVNTID4gW0JpcXVhZCBrLXJh
dGUgZnJlcXVlbmN5XSAgCiBQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogU2V0dGluZyBmcmVxdWVu
Y3kuYXV0b21hdGlvblJhdGUgdG8gImstcmF0ZSIgaXMgZXF1YWwgdG8gay1yYXRlLiAKIFBBU1Mg
ICBrLXJhdGUgZnJlcXVlbmN5OiBrLXJhdGUgbm9kZTogZnJlcXVlbmN5LnNldFZhbHVlQXRUaW1l
KDM1MCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCkBAIC00Niw5ICs0Niw5IEBAIFBB
U1MgICBrLXJhdGUgZnJlcXVlbmN5OiBrLXJhdGUgbm9kZTogZnJlcXVlbmN5LmxpbmVhclJhbXBU
b1ZhbHVlQXRUaW1lKDAsMSkgZGlkCiBQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogYS1yYXRlIG5v
ZGU6ZnJlcXVlbmN5LnNldFZhbHVlQXRUaW1lKDM1MCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCiBQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogYS1yYXRlIG5vZGU6ZnJlcXVlbmN5Lmxp
bmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAog
UEFTUyAgIGstcmF0ZSBmcmVxdWVuY3k6IE91dHB1dCBvZiBrLXJhdGUgQmlxdWFkRmlsdGVyTm9k
ZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLDAuMzkwNjc1MDA4Mjk2OTY2NTUsMC44Mjgw
NDIzODc5NjIzNDEzLDEuMjM3MTEyMjgzNzA2NjY1LDEuNTQ0Njg1MTI1MzUwOTUyMSwxLjY4OTk1
OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3NzcyODI3LDEuMzYyNTQxNTU2MzU4MzM3NCwwLjg5NDU5
ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2NTQxMjkwMywtMC40Mjk3MjAzNDIxNTkyNzEyNCwtMS4x
MzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgwNzg5NzU2Nzc0OSwtMi4yMTc5MDcxOTAzMjI4NzYsLTIu
NDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1NTE5NDI4MjUzMTc0Li4uXS4gCi1QQVNTICAgay1yYXRl
IGZyZXF1ZW5jeTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNh
bCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMs
MS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwx
LjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCww
LjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0
NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0
MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLUZBSUwgWCBrLXJhdGUgZnJlcXVlbmN5OiBE
aWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBzaG91
bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbQmlxdWFkIGstcmF0ZSBm
cmVxdWVuY3ldIDEgb3V0IG9mIDggYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogT3V0cHV0
IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAs
MC4zOTA2NjkxMzcyMzk0NTYyLDAuODI4MDEzMTgxNjg2NDAxNCwxLjIzNzA1NDEwOTU3MzM2NDMs
MS41NDQ2MTkzMjE4MjMxMjAxLDEuNjg5OTQzMDc1MTgwMDUzNywxLjYzMzQ5MzE4NTA0MzMzNSwx
LjM2MjkwNzY0ODA4NjU0NzksMC44OTUzMDYyODkxOTYwMTQ0LDAuMjc1NzA3NDgzMjkxNjI2LC0w
LjQyODI0MDE4MDAxNTU2Mzk2LC0xLjEzNDUzMjIxMzIxMTA1OTYsLTEuNzU3MDQzMTIzMjQ1MjM5
MywtMi4yMTY0MzkyNDcxMzEzNDc3LC0yLjQ1MDM5Nzk2ODI5MjIzNjMsLTIuNDIxODUyMTExODE2
NDA2Mi4uLl0uIAorUEFTUyAgIGstcmF0ZSBmcmVxdWVuY3k6IERpZmZlcmVuY2UgYmV0d2VlbiBh
LXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNv
bnRhaW5zIDc5OTkgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyA8IFtCaXF1YWQgay1yYXRlIGZy
ZXF1ZW5jeV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgOCBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbQmlxdWFkIGstcmF0ZSBnYWluXSAgCiBQQVNTICAgay1yYXRlIGdhaW46IFNldHRpbmcg
Z2Fpbi5hdXRvbWF0aW9uUmF0ZSB0byAiay1yYXRlIiBpcyBlcXVhbCB0byBrLXJhdGUuIAogUEFT
UyAgIGstcmF0ZSBnYWluOiBrLXJhdGUgbm9kZTogZ2Fpbi5zZXRWYWx1ZUF0VGltZSgxMCwwKSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCkBAIC01Niw4ICs1Niw4IEBAIFBBU1MgICBrLXJh
dGUgZ2Fpbjogay1yYXRlIG5vZGU6IGdhaW4ubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMCwxKSBk
aWQgbm90IHRocm93CiBQQVNTICAgay1yYXRlIGdhaW46IGEtcmF0ZSBub2RlOmdhaW4uc2V0VmFs
dWVBdFRpbWUoMTAsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0
ZSBnYWluOiBhLXJhdGUgbm9kZTpnYWluLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlk
IG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBnYWluOiBPdXRwdXQgb2Yg
ay1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5
MDY3NTAwODI5Njk2NjU1LDAuODI4MDQyMzg3OTYyMzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0
NDY4NTEyNTM1MDk1MjEsMS42ODk5NTk4ODM2ODk4ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2
MjU0MTU1NjM1ODMzNzQsMC44OTQ1OTg1NDM2NDM5NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAu
NDI5NzIwMzQyMTU5MjcxMjQsLTEuMTM2MjY4NzM0OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDks
LTIuMjE3OTA3MTkwMzIyODc2LC0yLjQ1MTE4MDY5NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3
NC4uLl0uIAotUEFTUyAgIGstcmF0ZSBnYWluOiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRl
ck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDY3NTAwODI5Njk2NjU1LDAu
ODI4MDQyMzg3OTYyMzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0NDY4NTEyNTM1MDk1MjEsMS42
ODk5NTk4ODM2ODk4ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2MjU0MTU1NjM1ODMzNzQsMC44
OTQ1OTg1NDM2NDM5NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAuNDI5NzIwMzQyMTU5MjcxMjQs
LTEuMTM2MjY4NzM0OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDksLTIuMjE3OTA3MTkwMzIyODc2
LC0yLjQ1MTE4MDY5NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3NC4uLl0uIAotRkFJTCBYIGst
cmF0ZSBnYWluOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmls
dGVyTm9kZSBzaG91bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQg
ZnJvbSAwLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbQmlx
dWFkIGstcmF0ZSBnYWluXSAxIG91dCBvZiA4IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVS
IEZJTklTSEVEOiA0IG91dCBvZiA1IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBrLXJhdGUgZ2FpbjogT3V0cHV0IG9mIGEtcmF0
ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2Njc1
NTc3MTYzNjk2MywwLjgyODAwMDA2ODY2NDU1MDgsMS4yMzcwMDQ3NTY5Mjc0OTAyLDEuNTQ0NDky
MjQ0NzIwNDU5LDEuNjg5Njg1NDYzOTA1MzM0NSwxLjYzMzA1NDAxODAyMDYyOTksMS4zNjIyNTc0
ODA2MjEzMzgsMC44OTQ0NTg4MzAzNTY1OTc5LDAuMjc0NzM4Njk5MTk3NzY5MTcsLTAuNDI5MTgx
NjY1MTgyMTEzNjUsLTEuMTM1MjI4MDM3ODM0MTY3NSwtMS43NTcyMjM5NjM3Mzc0ODc4LC0yLjIx
NTgxOTgzNTY2Mjg0MiwtMi40NDg3MjQwMzE0NDgzNjQzLC0yLjQxODk1NDYxMDgyNDU4NS4uLl0u
IAorUEFTUyAgIGstcmF0ZSBnYWluOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJh
dGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA3OTk5IGRp
ZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgPCBbQmlxdWFkIGstcmF0ZSBnYWluXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCA4IGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiA1IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL2JpcXVhZC1hdXRvbWF0aW9u
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uv
YmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0CmluZGV4IDU5MGQ3MzQwOTZhZDE5ODRhZmFj
ZDc4ZDI1ZDRlZTg4NzVjOTUxYjQuLjhjZTRhMjhiY2E1ZDIwOTEyN2Q4MDQwYmExYTE2ZWZhNzU5
MmE1MDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZh
Y2UvYmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlx
dWFkZmlsdGVybm9kZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0CkBA
IC04LDk0ICs4LDI3IEBAIFBBU1MgRXhlY3V0aW5nICJhdXRvbWF0ZS1hbGwiCiBQQVNTIEV4ZWN1
dGluZyAibW9kdWxhdGlvbiIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbYXV0b21hdGUt
ZnJlcV0gIAotRkFJTCBYIE91dHB1dCBvZiBiYW5kcGFzcyBmaWx0ZXIgd2l0aCBmcmVxdWVuY3kg
YXV0b21hdGlvbiBkb2VzIG5vdCBlcXVhbCBbMCwwLjI3MjIyMjc1NzMzOTQ3NzU0LDAuMTcwMzQ4
Mzc2MDM1NjkwMywtMC40ODA2MjYxOTU2NjkxNzQyLC0wLjI3ODg0Mzc2MDQ5MDQxNzUsMC4zOTU3
MDU2OTk5MjA2NTQzLDAuMTA4NDAzMjQzMTI0NDg1MDIsLTAuMzk2NzcyMjA1ODI5NjIwMzYsMC4w
Njg3MTIzNTM3MDYzNTk4NiwwLjQxMDA0NDc1OTUxMTk0NzYzLC0wLjE4OTc2MjkwNTI0MDA1ODks
LTAuMzU5MDE0NjYwMTIwMDEwNCwwLjI5MjQ4NTQ3NTU0MDE2MTEzLDAuMjYxNDU0MjI0NTg2NDg2
OCwtMC4zNzY3MjIxMjcxOTkxNzMsLTAuMTQxOTUwMDU1OTU2ODQwNTIuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwNDY0NTUs
InJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJy
b3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQkyLjcyMDc3NDExNDEzMTkyNzVlLTEJ
Mi43MjIyMjc1NzMzOTQ3NzU0ZS0xCTEuNDUzNDU5MjYyODQ3OTAwNGUtNAk1LjMzOTIyNzYxMjkw
NDM1NTdlLTQJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0JWzJdCTEuNzA5MjQ5MzE3NjQ2MDI2NmUt
MQkxLjcwMzQ4Mzc2MDM1NjkwMzFlLTEJNS43NjU1NTcyODkxMjM1MzUyZS00CTMuMzg0NTY4Mzkw
NTUyNTMwMWUtMwk0LjY0NTQ5OTk5OTk5OTk5OThlLTYKLQlbM10JLTQuNzg4NDU4MzQ3MzIwNTU2
NmUtMQktNC44MDYyNjE5NTY2OTE3NDE5ZS0xCTEuNzgwMzYwOTM3MTE4NTMwM2UtMwkzLjcwNDI1
MjgxMjYwMzY0OTJlLTMJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0JWzRdCS0yLjgwMzUyMTQ1NDMz
NDI1OTBlLTEJLTIuNzg4NDM3NjA0OTA0MTc0OGUtMQkxLjUwODM4NDk0MzAwODQyMjllLTMJNS40
MDk0MjY5MTQ3NTUyMjE0ZS0zCTQuNjQ1NDk5OTk5OTk5OTk5OGUtNgotCVs1XQkzLjkxNDI1MzEx
NTY1Mzk5MTdlLTEJMy45NTcwNTY5OTkyMDY1NDMwZS0xCTQuMjgwMzg4MzU1MjU1MTI3MGUtMwkx
LjA4MTcxMDA1Nzc4MTE3ODZlLTIJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0JLi4uYW5kIDIwNzIg
bW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDIuMTE5MDEwNjEyMzY4NTgzN2UtMSBhdCBp
bmRleCBvZiAxMTQ5LgotCVsxMTQ5XQktMS4xNDY4ODQwMzkwNDQzODAyZS0xCTkuNzIxMjY1NzMz
MjQyMDM0OWUtMgkyLjExOTAxMDYxMjM2ODU4MzdlLTEJMi4xNzk3NjgyMjIwNzY4NzQ4ZSswCTQu
NjQ1NDk5OTk5OTk5OTk5OGUtNgotCU1heCBSZWxFcnJvciBvZiA5LjY2OTk0NjI4Nzk4MTE2NDhl
KzEgYXQgaW5kZXggb2YgMTAwMC4KLQlbMTAwMF0JLTEuNzUzODkxNzA2NDY2Njc0OGUtMQktMS43
OTUxOTA3MzU3MjAwOTgwZS0zCTEuNzM1OTM5Nzk5MTA5NDczOGUtMQk5LjY2OTk0NjI4Nzk4MTE2
NDhlKzEJNC42NDU0OTk5OTk5OTk5OTk4ZS02Ci0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIDwgW2F1dG9tYXRlLWZyZXFdIDEgb3V0IG9mIDEgYXNzZXJ0aW9ucyB3
ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAg
T3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRoIGZyZXF1ZW5jeSBhdXRvbWF0aW9uIGVxdWFs
cyBbMCwwLjI3MjIyMjc1NzMzOTQ3NzU0LDAuMTcwMzQ4Mzc2MDM1NjkwMywtMC40ODA2MjYxOTU2
NjkxNzQyLC0wLjI3ODg0Mzc2MDQ5MDQxNzUsMC4zOTU3MDU2OTk5MjA2NTQzLDAuMTA4NDAzMjQz
MTI0NDg1MDIsLTAuMzk2NzcyMjA1ODI5NjIwMzYsMC4wNjg3MTIzNTM3MDYzNTk4NiwwLjQxMDA0
NDc1OTUxMTk0NzYzLC0wLjE4OTc2MjkwNTI0MDA1ODksLTAuMzU5MDE0NjYwMTIwMDEwNCwwLjI5
MjQ4NTQ3NTU0MDE2MTEzLDAuMjYxNDU0MjI0NTg2NDg2OCwtMC4zNzY3MjIxMjcxOTkxNzMsLTAu
MTQxOTUwMDU1OTU2ODQwNTIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7
ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwNDY0NTUsInJlbGF0aXZlVGhyZXNob2xkIjowfS4g
CitQQVNTIDwgW2F1dG9tYXRlLWZyZXFdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEg
YXNzZXJ0aW9ucykgCiBQQVNTID4gW2F1dG9tYXRlLXFdICAKIEZBSUwgWCBPdXRwdXQgb2YgYmFu
ZHBhc3MgZmlsdGVyIHdpdGggUSBhdXRvbWF0aW9uIGRvZXMgbm90IGVxdWFsIFswLDAuMDEzMTE0
NzgxMTE4OTI5Mzg2LDAuMDQ3ODIzMzg0NDA0MTgyNDM0LDAuMDk3NjUyOTM0NDkxNjM0MzcsMC4x
NTY1NzEyNTQxMzQxNzgxNiwwLjIxODk5MDU0OTQ0NTE1MjI4LDAuMjc5ODE3NDYxOTY3NDY4MjYs
MC4zMzQ1MjQ0ODI0ODg2MzIyLDAuMzc5MjI2OTUyNzkxMjE0LDAuNDEwNzU0MjMzNTk4NzA5MSww
LjQyNjcwNzk4MzAxNjk2NzgsMC40MjU1MDE2NzQ0MTM2ODEwMywwLjQwNjM3ODQ0ODAwOTQ5MDk3
LDAuMzY5NDA1MDkwODA4ODY4NCwwLjMxNTQ0MTIyMDk5ODc2NDA0LDAuMjQ2MDg0NjkwMDkzOTk0
MTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjo5LjgzNDhlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlF
eHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQkxLjQzMTEw
ODE3Mjk4MjkzMTFlLTIJMS4zMTE0NzgxMTE4OTI5Mzg2ZS0yCTEuMTk2MzAwNjEwODk5OTI1MmUt
Mwk5LjEyMTc3MzM2NDM1NDczOTFlLTIJOS44MzQ4MDAwMDAwMDAwMDA3ZS03Ci0JWzJdCTUuMzk5
OTQwMTYyODk3MTEwMGUtMgk0Ljc4MjMzODQ0MDQxODI0MzRlLTIJNi4xNzYwMTcyMjQ3ODg2NjU4
ZS0zCTEuMjkxNDIyMDMxNjU1NDA0M2UtMQk5LjgzNDgwMDAwMDAwMDAwMDdlLTcKLQlbM10JMS4x
MjM2NDQ2MzUwODEyOTEyZS0xCTkuNzY1MjkzNDQ5MTYzNDM2OWUtMgkxLjQ3MTE1MjkwMTY0OTQ3
NTFlLTIJMS41MDY1MTE3MTg1NzU2NTA1ZS0xCTkuODM0ODAwMDAwMDAwMDAwN2UtNwotCVs0XQkx
LjgyNDQ5ODc3MjYyMTE1NDhlLTEJMS41NjU3MTI1NDEzNDE3ODE2ZS0xCTIuNTg3ODYyMzEyNzkz
NzMxN2UtMgkxLjY1MjgzMzYxMDU1Mjc5NjZlLTEJOS44MzQ4MDAwMDAwMDAwMDA3ZS03Ci0JWzVd
CTIuNTczNTk2MjM5MDg5OTY1OGUtMQkyLjE4OTkwNTQ5NDQ1MTUyMjhlLTEJMy44MzY5MDc0NDYz
ODQ0Mjk5ZS0yCTEuNzUyMDg4MTQwODM3OTcyN2UtMQk5LjgzNDgwMDAwMDAwMDAwMDdlLTcKLQku
Li5hbmQgMzk5NCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgNC44NzY0NzMwOTg5OTMz
MDE0ZS0xIGF0IGluZGV4IG9mIDEyMy4KLQlbMTIzXQk1LjgzNTY3OTc2OTUxNTk5MTJlLTEJOS41
OTIwNjY3MDUyMjY4OTgyZS0yCTQuODc2NDczMDk4OTkzMzAxNGUtMQk1LjA4Mzg2MDcwMzY5NTkx
ODllKzAJOS44MzQ4MDAwMDAwMDAwMDA3ZS03Ci0JTWF4IFJlbEVycm9yIG9mIDEuMzczMzkzNTY5
NDg0ODg2MGUrNSBhdCBpbmRleCBvZiAxMDYuCi0JWzEwNl0JLTQuMDgyNDEzNjEzNzk2MjM0MWUt
MQktMi45NzI0NzkyNTExODQyNjc5ZS02CTQuMDgyMzgzODg5MDAzNzIyM2UtMQkxLjM3MzM5MzU2
OTQ4NDg4NjBlKzUJOS44MzQ4MDAwMDAwMDAwMDA3ZS03CisJWzI1Ml0JNS4yMjcwODQxNTk4NTEw
NzQyZS0xCTUuMjI3MDk0MjkyNjQwNjg2MGUtMQkxLjAxMzI3ODk2MTE4MTY0MDZlLTYJMS45Mzg1
MTI4ODAxMDY3NDEzZS02CTkuODM0ODAwMDAwMDAwMDAwN2UtNworCU1heCBBYnNFcnJvciBvZiAx
LjAxMzI3ODk2MTE4MTY0MDZlLTYgYXQgaW5kZXggb2YgMjUyLgorCU1heCBSZWxFcnJvciBvZiAx
LjkzODUxMjg4MDEwNjc0MTNlLTYgYXQgaW5kZXggb2YgMjUyLgogIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCA8IFthdXRvbWF0ZS1xXSAxIG91dCBvZiAxIGFzc2Vy
dGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQog
UEFTUyA+IFthdXRvbWF0ZS1nYWluXSAgCi1GQUlMIFggT3V0cHV0IG9mIGxvd3NoZWxmIGZpbHRl
ciB3aXRoIGdhaW4gYXV0b21hdGlvbiBkb2VzIG5vdCBlcXVhbCBbMCwwLjQ3ODEzNTY3NTE5MTg3
OTMsMS41NTExMzg1MjAyNDA3ODM3LDMuMDQyODE1NDQ2ODUzNjM3Nyw0LjY0OTQ0MDI4ODU0Mzcw
MSw2LjE0ODA5OTg5OTI5MTk5Miw3LjQyNDg5MjkwMjM3NDI2OCw4LjQzNjQ3Mzg0NjQzNTU0Nyw5
LjE2OTUzODQ5NzkyNDgwNSw5LjYxODU2NDYwNTcxMjg5LDkuNzc5NDM4OTcyNDczMTQ1LDkuNjUw
ODczMTg0MjA0MTAyLDkuMjM3NDc2MzQ4ODc2OTUzLDguNTUxNzUzOTk3ODAyNzM0LDcuNjE0NjE1
NDQwMzY4NjUyLDYuNDU0ODE5Njc5MjYwMjU0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMjc2NTcsInJlbGF0aXZlVGhyZXNo
b2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlU
ZXN0IHRocmVzaG9sZAotCVsxXQk0Ljc4NjMwMTU1MzI0OTM1OTFlLTEJNC43ODEzNTY3NTE5MTg3
OTI3ZS0xCTQuOTQ0ODAxMzMwNTY2NDA2M2UtNAkxLjAzNDE4MzcyMzgxMDYxNTVlLTMJMi43NjU3
MDAwMDAwMDAwMDAwZS01Ci0JWzJdCTEuNTU1MDY0MDgyMTQ1NjkwOWUrMAkxLjU1MTEzODUyMDI0
MDc4MzdlKzAJMy45MjU1NjE5MDQ5MDcyMjY2ZS0zCTIuNTMwNzYxNjY1NTAwOTM4MWUtMwkyLjc2
NTcwMDAwMDAwMDAwMDBlLTUKLQlbM10JMy4wNTYwNTY5NzYzMTgzNTk0ZSswCTMuMDQyODE1NDQ2
ODUzNjM3N2UrMAkxLjMyNDE1Mjk0NjQ3MjE2ODBlLTIJNC4zNTE3MzU5ODEzNjM1MTU0ZS0zCTIu
NzY1NzAwMDAwMDAwMDAwMGUtNQotCVs0XQk0LjY3OTQ4MzQxMzY5NjI4OTFlKzAJNC42NDk0NDAy
ODg1NDM3MDEyZSswCTMuMDA0MzEyNTE1MjU4Nzg5MWUtMgk2LjQ2MTY2NDkwNzYyNjU0OTJlLTMJ
Mi43NjU3MDAwMDAwMDAwMDAwZS01Ci0JWzVdCTYuMjAyMjEyODEwNTE2MzU3NGUrMAk2LjE0ODA5
OTg5OTI5MTk5MjJlKzAJNS40MTEyOTExMjI0MzY1MjM0ZS0yCTguODAxNTY2NjgwODg1NzE3OGUt
MwkyLjc2NTcwMDAwMDAwMDAwMDBlLTUKLQkuLi5hbmQgMjA0OCBtb3JlIGVycm9ycy4KLQlNYXgg
QWJzRXJyb3Igb2YgMi40MDkwMjEzNzc1NjM0NzY2ZSswIGF0IGluZGV4IG9mIDEyMC4KLQlbMTIw
XQk5LjkwOTg4MTU5MTc5Njg3NTBlKzAJNy41MDA4NjAyMTQyMzMzOTg0ZSswCTIuNDA5MDIxMzc3
NTYzNDc2NmUrMAkzLjIxMTY2MDE0MTMxNTc4MjVlLTEJMi43NjU3MDAwMDAwMDAwMDAwZS01Ci0J
TWF4IFJlbEVycm9yIG9mIDEuMDYzMjI5MjQxOTUyNTM3NWUrMiBhdCBpbmRleCBvZiAxMDAwLgot
CVsxMDAwXQkyLjI5NjgxOTcyNDE0MjU1MTRlLTIJLTIuMTgwNzQwNTU3Mzc4MTU4MGUtNAkyLjMx
ODYyNzEyOTcxNjMzMzBlLTIJMS4wNjMyMjkyNDE5NTI1Mzc1ZSsyCTIuNzY1NzAwMDAwMDAwMDAw
MGUtNQotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFthdXRv
bWF0ZS1nYWluXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBsb3dzaGVsZiBmaWx0
ZXIgd2l0aCBnYWluIGF1dG9tYXRpb24gZXF1YWxzIFswLDAuNDc4MTM1Njc1MTkxODc5MywxLjU1
MTEzODUyMDI0MDc4MzcsMy4wNDI4MTU0NDY4NTM2Mzc3LDQuNjQ5NDQwMjg4NTQzNzAxLDYuMTQ4
MDk5ODk5MjkxOTkyLDcuNDI0ODkyOTAyMzc0MjY4LDguNDM2NDczODQ2NDM1NTQ3LDkuMTY5NTM4
NDk3OTI0ODA1LDkuNjE4NTY0NjA1NzEyODksOS43Nzk0Mzg5NzI0NzMxNDUsOS42NTA4NzMxODQy
MDQxMDIsOS4yMzc0NzYzNDg4NzY5NTMsOC41NTE3NTM5OTc4MDI3MzQsNy42MTQ2MTU0NDAzNjg2
NTIsNi40NTQ4MTk2NzkyNjAyNTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAyNzY1NywicmVsYXRpdmVUaHJlc2hvbGQiOjB9
LiAKK1BBU1MgPCBbYXV0b21hdGUtZ2Fpbl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwg
MSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbYXV0b21hdGUtZGV0dW5lXSAgCi1GQUlMIFggT3V0cHV0
IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRoIGRldHVuZSBhdXRvbWF0aW9uIGRvZXMgbm90IGVxdWFs
IFswLDAuMDAwODM4Mzg1NjYyMDYzOTU2MywwLjAwMTQxMTIwNzk1MTYwNTMyLDAuMDAwMzY2MDkz
NjQ5MDYzMjU5MzYsMC4wMDAxMDAwMDkzNzYxODMxNTIyLDAuMDAxMjI5MDI5NzMwODkzNjcxNSww
LjAwMTEyODYzMDQ3OTc5NzcyMSwwLjAwMDAwMTAwNzU0MDE2MzMwMDI5MTIsMC4wMDA0NDM2MTkz
NTU3OTIxNzk3LDAuMDAxNDMzMTAzNjk0NTgwNDk1NCwwLjAwMDY1ODE1OTM3NzA1MzM4LC0wLjAw
MDExNTM3NzI5MDA1Nzk0OTcyLDAuMDAwODk5NzIyNzk5NjU4Nzc1MywwLjAwMTM0OTg5NjA3NjEz
NTMzNzQsMC4wMDAxNjQ0NjkyNjc0NzQ0ODc0MiwwLjAwMDA2NzE4MjMyMTc5OTkxOTAxLi4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4w
MDAwMzE0NzEsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3Rl
ZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVs0XQkxLjMzMDYwMDIwNzQz
ODY5MjVlLTQJMS4wMDAwOTM3NjE4MzE1MjIwZS00CTMuMzA1MDY0NDU2MDcxNzA0NmUtNQkzLjMw
NDc1NDU5NjIyODAzMTdlLTEJMy4xNDcwOTk5OTk5OTk5OTk3ZS01Ci0JWzddCTYuOTc5MTYyNTcx
OTUxNzQ2OWUtNQkxLjAwNzU0MDE2MzMwMDI5MTJlLTYJNi44Nzg0MDg1NTU2MjE3MTc4ZS01CTYu
ODI2OTMyMzcwNzA2NTQ2N2UrMQkzLjE0NzA5OTk5OTk5OTk5OTdlLTUKLQlbOF0JNC44ODY3NDg1
MDIwMzA5Njg3ZS00CTQuNDM2MTkzNTU3OTIxNzk3MGUtNAk0LjUwNTU0OTQ0MTA5MTcxNjNlLTUJ
MS4wMTU2MzQwOTc2MjU0NDQ5ZS0xCTMuMTQ3MDk5OTk5OTk5OTk5N2UtNQotCVsxMF0JNy4wNzkw
MTQ5MDM4NjU3NTQ2ZS00CTYuNTgxNTkzNzcwNTMzODAwMWUtNAk0Ljk3NDIxMTMzMzMxOTU0NDhl
LTUJNy41NTc3NjEwOTM2NTY5NzI4ZS0yCTMuMTQ3MDk5OTk5OTk5OTk5N2UtNQotCVsxMV0JLTQu
NDIxMjY2MTEyMzMxMDY4MWUtNgktMS4xNTM3NzI5MDA1Nzk0OTcyZS00CTEuMTA5NTYwMjM5NDU2
MTg2NWUtNAk5LjYxNjc5OTI3NTY1Mzc3NjhlLTEJMy4xNDcwOTk5OTk5OTk5OTk3ZS01Ci0JLi4u
YW5kIDExMjYgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDEuMDE3ODAwNDM1NDIzODUx
MGUrMCBhdCBpbmRleCBvZiAxMDE1LgotCVsxMDE1XQktMS40NTcwMDYxODYyNDY4NzE5ZS0xCTgu
NzIwOTk4MTY3OTkxNjM4MmUtMQkxLjAxNzgwMDQzNTQyMzg1MTBlKzAJMS4xNjcwNjg3NDEyMzU4
OTA3ZSswCTMuMTQ3MDk5OTk5OTk5OTk5N2UtNQotCU1heCBSZWxFcnJvciBvZiBJbmZpbml0eSBh
dCBpbmRleCBvZiAxMDg3LgotCVsxMDg3XQkxLjAwMTc3OTA2NDUzNjA5NDdlLTEJMC4wMDAwMDAw
MDAwMDAwMDAwZSswCTEuMDAxNzc5MDY0NTM2MDk0N2UtMQlJbmZpbml0eQkzLjE0NzA5OTk5OTk5
OTk5OTdlLTUKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBb
YXV0b21hdGUtZGV0dW5lXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBiYW5kcGFz
cyBmaWx0ZXIgd2l0aCBkZXR1bmUgYXV0b21hdGlvbiBlcXVhbHMgWzAsMC4wMDA4MzgzODU2NjIw
NjM5NTYzLDAuMDAxNDExMjA3OTUxNjA1MzIsMC4wMDAzNjYwOTM2NDkwNjMyNTkzNiwwLjAwMDEw
MDAwOTM3NjE4MzE1MjIsMC4wMDEyMjkwMjk3MzA4OTM2NzE1LDAuMDAxMTI4NjMwNDc5Nzk3NzIx
LDAuMDAwMDAxMDA3NTQwMTYzMzAwMjkxMiwwLjAwMDQ0MzYxOTM1NTc5MjE3OTcsMC4wMDE0MzMx
MDM2OTQ1ODA0OTU0LDAuMDAwNjU4MTU5Mzc3MDUzMzgsLTAuMDAwMTE1Mzc3MjkwMDU3OTQ5NzIs
MC4wMDA4OTk3MjI3OTk2NTg3NzUzLDAuMDAxMzQ5ODk2MDc2MTM1MzM3NCwwLjAwMDE2NDQ2OTI2
NzQ3NDQ4NzQyLDAuMDAwMDY3MTgyMzIxNzk5OTE5MDEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAzMTQ3MSwicmVsYXRpdmVU
aHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbYXV0b21hdGUtZGV0dW5lXSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFthdXRvbWF0ZS1hbGxdICAKLUZB
SUwgWCBPdXRwdXQgb2YgcGVha2luZyBmaWx0ZXIgd2l0aCBhdXRvbWF0aW9uIG9mIGFsbCBwYXJh
bWV0ZXJzIGRvZXMgbm90IGVxdWFsIFswLDAuOTg3Njg4MzYyNTk4NDE5MiwtMC4zMDkwMTcwMDI1
ODI1NTAwNSwtMC44OTEwMDY1MjkzMzEyMDczLDAuNTg3Nzg1MjQzOTg4MDM3MSwwLjcwNzEwNjc2
OTA4NDkzMDQsLTAuODA5MDE3MDAyNTgyNTUsLTAuNDUzOTkwNDg5MjQ0NDYxMDYsMC45NTEwNTY1
NDAwMTIzNTk2LDAuMTU2NDM0NDYxNDc0NDE4NjQsLTEsMC4xNTY0MzQ0NjE0NzQ0MTg2NCwwLjk1
MTA1NjU0MDAxMjM1OTYsLTAuNDUzOTkwNDg5MjQ0NDYxMDYsLTAuODA5MDE3MDAyNTgyNTUsMC43
MDcxMDY3NjkwODQ5MzA0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6MC4wMDA2MjkwNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUlu
ZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xk
Ci0JWzY5N10JLTguOTEwMDY1MjkzMzEyMDcyOGUtMQktOC45NjU5NDgyMjQwNjc2ODgwZS0xCTUu
NTg4MjkzMDc1NTYxNTIzNGUtMwk2LjIzMjc5NjUwNTA3MDg0NTBlLTMJNi4yOTA3MDAwMDAwMDAw
MDAyZS00Ci0JWzY5OF0JLTMuMDkwMTcwMDI1ODI1NTAwNWUtMQktMy4wNDgyOTYyNzI3NTQ2Njky
ZS0xCTQuMTg3Mzc1MzA3MDgzMTI5OWUtMwkxLjM3MzY3NzI3MTYzMTgzNjRlLTIJNi4yOTA3MDAw
MDAwMDAwMDAyZS00Ci0JWzY5OV0JOS44NzY4ODM2MjU5ODQxOTE5ZS0xCTEuMDA3MjYwMzIyNTcw
ODAwOGUrMAkxLjk1NzE5NTk5NzIzODE1OTJlLTIJMS45NDMwODg1NDc1OTg5NjE4ZS0yCTYuMjkw
NzAwMDAwMDAwMDAwMmUtNAotCVs3MDBdCS01LjU4Nzk3OTM1MjI0MzAwNTVlLTE0CS0zLjc3MjY5
NDk5MDAzODg3MThlLTIJMy43NzI2OTQ5OTAwMzMyODM5ZS0yCTkuOTk5OTk5OTk5OTg1MTg4NWUt
MQk2LjI5MDcwMDAwMDAwMDAwMDJlLTQKLQlbNzAxXQktOS44NzY4ODM2MjU5ODQxOTE5ZS0xCS05
LjcyNDYyMjk2NDg1OTAwODhlLTEJMS41MjI2MDY2MTEyNTE4MzExZS0yCTEuNTY1NzIzMDI3Nzc1
OTIyMGUtMgk2LjI5MDcwMDAwMDAwMDAwMDJlLTQKLQkuLi5hbmQgMzI5MCBtb3JlIGVycm9ycy4K
LQlNYXggQWJzRXJyb3Igb2YgMS4wMDAwNzgyNDg5Nzc2NjExZSsxIGF0IGluZGV4IG9mIDIwMzAu
Ci0JWzIwMzBdCTEuMjc3NjA2NDg3Mjc0MTY5OWUrMAkxLjEyNzgzODg5NzcwNTA3ODFlKzEJMS4w
MDAwNzgyNDg5Nzc2NjExZSsxCTguODY3MjA4MzQ4NzUxMDE1NmUtMQk2LjI5MDcwMDAwMDAwMDAw
MDJlLTQKLQlNYXggUmVsRXJyb3Igb2YgNy4yNjI2ODE4MTU3MzczMTY1ZSsxIGF0IGluZGV4IG9m
IDg5OC4KLQlbODk4XQktMi4wOTEwNjI4MTM5OTcyNjg3ZS0xCS0yLjg0MDA4MzA5MjQ1MTA5NTZl
LTMJMi4wNjI2NjE5ODMwNzI3NTc3ZS0xCTcuMjYyNjgxODE1NzM3MzE2NWUrMQk2LjI5MDcwMDAw
MDAwMDAwMDJlLTQKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwg
PCBbYXV0b21hdGUtYWxsXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBwZWFraW5n
IGZpbHRlciB3aXRoIGF1dG9tYXRpb24gb2YgYWxsIHBhcmFtZXRlcnMgZXF1YWxzIFswLDAuOTg3
Njg4MzYyNTk4NDE5MiwtMC4zMDkwMTcwMDI1ODI1NTAwNSwtMC44OTEwMDY1MjkzMzEyMDczLDAu
NTg3Nzg1MjQzOTg4MDM3MSwwLjcwNzEwNjc2OTA4NDkzMDQsLTAuODA5MDE3MDAyNTgyNTUsLTAu
NDUzOTkwNDg5MjQ0NDYxMDYsMC45NTEwNTY1NDAwMTIzNTk2LDAuMTU2NDM0NDYxNDc0NDE4NjQs
LTEsMC4xNTY0MzQ0NjE0NzQ0MTg2NCwwLjk1MTA1NjU0MDAxMjM1OTYsLTAuNDUzOTkwNDg5MjQ0
NDYxMDYsLTAuODA5MDE3MDAyNTgyNTUsMC43MDcxMDY3NjkwODQ5MzA0Li4uXSB3aXRoIGFuIGVs
ZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDA2MjkwNywi
cmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbYXV0b21hdGUtYWxsXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAogUEFTUyA+IFttb2R1bGF0aW9uXSAg
Ci1GQUlMIFggT3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRoIHNpbnVzb2lkYWwgbW9kdWxh
dGlvbiBvZiBiYW5kcGFzcyBjZW50ZXIgZnJlcXVlbmN5IGRvZXMgbm90IGVxdWFsIFswLDAuMDAx
ODAwMzczODk1MDkzNzk4NiwwLjAwNzE2NTgxMjQyMTU5MDA5LDAuMDE1ODYyNTYzNjI0OTc4MDY1
LDAuMDI3NDk2NTQ0NjQ0MjM2NTY1LDAuMDQxNTE5MTE2NjEwMjg4NjIsMC4wNTcyMzk3MjI0NjA1
MDgzNSwwLjA3Mzg0NTQ1MzU2MDM1MjMzLDAuMDkwNDI3MzE2NzI1MjU0MDYsMC4xMDYwMTI1OTc2
ODAwOTE4NiwwLjExOTYwMjQ0OTIzODMwMDMyLDAuMTMwMjEzNDk5MDY5MjEzODcsMC4xMzY5MjE4
OTc1MzA1NTU3MywwLjEzODkwODE5MjUxNTM3MzIzLDAuMTM1NTAwODMzMzkyMTQzMjUsMC4xMjYy
MTY1MTU4OTg3MDQ1My4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJz
b2x1dGVUaHJlc2hvbGQiOjAuMDAwMDM5Nzg3LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5k
ZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQK
LQlbMl0JNi45MzY4MzI3OTY3ODIyNTUyZS0zCTcuMTY1ODEyNDIxNTkwMDg5OGUtMwkyLjI4OTc5
NjI0ODA3ODM0NjNlLTQJMy4xOTU0NDU0MTk2Njk4NjMwZS0yCTMuOTc4Njk5OTk5OTk5OTk5N2Ut
NQotCVszXQkxLjUyNDY3MDcwMTQ3Mzk1MTNlLTIJMS41ODYyNTYzNjI0OTc4MDY1ZS0yCTYuMTU4
NTY2MTAyMzg1NTIwOWUtNAkzLjg4MjQ1MzIwNzQyOTc5MDNlLTIJMy45Nzg2OTk5OTk5OTk5OTk3
ZS01Ci0JWzRdCTIuNjI4MzY1MzQ1Mjk5MjQzOWUtMgkyLjc0OTY1NDQ2NDQyMzY1NjVlLTIJMS4y
MTI4OTExOTEyNDQxMjU0ZS0zCTQuNDExMDY3NjcwMjczMDg4MmUtMgkzLjk3ODY5OTk5OTk5OTk5
OTdlLTUKLQlbNV0JMy45NTI4OTI0OTcxODE4OTI0ZS0yCTQuMTUxOTExNjYxMDI4ODYyMGUtMgkx
Ljk5MDE5MTYzODQ2OTY5NjBlLTMJNC43OTM0MzQ0NDg4ODM1MjQwZS0yCTMuOTc4Njk5OTk5OTk5
OTk5N2UtNQotCVs2XQk1LjQzNzAxMTI3MTcxNTE2NDJlLTIJNS43MjM5NzIyNDYwNTA4MzQ3ZS0y
CTIuODY5NjA5NzQzMzU2NzA0N2UtMwk1LjAxMzMxODc1ODM3ODkzMzllLTIJMy45Nzg2OTk5OTk5
OTk5OTk3ZS01Ci0JLi4uYW5kIDM5OTMgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDEu
Mjc5ODA0ODg1Mzg3NDIwN2UrMCBhdCBpbmRleCBvZiAzNTIwLgotCVszNTIwXQktNi4yNjU4MzM5
NzM4ODQ1ODI1ZS0xCTYuNTMyMjE0ODc5OTg5NjI0MGUtMQkxLjI3OTgwNDg4NTM4NzQyMDdlKzAJ
MS45NTkyMjA0MzEyMDE1MTI1ZSswCTMuOTc4Njk5OTk5OTk5OTk5N2UtNQotCU1heCBSZWxFcnJv
ciBvZiAxLjMzNTM2MzYxMDUyMTcyMDZlKzMgYXQgaW5kZXggb2YgMjgyMS4KLQlbMjgyMV0JMS41
ODAyOTk0MzcwNDYwNTEwZS0xCTEuMTgyNTM3MDE2NTc1MjI0N2UtNAkxLjU3OTExNjkwMDAyOTQ3
NThlLTEJMS4zMzUzNjM2MTA1MjE3MjA2ZSszCTMuOTc4Njk5OTk5OTk5OTk5N2UtNQotIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFttb2R1bGF0aW9uXSAxIG91
dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA2IG91dCBvZiA2
IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
K1BBU1MgICBPdXRwdXQgb2YgYmFuZHBhc3MgZmlsdGVyIHdpdGggc2ludXNvaWRhbCBtb2R1bGF0
aW9uIG9mIGJhbmRwYXNzIGNlbnRlciBmcmVxdWVuY3kgZXF1YWxzIFswLDAuMDAxODAwMzczODk1
MDkzNzk4NiwwLjAwNzE2NTgxMjQyMTU5MDA5LDAuMDE1ODYyNTYzNjI0OTc4MDY1LDAuMDI3NDk2
NTQ0NjQ0MjM2NTY1LDAuMDQxNTE5MTE2NjEwMjg4NjIsMC4wNTcyMzk3MjI0NjA1MDgzNSwwLjA3
Mzg0NTQ1MzU2MDM1MjMzLDAuMDkwNDI3MzE2NzI1MjU0MDYsMC4xMDYwMTI1OTc2ODAwOTE4Niww
LjExOTYwMjQ0OTIzODMwMDMyLDAuMTMwMjEzNDk5MDY5MjEzODcsMC4xMzY5MjE4OTc1MzA1NTU3
MywwLjEzODkwODE5MjUxNTM3MzIzLDAuMTM1NTAwODMzMzkyMTQzMjUsMC4xMjYyMTY1MTU4OTg3
MDQ1My4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJl
c2hvbGQiOjAuMDAwMDM5Nzg3LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFttb2R1
bGF0aW9uXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAorRkFJ
TCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFp
bGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25v
LWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dAppbmRleCBmZjBmMTVlN2VmOTdlODI2NGYxMzNjZDNm
ZGE4ZDQ1YzBiOGI0NzRkLi5jYjU1NWYzZWRlZDA4OTU5ZDhiZWNmNTY3ZWZmMTI3ZWZmMWYwNzM1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25v
LWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRl
cm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dApAQCAtMTEsMTQgKzEx
LDE0IEBAIFBBU1MgPiBbVGVzdCAwXSBObyBkZXppcHBlcmluZyBmb3IgZnJlcXVlbmN5CiBQQVNT
ICAgQXQgdGltZSAwLCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMzUwLiAKIFBBU1MgICBBdCB0aW1l
IDAuMDE1NjI1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gODAwLiAKIFBBU1MgICBBdCB0aW1lIDAu
MDU0Njg3NSwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDIwMC4gCi1QQVNTICAgT3V0cHV0IGZyb20g
ZnJlcXVlbmN5IHNldHRlciBlcXVhbHMgWzAuNzg2MzU2MjEwNzA4NjE4MiwwLjk2NzY2MTg1NzYw
NDk4MDUsMS4xMzU3NzI0NjY2NTk1NDYsMS4yODU4MjQ3NzU2OTU4MDA4LDEuNDEzMzkyNzgyMjEx
MzAzNywxLjUxNDYxNzY4MTUwMzI5NiwxLjU4NjMyMzE0MjA1MTY5NjgsMS42MjYxMTEyNjg5OTcx
OTI0LDEuNjMyNDM1Njc5NDM1NzMsMS42MDQ2NTA4NTUwNjQzOTIsMS41NDMwMzY1ODAwODU3NTQ0
LDEuNDQ4Nzk0MTI2NTEwNjIwMSwxLjMyNDAxODk1NTIzMDcxMywxLjE3MTY0NTA0NTI4MDQ1NjUs
MC45OTUzNjc2NDYyMTczNDYyLDAuNzk5NTQyMTI5MDM5NzY0NC4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAzMDM5OSwicmVs
YXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVy
IGVxdWFscyBbMC43ODYzNTYyMTA3MDg2MTgyLDAuOTY3NjYxOTE3MjA5NjI1MiwxLjEzNTc3MjQ2
NjY1OTU0NiwxLjI4NTgyNDg5NDkwNTA5MDMsMS40MTMzOTI5MDE0MjA1OTMzLDEuNTE0NjE3Njgx
NTAzMjk2LDEuNTg2MzIzMjYxMjYwOTg2MywxLjYyNjExMTM4ODIwNjQ4MiwxLjYzMjQzNTc5ODY0
NTAxOTUsMS42MDQ2NTA5NzQyNzM2ODE2LDEuNTQzMDM2Njk5Mjk1MDQ0LDEuNDQ4Nzk0MjQ1NzE5
OTA5NywxLjMyNDAxOTA3NDQ0MDAwMjQsMS4xNzE2NDUxNjQ0ODk3NDYsMC45OTUzNjc3NjU0MjY2
MzU3LDAuNzk5NTQyMjQ4MjQ5MDU0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ug
b2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDMwMzk5LCJyZWxhdGl2ZVRocmVzaG9sZCI6
MH0uIAogUEFTUyAgIE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1
ZUF0VGltZSBvdXRwdXQgaXMgdHJ1ZS4gCiBQQVNTIDwgW1Rlc3QgMF0gQWxsIGFzc2VydGlvbnMg
cGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbVGVzdCAxXSBObyBkZXppcHBl
cmluZyBmb3IgZGV0dW5lIAogUEFTUyAgIEF0IHRpbWUgMCwgZGV0dW5lIGlzIGVxdWFsIHRvIDMz
LiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBkZXR1bmUgaXMgZXF1YWwgdG8gMTAwMC4gCiBQ
QVNTICAgQXQgdGltZSAwLjAzOTA2MjUsIGRldHVuZSBpcyBlcXVhbCB0byAtNDAwLiAKLVBBU1Mg
ICBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGVxdWFscyBbMS4xNDc2NjA5NzA2ODc4NjYyLDEu
MTU2MTk1NDAyMTQ1Mzg1NywxLjEzNzE1NjcyNDkyOTgwOTYsMS4wODkxMzM2MjAyNjIxNDYsMS4w
MTE1MzM5NzU2MDExOTYzLDAuOTA0NjI5NzA3MzM2NDI1OCwwLjc2OTU3Njc4Nzk0ODYwODQsMC42
MDg0MDg4MDg3MDgxOTA5LDAuNDI0MDA0ODIyOTY5NDM2NjUsMC4yMjAwMjg3NTgwNDkwMTEyMyww
LjAwMDg0NjE0Mjg4MDYxODU3MjIsLTAuMjI4NTgyNDQxODA2NzkzMiwtMC40NjI4MjY4MTgyMjc3
Njc5NCwtMC42OTYxMzAzMzUzMzA5NjMxLC0wLjkyMjU2NDA4OTI5ODI0ODMsLTEuMTM2MTg5ODE4
MzgyMjYzMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVU
aHJlc2hvbGQiOjAuMDAwMDA0MDUzMiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBP
dXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGVxdWFscyBbMS4xNDc2NjA5NzA2ODc4NjYyLDEuMTU2
MTk1NDAyMTQ1Mzg1NywxLjEzNzE1NjcyNDkyOTgwOTYsMS4wODkxMzM2MjAyNjIxNDYsMS4wMTE1
MzM5NzU2MDExOTYzLDAuOTA0NjI5NzA3MzM2NDI1OCwwLjc2OTU3NjcyODM0Mzk2MzYsMC42MDg0
MDg4MDg3MDgxOTA5LDAuNDI0MDA0NzkzMTY3MTE0MjYsMC4yMjAwMjg3NDMxNDc4NTAwNCwwLjAw
MDg0NjEyOTYwOTI3MTg4NCwtMC4yMjg1ODI0NTY3MDc5NTQ0LC0wLjQ2MjgyNjgxODIyNzc2Nzk0
LC0wLjY5NjEzMDM5NDkzNTYwNzksLTAuOTIyNTY0MDg5Mjk4MjQ4MywtMS4xMzYxODk4MTgzODIy
NjMyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MC4wMDAwMDQwNTMyLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAogUEFTUyAgIE91dHB1
dCBmcm9tIGRldHVuZSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgdHJ1
ZS4gCiBQQVNTIDwgW1Rlc3QgMV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3Nl
cnRpb25zKSAKIFBBU1MgPiBbVGVzdCAyXSBObyBkZXppcHBlcmluZyBmb3IgUSAKQEAgLTMyLDE0
ICszMiwxNCBAQCBQQVNTID4gW1Rlc3QgM10gTm8gZGV6aXBwZXJpbmcgZm9yIGdhaW4KIFBBU1Mg
ICBBdCB0aW1lIDAsIGdhaW4gaXMgZXF1YWwgdG8gMS4gCiBQQVNTICAgQXQgdGltZSAwLjAxNTYy
NSwgZ2FpbiBpcyBlcXVhbCB0byA1LiAKIFBBU1MgICBBdCB0aW1lIDAuMDQ2ODc1LCBnYWluIGlz
IGVxdWFsIHRvIC0wLjMuIAotUEFTUyAgIE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIGVxdWFscyBb
LTAuODQ0ODY3MjI5NDYxNjY5OSwtMS4wMzQ1MzU2NDY0Mzg1OTg2LC0xLjE4NjYwNjE2ODc0Njk0
ODIsLTEuMjk5NDczMjg1Njc1MDQ4OCwtMS4zNzIzOTExMDQ2OTgxODEyLC0xLjQwNTQ4NjM0NTI5
MTEzNzcsLTEuMzk5NzUwNTkwMzI0NDAxOSwtMS4zNTcwMTM5NDA4MTExNTcyLC0xLjI3OTg5ODY0
MzQ5MzY1MjMsLTEuMTcxNzUzNjQ0OTQzMjM3MywtMS4wMzY1NzIwOTg3MzE5OTQ2LC0wLjg3ODg5
MTY0Njg2MjAzLC0wLjcwMzY4NDM4OTU5MTIxNywtMC41MTYyMzEyMzg4NDIwMTA1LC0wLjMyMTk5
MjAwOTg3ODE1ODU3LC0wLjEyNjQ2OTMyODk5OTUxOTM1Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE5MDc0LCJyZWxhdGl2
ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIGVxdWFscyBb
LTAuODQ0ODY3MjI5NDYxNjY5OSwtMS4wMzQ1MzU2NDY0Mzg1OTg2LC0xLjE4NjYwNjE2ODc0Njk0
ODIsLTEuMjk5NDczMjg1Njc1MDQ4OCwtMS4zNzIzOTExMDQ2OTgxODEyLC0xLjQwNTQ4NjM0NTI5
MTEzNzcsLTEuMzk5NzUwNTkwMzI0NDAxOSwtMS4zNTcwMTM5NDA4MTExNTcyLC0xLjI3OTg5ODY0
MzQ5MzY1MjMsLTEuMTcxNzUzNjQ0OTQzMjM3MywtMS4wMzY1NzIwOTg3MzE5OTQ2LC0wLjg3ODg5
MTcwNjQ2NjY3NDgsLTAuNzAzNjg0NDQ5MTk1ODYxOCwtMC41MTYyMzEyMzg4NDIwMTA1LC0wLjMy
MTk5MjAzOTY4MDQ4MDk2LC0wLjEyNjQ2OTM0MzkwMDY4MDU0Li4uXSB3aXRoIGFuIGVsZW1lbnQt
d2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE5MDc0LCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uIAogUEFTUyAgIE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIG1hdGNo
ZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAogUEFTUyA8IFtUZXN0IDNdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDUgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgNF0g
Tm8gZGV6aXBwZXJpbmcgb2YgZnJlcXVlbmN5IHZzIEpTIGZpbHRlciAKIEZBSUwgWCBPdXRwdXQg
ZnJvbSBsb3dwYXNzIGZpbHRlciBkb2VzIG5vdCBlcXVhbCBbLTAuMDAzMDAxMDQ4NDYyNDY1NDA1
NSwtMC4wMTQwNjk4OTYxOTEzNTg1NjYsLTAuMDMzNDAyMDQ4MDUxMzU3MjcsLTAuMDU3MjkxNDEw
ODYzMzk5NTA2LC0wLjA4MjE2NDMwMjQ2ODI5OTg3LC0wLjEwNDcwMDY0NzI5NDUyMTMzLC0wLjEy
MTk0MDk1NTUxOTY3NjIxLC0wLjEzMTM3NjYzOTAwODUyMjAzLC0wLjEzMTAyMTczODA1MjM2ODE2
LC0wLjExOTQ2NDYwNjA0NjY3NjY0LC0wLjA5NTg5ODgxNDQ5OTM3ODIsLTAuMDYwMTMzMDIxMzI0
ODcyOTcsLTAuMDEyNTgwMTc0MDIxNDIyODYzLDAuMDQ1NzcyOTk1Nzk5Nzc5ODksMC4xMTM0MTQ3
MTk3MDA4MTMzLDAuMTg4MzczMjIyOTQ3MTIwNjcuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjo1Ljk2MDdlLTcsInJlbGF0aXZlVGhyZXNo
b2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlU
ZXN0IHRocmVzaG9sZAogCVswXQktMi42MjU5ODI0NjMzNTk4MzI4ZS0xCS0zLjAwMTA0ODQ2MjQ2
NTQwNTVlLTMJMi41OTU5NzE5Nzg3MzUxNzg3ZS0xCTguNjUwMjE2Nzg2NTc3ODEzNGUrMQk1Ljk2
MDcwMDAwMDAwMDAwMDJlLTcKLQlbMV0JLTQuMTQ0NDUwNzI0MTI0OTA4NGUtMQktMS40MDY5ODk2
MTkxMzU4NTY2ZS0yCTQuMDAzNzUxNzYyMjExMzIyOGUtMQkyLjg0NTYxNTcwODcxNDU2OTRlKzEJ
NS45NjA3MDAwMDAwMDAwMDAyZS03CisJWzFdCS00LjE0NDQ1MTAyMjE0ODEzMjNlLTEJLTEuNDA2
OTg5NjE5MTM1ODU2NmUtMgk0LjAwMzc1MjA2MDIzNDU0NjdlLTEJMi44NDU2MTU5MjA1MzA3OTAy
ZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUtNwogCVsyXQktNS40Mzg2MjUyMTY0ODQwNjk4ZS0xCS0z
LjM0MDIwNDgwNTEzNTcyNjllLTIJNS4xMDQ2MDQ3MzU5NzA0OTcxZS0xCTEuNTI4MjMxMDYxNzk2
NTQ2MWUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKIAlbM10JLTYuMzU5Mjg2OTA0MzM1MDIyMGUt
MQktNS43MjkxNDEwODYzMzk5NTA2ZS0yCTUuNzg2MzcyNzk1NzAxMDI2OWUtMQkxLjAwOTk4OTU3
OTMyNzYxMjRlKzEJNS45NjA3MDAwMDAwMDAwMDAyZS03CiAJWzRdCS02LjgwOTA0NTA3NjM3MDIz
OTNlLTEJLTguMjE2NDMwMjQ2ODI5OTg2NmUtMgk1Ljk4NzQwMjA1MTY4NzI0MDZlLTEJNy4yODcx
MDg3MjIxODE3MDkwZSswCTUuOTYwNzAwMDAwMDAwMDAwMmUtNwpAQCAtNTUsMjAgKzU1LDggQEAg
UEFTUyA+IFtUZXN0IDVdIFRlc3Qgd2l0aCBtb2R1bGF0aW9uCiBQQVNTICAgTW9kdWxhdGlvbjog
QXQgdGltZSAwLCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMzUwLiAKIFBBU1MgICBNb2R1bGF0aW9u
OiBBdCB0aW1lIDAuMDE1NjI1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMTAuIAogUEFTUyAgIE1v
ZHVsYXRpb246IEF0IHRpbWUgMC4wNjI1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gLTEwLiAKLUZB
SUwgWCBNb2R1bGF0aW9uOiBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIGRvZXMgbm90IGVx
dWFsIFswLC0wLjE2NzkzODMwNjkyNzY4MDk3LC0wLjMzMTEwNjMwNTEyMjM3NTUsLTAuNDg0ODY5
MjQxNzE0NDc3NTQsLTAuNjI0ODU5NTExODUyMjY0NCwtMC43NDcxMDA1OTE2NTk1NDU5LC0wLjg0
ODEyMDMzMTc2NDIyMTIsLTAuOTI1MDQ5MzY0NTY2ODAzLC0wLjk3NTcwMjIyNjE2MTk1NjgsLTAu
OTk4NjQwMTc5NjM0MDk0MiwtMC45OTMyMTIwNDQyMzkwNDQyLC0wLjk1OTU3MTQyMTE0NjM5Mjgs
LTAuODk4Njc0NDg4MDY3NjI3LC0wLjgxMjI1MDU1NDU2MTYxNSwtMC43MDI3NTQ3OTU1NTEzLC0w
LjU3MzI5NzE0Mjk4MjQ4MjkuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7
ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0
dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMTI4
XQktMy44MjMwMTE4MTU1NDc5NDMxZS0xCS0zLjgyMzY0NjAwODk2ODM1MzNlLTEJNi4zNDE5MzQy
MDQxMDE1NjI1ZS01CTEuNjU4NjA5MTM2MjA4MzY1MGUtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAK
LQlbMTI5XQktMi4yMDkxMzY3ODQwNzY2OTA3ZS0xCS0yLjIxMTA5MjU2MTQ4MzM4MzJlLTEJMS45
NTU3Nzc0MDY2OTI1MDQ5ZS00CTguODQ1Mjk4NjU4MDU1MzExMWUtNAkwLjAwMDAwMDAwMDAwMDAw
MDBlKzAKLQlbMTMwXQktNS4yNzgwNTM1MDcyMDg4MjQyZS0yCS01LjMxODAxOTkxMTY0Njg0MzBl
LTIJMy45OTY2NDA0NDM4MDE4Nzk5ZS00CTcuNTE1Mjc5MjAyMDM3MTE5NGUtMwkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAKLQlbMTMxXQkxLjE3MzY1NTAxODIxMDQxMTFlLTEJMS4xNjY4ODc2NTU4NTQy
MjUyZS0xCTYuNzY3MzYyMzU2MTg1OTEzMWUtNAk1Ljc5OTQ5Nzc2ODQ3MzU1MjBlLTMJMC4wMDAw
MDAwMDAwMDAwMDAwZSswCi0JWzEzMl0JMi44NDczNDkwNDc2NjA4Mjc2ZS0xCTIuODM3MDkzMTc0
NDU3NTUwMGUtMQkxLjAyNTU4NzMyMDMyNzc1ODhlLTMJMy42MTQ5MjI5NDE0MTQ2NzYzZS0zCTAu
MDAwMDAwMDAwMDAwMDAwMGUrMAotCS4uLmFuZCA1MDcgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vy
cm9yIG9mIDUuMDQ3NTU5NzM4MTU5MTc5N2UtMiBhdCBpbmRleCBvZiAzNTQuCi0JWzM1NF0JMy4w
MTA2NTA3MjQxNzI1OTIyZS0yCTguMDU4MjEwNDYyMzMxNzcxOWUtMgk1LjA0NzU1OTczODE1OTE3
OTdlLTIJNi4yNjM4NzE4MTM0MTgyMjE0ZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBS
ZWxFcnJvciBvZiAzLjA4Njk3OTk0MDc5NDUyNzFlKzAgYXQgaW5kZXggb2YgMjc5LgotCVsyNzld
CS01LjEwNDg1MjA5NTI0NjMxNTBlLTIJLTEuMjQ5MDUyMzk3OTA2NzgwMmUtMgkzLjg1NTc5OTY5
NzMzOTUzNDhlLTIJMy4wODY5Nzk5NDA3OTQ1MjcxZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAot
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIE1vZHVsYXRpb246
IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRw
dXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCi1GQUlMIDwgW1Rlc3QgNV0gMiBvdXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgIyBBVURJVCBUQVNL
IFJVTk5FUiBGSU5JU0hFRDogMiBvdXQgb2YgNiB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgTW9kdWxhdGlvbjogT3V0cHV0IGZy
b20gZnJlcXVlbmN5IHNldHRlciBlcXVhbHMgWzAsLTAuMTY3OTM4MzA2OTI3NjgwOTcsLTAuMzMx
MTA2MzA1MTIyMzc1NSwtMC40ODQ4NjkyNDE3MTQ0Nzc1NCwtMC42MjQ4NTk1MTE4NTIyNjQ0LC0w
Ljc0NzEwMDU5MTY1OTU0NTksLTAuODQ4MTIwMzMxNzY0MjIxMiwtMC45MjUwNDkzNjQ1NjY4MDMs
LTAuOTc1NzAyMjI2MTYxOTU2OCwtMC45OTg2NDk0Nzc5NTg2NzkyLC0wLjk5MzI0MTAxMjA5NjQw
NSwtMC45NTk1OTM0NzQ4NjQ5NTk3LC0wLjg5ODU5MDY4MzkzNzA3MjgsLTAuODExODU5MTMwODU5
Mzc1LC0wLjcwMTc4NzQ3MTc3MTI0MDIsLTAuNTcxMjM1NjU2NzM4MjgxMi4uLl0gd2l0aCBhbiBl
bGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZl
VGhyZXNob2xkIjowfS4gCitQQVNTICAgTW9kdWxhdGlvbjogT3V0cHV0IGZyb20gZnJlcXVlbmN5
IHNldHRlciBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyB0cnVlLiAKK1BBU1MgPCBb
VGVzdCA1XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA1IGFzc2VydGlvbnMpIAorRkFJ
TCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFp
bGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407683</attachid>
            <date>2020-09-01 08:54:55 -0700</date>
            <delta_ts>2020-09-01 09:39:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216027-20200901085454.patch</filename>
            <type>text/plain</type>
            <size>92474</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2Mzc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmEzYTczNThmNmJhMWU3
MzM3NjYzYTY1OTEzYTY1OTgzZmYxMmU0Zi4uMzRhNDU5ODU2Yjg3OGVjZDVlZDNlOWMwMzNlMWY5
ZTc0ZDA5Y2VjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIwLTA4LTMxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHByb3BlciBrLXJhdGUg
YXV0b21hdGlvbiBzdXBwb3J0IGZvciBCaXF1YWRGaWx0ZXJOb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYwMjcKKworICAgICAgICBSZXZpZXdl
ZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEFkZCBwcm9wZXIgay1yYXRlIGF1dG9tYXRp
b24gc3VwcG9ydCBmb3IgQmlxdWFkRmlsdGVyTm9kZS4gVGhpcyBwYXRjaCBpcworICAgICAgICBi
YXNlZCBvbiBDaHJvbWl1bSdzIGltcGxlbWVudGF0aW9uLgorCisgICAgICAgIE5vIG5ldyB0ZXN0
cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1
ZGlvL0JpcXVhZERTUEtlcm5lbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpoYXNDb25zdGFudFZh
bHVlcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OnVwZGF0ZUNvZWZmaWNp
ZW50c0lmTmVjZXNzYXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6dXBk
YXRlQ29lZmZpY2llbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6cHJv
Y2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWREU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJl
c3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkJpcXVhZERTUEtlcm5lbDo6dGFpbFRpbWUgY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkRFNQS2VybmVsOjp1cGRhdGVUYWlsVGltZSk6
CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuaDoKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpCaXF1YWRQcm9jZXNzb3I6OmNoZWNrRm9yRGlydHlDb2VmZmljaWVudHMpOgorICAgICAgICAo
V2ViQ29yZTo6QmlxdWFkUHJvY2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSk6CisgICAgICAg
ICogTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuaDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9hdWRpby9CaXF1YWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpCaXF1YWQpOgor
ICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpwcm9jZXNzKToKKyAgICAgICAgKFdlYkNvcmU6OkJp
cXVhZDo6cHJvY2Vzc0Zhc3QpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpyZXNldCk6Cisg
ICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OnNldExvd3Bhc3NQYXJhbXMpOgorICAgICAgICAoV2Vi
Q29yZTo6QmlxdWFkOjpzZXRIaWdocGFzc1BhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1
YWQ6OnNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMpOgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFk
OjpzZXRMb3dTaGVsZlBhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OnNldEhpZ2hT
aGVsZlBhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OnNldFBlYWtpbmdQYXJhbXMp
OgorICAgICAgICAoV2ViQ29yZTo6QmlxdWFkOjpzZXRBbGxwYXNzUGFyYW1zKToKKyAgICAgICAg
KFdlYkNvcmU6OkJpcXVhZDo6c2V0Tm90Y2hQYXJhbXMpOgorICAgICAgICAoV2ViQ29yZTo6Qmlx
dWFkOjpzZXRCYW5kcGFzc1BhcmFtcyk6CisgICAgICAgIChXZWJDb3JlOjpCaXF1YWQ6OmdldEZy
ZXF1ZW5jeVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OnJlcGVhdGVkUm9vdFJlc3BvbnNl
KToKKyAgICAgICAgKFdlYkNvcmU6OnJvb3RGaW5kZXIpOgorICAgICAgICAoV2ViQ29yZTo6Qmlx
dWFkOjp0YWlsRnJhbWUpOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL0JpcXVhZC5oOgorCiAy
MDIwLTA4LTMxICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAg
ICAgIEF2b2lkIGNvbXB1dGluZyBtZXRhZGF0YSBmb3IgaWRlbXBvdGVudCB0ZXh0IGF1dG9zaXpp
bmcgb24gbWFjT1MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
QmlxdWFkRFNQS2VybmVsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlx
dWFkRFNQS2VybmVsLmNwcAppbmRleCAxNjlhYTY1YWUzZTM4NWY0YmI5ODQwOGQ0ZWY0ODIyMmQw
MDEzYjAyLi4zYjMzNTYyZGY0ZTQ0MDlmNjhiZGU1NDQyOWRkMGJlMWQzMzU5NWVkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZERTUEtlcm5lbC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWREU1BLZXJuZWwuY3Bw
CkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRlICJCaXF1YWREU1BLZXJuZWwuaCIKIAorI2lu
Y2x1ZGUgIkJpcXVhZC5oIgogI2luY2x1ZGUgIkJpcXVhZFByb2Nlc3Nvci5oIgogI2luY2x1ZGUg
IkZsb2F0Q29udmVyc2lvbi5oIgogI2luY2x1ZGUgPGxpbWl0cy5oPgpAQCAtNDEsNzggKzQyLDEw
OSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyBzZXR0aW5ncyBvZiB0aGUgQmlxdWFkLgogc3Rh
dGljIGNvbnN0IGRvdWJsZSBNYXhCaXF1YWREZWxheVRpbWUgPSAwLjI7CiAKLXZvaWQgQmlxdWFk
RFNQS2VybmVsOjp1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2FyeShib29sIHVzZVNtb290aGlu
ZywgYm9vbCBmb3JjZVVwZGF0ZSkKK3N0YXRpYyBib29sIGhhc0NvbnN0YW50VmFsdWVzKGZsb2F0
KiB2YWx1ZXMsIGludCBmcmFtZXNUb1Byb2Nlc3MpCiB7Ci0gICAgaWYgKGZvcmNlVXBkYXRlIHx8
IGJpcXVhZFByb2Nlc3NvcigpLT5maWx0ZXJDb2VmZmljaWVudHNEaXJ0eSgpKSB7Ci0gICAgICAg
IGRvdWJsZSB2YWx1ZTE7Ci0gICAgICAgIGRvdWJsZSB2YWx1ZTI7Ci0gICAgICAgIGRvdWJsZSBn
YWluOwotICAgICAgICBkb3VibGUgZGV0dW5lOyAvLyBpbiBDZW50cwotCi0gICAgICAgIGJvb2wg
c2hvdWxkVXNlQVJhdGUgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMSgpLmF1dG9tYXRp
b25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCi0gICAgICAgICAgICB8fCBiaXF1YWRQ
cm9jZXNzb3IoKS0+cGFyYW1ldGVyMigpLmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJh
dGU6OkFSYXRlCi0gICAgICAgICAgICB8fCBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMygp
LmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0b21hdGlvblJhdGU6OkFSYXRlCi0gICAgICAgICAgICB8
fCBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmF1dG9tYXRpb25SYXRlKCkgPT0gQXV0
b21hdGlvblJhdGU6OkFSYXRlOwotICAgICAgICBpZiAoYmlxdWFkUHJvY2Vzc29yKCktPmhhc1Nh
bXBsZUFjY3VyYXRlVmFsdWVzKCkgJiYgc2hvdWxkVXNlQVJhdGUpIHsKLSAgICAgICAgICAgIHZh
bHVlMSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIxKCkuZmluYWxWYWx1ZSgpOwotICAg
ICAgICAgICAgdmFsdWUyID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjIoKS5maW5hbFZh
bHVlKCk7Ci0gICAgICAgICAgICBnYWluID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMo
KS5maW5hbFZhbHVlKCk7Ci0gICAgICAgICAgICBkZXR1bmUgPSBiaXF1YWRQcm9jZXNzb3IoKS0+
cGFyYW1ldGVyNCgpLmZpbmFsVmFsdWUoKTsKLSAgICAgICAgfSBlbHNlIGlmICh1c2VTbW9vdGhp
bmcpIHsKLSAgICAgICAgICAgIHZhbHVlMSA9IGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIx
KCkuc21vb3RoZWRWYWx1ZSgpOwotICAgICAgICAgICAgdmFsdWUyID0gYmlxdWFkUHJvY2Vzc29y
KCktPnBhcmFtZXRlcjIoKS5zbW9vdGhlZFZhbHVlKCk7Ci0gICAgICAgICAgICBnYWluID0gYmlx
dWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjMoKS5zbW9vdGhlZFZhbHVlKCk7Ci0gICAgICAgICAg
ICBkZXR1bmUgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyNCgpLnNtb290aGVkVmFsdWUo
KTsKKyAgICAvLyBGSVhNRTogVXNlIFNJTUQgdG8gb3B0aW1pemUgdGhpcy4gVGhpcyB3b3VsZCBz
cGVlZCB1cCBwcm9jZXNzaW5nIGJ5IGEgZmFjdG9yIG9mIDQKKyAgICAvLyBiZWNhdXNlIHdlIGNh
biBwcm9jZXNzIDQgZmxvYXRzIGF0IGEgdGltZS4KKyAgICBmbG9hdCB2YWx1ZSA9IHZhbHVlc1sw
XTsKKyAgICBmb3IgKGludCBrID0gMTsgayA8IGZyYW1lc1RvUHJvY2VzczsgKytrKSB7CisgICAg
ICAgIGlmICh2YWx1ZXNba10gIT0gdmFsdWUpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgfQorICAgIHJldHVybiB0cnVlOworfQorCit2b2lkIEJpcXVhZERTUEtlcm5lbDo6dXBkYXRl
Q29lZmZpY2llbnRzSWZOZWNlc3Nhcnkoc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKK3sKKyAgICBp
ZiAoYmlxdWFkUHJvY2Vzc29yKCktPmZpbHRlckNvZWZmaWNpZW50c0RpcnR5KCkpIHsKKyAgICAg
ICAgaWYgKGJpcXVhZFByb2Nlc3NvcigpLT5oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpICYmIGJp
cXVhZFByb2Nlc3NvcigpLT5zaG91bGRVc2VBUmF0ZSgpKSB7CisgICAgICAgICAgICBmbG9hdCBj
dXRvZmZGcmVxdWVuY3lbQmlxdWFkOjpNYXhGcmFtZXNUb1Byb2Nlc3NdOworICAgICAgICAgICAg
ZmxvYXQgcVtCaXF1YWQ6Ok1heEZyYW1lc1RvUHJvY2Vzc107CisgICAgICAgICAgICBmbG9hdCBn
YWluW0JpcXVhZDo6TWF4RnJhbWVzVG9Qcm9jZXNzXTsKKyAgICAgICAgICAgIGZsb2F0IGRldHVu
ZVtCaXF1YWQ6Ok1heEZyYW1lc1RvUHJvY2Vzc107IC8vIGluIENlbnRzCisKKyAgICAgICAgICAg
IEFTU0VSVChmcmFtZXNUb1Byb2Nlc3MgPD0gQmlxdWFkOjpNYXhGcmFtZXNUb1Byb2Nlc3MpOwor
CisgICAgICAgICAgICBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMSgpLmNhbGN1bGF0ZVNh
bXBsZUFjY3VyYXRlVmFsdWVzKGN1dG9mZkZyZXF1ZW5jeSwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAg
ICAgICAgICAgIGJpcXVhZFByb2Nlc3NvcigpLT5wYXJhbWV0ZXIyKCkuY2FsY3VsYXRlU2FtcGxl
QWNjdXJhdGVWYWx1ZXMocSwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICAgICAgICAgIGJpcXVhZFBy
b2Nlc3NvcigpLT5wYXJhbWV0ZXIzKCkuY2FsY3VsYXRlU2FtcGxlQWNjdXJhdGVWYWx1ZXMoZ2Fp
biwgZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICAgICAgICAgIGJpcXVhZFByb2Nlc3NvcigpLT5wYXJh
bWV0ZXI0KCkuY2FsY3VsYXRlU2FtcGxlQWNjdXJhdGVWYWx1ZXMoZGV0dW5lLCBmcmFtZXNUb1By
b2Nlc3MpOworCisgICAgICAgICAgICAvLyBJZiBhbGwgdGhlIHZhbHVlcyBhcmUgYWN0dWFsbHkg
Y29uc3RhbnQgZm9yIHRoaXMgcmVuZGVyIChvciB0aGUKKyAgICAgICAgICAgIC8vIGF1dG9tYXRp
b24gcmF0ZSBpcyAiay1yYXRlIiBmb3IgYWxsIG9mIHRoZSBBdWRpb1BhcmFtcyksIHdlIGRvbid0
IG5lZWQKKyAgICAgICAgICAgIC8vIHRvIGNvbXB1dGUgZmlsdGVyIGNvZWZmaWNpZW50cyBmb3Ig
ZWFjaCBmcmFtZSBzaW5jZSB0aGV5IHdvdWxkIGJlIHRoZQorICAgICAgICAgICAgLy8gc2FtZSBh
cyB0aGUgZmlyc3QuCisgICAgICAgICAgICBib29sIGlzQ29uc3RhbnQgPSBoYXNDb25zdGFudFZh
bHVlcyhjdXRvZmZGcmVxdWVuY3ksIGZyYW1lc1RvUHJvY2VzcykKKyAgICAgICAgICAgICAgICAm
JiBoYXNDb25zdGFudFZhbHVlcyhxLCBmcmFtZXNUb1Byb2Nlc3MpCisgICAgICAgICAgICAgICAg
JiYgaGFzQ29uc3RhbnRWYWx1ZXMoZ2FpbiwgZnJhbWVzVG9Qcm9jZXNzKQorICAgICAgICAgICAg
ICAgICYmIGhhc0NvbnN0YW50VmFsdWVzKGRldHVuZSwgZnJhbWVzVG9Qcm9jZXNzKTsKKworICAg
ICAgICAgICAgdXBkYXRlQ29lZmZpY2llbnRzKGlzQ29uc3RhbnQgPyAxIDogZnJhbWVzVG9Qcm9j
ZXNzLCBjdXRvZmZGcmVxdWVuY3ksIHEsIGdhaW4sIGRldHVuZSk7CiAgICAgICAgIH0gZWxzZSB7
Ci0gICAgICAgICAgICB2YWx1ZTEgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVyMSgpLnZh
bHVlKCk7Ci0gICAgICAgICAgICB2YWx1ZTIgPSBiaXF1YWRQcm9jZXNzb3IoKS0+cGFyYW1ldGVy
MigpLnZhbHVlKCk7Ci0gICAgICAgICAgICBnYWluID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFt
ZXRlcjMoKS52YWx1ZSgpOwotICAgICAgICAgICAgZGV0dW5lID0gYmlxdWFkUHJvY2Vzc29yKCkt
PnBhcmFtZXRlcjQoKS52YWx1ZSgpOworICAgICAgICAgICAgZmxvYXQgY3V0b2ZmRnJlcXVlbmN5
ID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjEoKS5maW5hbFZhbHVlKCk7CisgICAgICAg
ICAgICBmbG9hdCBxID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRlcjIoKS5maW5hbFZhbHVl
KCk7CisgICAgICAgICAgICBmbG9hdCBnYWluID0gYmlxdWFkUHJvY2Vzc29yKCktPnBhcmFtZXRl
cjMoKS5maW5hbFZhbHVlKCk7CisgICAgICAgICAgICBmbG9hdCBkZXR1bmUgPSBiaXF1YWRQcm9j
ZXNzb3IoKS0+cGFyYW1ldGVyNCgpLmZpbmFsVmFsdWUoKTsKKyAgICAgICAgICAgIHVwZGF0ZUNv
ZWZmaWNpZW50cygxLCAmY3V0b2ZmRnJlcXVlbmN5LCAmcSwgJmdhaW4sICZkZXR1bmUpOwogICAg
ICAgICB9CisgICAgfQorfQorCit2b2lkIEJpcXVhZERTUEtlcm5lbDo6dXBkYXRlQ29lZmZpY2ll
bnRzKHNpemVfdCBudW1iZXJPZkZyYW1lcywgY29uc3QgZmxvYXQqIGN1dG9mZkZyZXF1ZW5jeSwg
Y29uc3QgZmxvYXQqIHEsIGNvbnN0IGZsb2F0KiBnYWluLCBjb25zdCBmbG9hdCogZGV0dW5lKQor
eworICAgIC8vIENvbnZlcnQgZnJvbSBIZXJ0eiB0byBub3JtYWxpemVkIGZyZXF1ZW5jeSAwIC0+
IDEuCisgICAgZG91YmxlIG55cXVpc3QgPSB0aGlzLT5ueXF1aXN0KCk7CisKKyAgICBtX2JpcXVh
ZC5zZXRIYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcyhudW1iZXJPZkZyYW1lcyA+IDEpOwogCi0gICAg
ICAgIC8vIENvbnZlcnQgZnJvbSBIZXJ0eiB0byBub3JtYWxpemVkIGZyZXF1ZW5jeSAwIC0+IDEu
Ci0gICAgICAgIGRvdWJsZSBueXF1aXN0ID0gdGhpcy0+bnlxdWlzdCgpOwotICAgICAgICBkb3Vi
bGUgbm9ybWFsaXplZEZyZXF1ZW5jeSA9IHZhbHVlMSAvIG55cXVpc3Q7CisgICAgZm9yIChzaXpl
X3QgayA9IDA7IGsgPCBudW1iZXJPZkZyYW1lczsgKytrKSB7CisgICAgICAgIGRvdWJsZSBub3Jt
YWxpemVkRnJlcXVlbmN5ID0gY3V0b2ZmRnJlcXVlbmN5W2tdIC8gbnlxdWlzdDsKIAogICAgICAg
ICAvLyBPZmZzZXQgZnJlcXVlbmN5IGJ5IGRldHVuZS4KLSAgICAgICAgaWYgKGRldHVuZSkKLSAg
ICAgICAgICAgIG5vcm1hbGl6ZWRGcmVxdWVuY3kgKj0gcG93KDIsIGRldHVuZSAvIDEyMDApOwor
ICAgICAgICBpZiAoZGV0dW5lW2tdKSB7CisgICAgICAgICAgICAvLyBEZXR1bmUgbXVsdGlwbGll
cyB0aGUgZnJlcXVlbmN5IGJ5IDJeKGRldHVuZVtrXSAvIDEyMDApLgorICAgICAgICAgICAgbm9y
bWFsaXplZEZyZXF1ZW5jeSAqPSBzdGQ6OmV4cDIoZGV0dW5lW2tdIC8gMTIwMCk7CisgICAgICAg
IH0KIAotICAgICAgICAvLyBDb25maWd1cmUgdGhlIGJpcXVhZCB3aXRoIHRoZSBuZXcgZmlsdGVy
IHBhcmFtZXRlcnMgZm9yIHRoZSBhcHByb3ByaWF0ZSB0eXBlIG9mIGZpbHRlci4KKyAgICAgICAg
Ly8gQ29uZmlndXJlIHRoZSBiaXF1YWQgd2l0aCB0aGUgbmV3IGZpbHRlciBwYXJhbWV0ZXJzIGZv
ciB0aGUgYXBwcm9wcmlhdGUKKyAgICAgICAgLy8gdHlwZSBvZiBmaWx0ZXIuCiAgICAgICAgIHN3
aXRjaCAoYmlxdWFkUHJvY2Vzc29yKCktPnR5cGUoKSkgewogICAgICAgICBjYXNlIEJpcXVhZEZp
bHRlclR5cGU6Okxvd3Bhc3M6Ci0gICAgICAgICAgICBtX2JpcXVhZC5zZXRMb3dwYXNzUGFyYW1z
KG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMik7CisgICAgICAgICAgICBtX2JpcXVhZC5zZXRM
b3dwYXNzUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHFba10pOwogICAgICAgICAgICAg
YnJlYWs7CiAKICAgICAgICAgY2FzZSBCaXF1YWRGaWx0ZXJUeXBlOjpIaWdocGFzczoKLSAgICAg
ICAgICAgIG1fYmlxdWFkLnNldEhpZ2hwYXNzUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZh
bHVlMik7CisgICAgICAgICAgICBtX2JpcXVhZC5zZXRIaWdocGFzc1BhcmFtcyhrLCBub3JtYWxp
emVkRnJlcXVlbmN5LCBxW2tdKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2Ug
QmlxdWFkRmlsdGVyVHlwZTo6QmFuZHBhc3M6Ci0gICAgICAgICAgICBtX2JpcXVhZC5zZXRCYW5k
cGFzc1BhcmFtcyhub3JtYWxpemVkRnJlcXVlbmN5LCB2YWx1ZTIpOworICAgICAgICAgICAgbV9i
aXF1YWQuc2V0QmFuZHBhc3NQYXJhbXMoaywgbm9ybWFsaXplZEZyZXF1ZW5jeSwgcVtrXSk7CiAg
ICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6Okxvd3No
ZWxmOgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0TG93U2hlbGZQYXJhbXMobm9ybWFsaXplZEZy
ZXF1ZW5jeSwgZ2Fpbik7CisgICAgICAgICAgICBtX2JpcXVhZC5zZXRMb3dTaGVsZlBhcmFtcyhr
LCBub3JtYWxpemVkRnJlcXVlbmN5LCBnYWluW2tdKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAg
ICAgICAgIGNhc2UgQmlxdWFkRmlsdGVyVHlwZTo6SGlnaHNoZWxmOgotICAgICAgICAgICAgbV9i
aXF1YWQuc2V0SGlnaFNoZWxmUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIGdhaW4pOworICAg
ICAgICAgICAgbV9iaXF1YWQuc2V0SGlnaFNoZWxmUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVu
Y3ksIGdhaW5ba10pOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBCaXF1YWRG
aWx0ZXJUeXBlOjpQZWFraW5nOgotICAgICAgICAgICAgbV9iaXF1YWQuc2V0UGVha2luZ1BhcmFt
cyhub3JtYWxpemVkRnJlcXVlbmN5LCB2YWx1ZTIsIGdhaW4pOworICAgICAgICAgICAgbV9iaXF1
YWQuc2V0UGVha2luZ1BhcmFtcyhrLCBub3JtYWxpemVkRnJlcXVlbmN5LCBxW2tdLCBnYWluW2td
KTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgQmlxdWFkRmlsdGVyVHlwZTo6
Tm90Y2g6Ci0gICAgICAgICAgICBtX2JpcXVhZC5zZXROb3RjaFBhcmFtcyhub3JtYWxpemVkRnJl
cXVlbmN5LCB2YWx1ZTIpOworICAgICAgICAgICAgbV9iaXF1YWQuc2V0Tm90Y2hQYXJhbXMoaywg
bm9ybWFsaXplZEZyZXF1ZW5jeSwgcVtrXSk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAg
ICBjYXNlIEJpcXVhZEZpbHRlclR5cGU6OkFsbHBhc3M6Ci0gICAgICAgICAgICBtX2JpcXVhZC5z
ZXRBbGxwYXNzUGFyYW1zKG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHZhbHVlMik7CisgICAgICAgICAg
ICBtX2JpcXVhZC5zZXRBbGxwYXNzUGFyYW1zKGssIG5vcm1hbGl6ZWRGcmVxdWVuY3ksIHFba10p
OwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICB9CisKKyAgICBBU1NFUlQobnVt
YmVyT2ZGcmFtZXMpOworICAgIHVwZGF0ZVRhaWxUaW1lKG51bWJlck9mRnJhbWVzIC0gMSk7CiB9
CiAKIHZvaWQgQmlxdWFkRFNQS2VybmVsOjpwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2UsIGZs
b2F0KiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKQEAgLTEyMywxNSArMTU1
LDEyIEBAIHZvaWQgQmlxdWFkRFNQS2VybmVsOjpwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2Us
IGZsb2F0KiBkZXN0aW5hdGlvbiwgc2l6ZV90IGZyCiAgICAgLy8gRklYTUU6IGFzIGFuIG9wdGlt
aXphdGlvbiwgaW1wbGVtZW50IGEgd2F5IHRoYXQgYSBCaXF1YWQgb2JqZWN0IGNhbiBzaW1wbHkg
Y29weSBpdHMgaW50ZXJuYWwgZmlsdGVyIGNvZWZmaWNpZW50cyBmcm9tIGFub3RoZXIgQmlxdWFk
IG9iamVjdC4KICAgICAvLyBUaGVuIHJlLWZhY3RvciB0aGlzIGNvZGUgdG8gb25seSBydW4gZm9y
IHRoZSBmaXJzdCBCaXF1YWREU1BLZXJuZWwgb2YgZWFjaCBCaXF1YWRQcm9jZXNzb3IuCiAKLSAg
ICB1cGRhdGVDb2VmZmljaWVudHNJZk5lY2Vzc2FyeSh0cnVlLCBmYWxzZSk7CisgICAgdXBkYXRl
Q29lZmZpY2llbnRzSWZOZWNlc3NhcnkoZnJhbWVzVG9Qcm9jZXNzKTsKIAogICAgIG1fYmlxdWFk
LnByb2Nlc3Moc291cmNlLCBkZXN0aW5hdGlvbiwgZnJhbWVzVG9Qcm9jZXNzKTsKIH0KIAotdm9p
ZCBCaXF1YWREU1BLZXJuZWw6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKGludCBuRnJlcXVlbmNpZXMs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmxvYXQq
IGZyZXF1ZW5jeUh6LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZsb2F0KiBtYWdSZXNwb25zZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBmbG9hdCogcGhhc2VSZXNwb25zZSkKK3ZvaWQgQmlxdWFkRFNQS2VybmVsOjpnZXRG
cmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBuRnJlcXVlbmNpZXMsIGNvbnN0IGZsb2F0KiBmcmVx
dWVuY3lIeiwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSkKIHsKICAg
ICBib29sIGlzR29vZCA9IG5GcmVxdWVuY2llcyA+IDAgJiYgZnJlcXVlbmN5SHogJiYgbWFnUmVz
cG9uc2UgJiYgcGhhc2VSZXNwb25zZTsKICAgICBBU1NFUlQoaXNHb29kKTsKQEAgLTE0NCwyMiAr
MTczLDE1IEBAIHZvaWQgQmlxdWFkRFNQS2VybmVsOjpnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQg
bkZyZXF1ZW5jaWVzLAogCiAgICAgLy8gQ29udmVydCBmcm9tIGZyZXF1ZW5jeSBpbiBIeiB0byBu
b3JtYWxpemVkIGZyZXF1ZW5jeSAoMCAtPiAxKSwKICAgICAvLyB3aXRoIDEgZXF1YWwgdG8gdGhl
IE55cXVpc3QgZnJlcXVlbmN5LgotICAgIGZvciAoaW50IGsgPSAwOyBrIDwgbkZyZXF1ZW5jaWVz
OyArK2spCi0gICAgICAgIGZyZXF1ZW5jeVtrXSA9IG5hcnJvd1ByZWNpc2lvblRvRmxvYXQoZnJl
cXVlbmN5SHpba10gLyBueXF1aXN0KTsKLQotICAgIC8vIFdlIHdhbnQgdG8gZ2V0IHRoZSBmaW5h
bCB2YWx1ZXMgb2YgdGhlIGNvZWZmaWNpZW50cyBhbmQgY29tcHV0ZQotICAgIC8vIHRoZSByZXNw
b25zZSBmcm9tIHRoYXQgaW5zdGVhZCBvZiBzb21lIGludGVybWVkaWF0ZSBzbW9vdGhlZAotICAg
IC8vIHNldC4gRm9yY2VmdWxseSB1cGRhdGUgdGhlIGNvZWZmaWNpZW50cyBldmVuIGlmIHRoZXkg
YXJlIG5vdAotICAgIC8vIGRpcnR5LgotCi0gICAgdXBkYXRlQ29lZmZpY2llbnRzSWZOZWNlc3Nh
cnkoZmFsc2UsIHRydWUpOworICAgIGZvciAodW5zaWduZWQgayA9IDA7IGsgPCBuRnJlcXVlbmNp
ZXM7ICsraykKKyAgICAgICAgZnJlcXVlbmN5W2tdID0gZnJlcXVlbmN5SHpba10gLyBueXF1aXN0
OwogCiAgICAgbV9iaXF1YWQuZ2V0RnJlcXVlbmN5UmVzcG9uc2UobkZyZXF1ZW5jaWVzLCBmcmVx
dWVuY3kuZGF0YSgpLCBtYWdSZXNwb25zZSwgcGhhc2VSZXNwb25zZSk7CiB9CiAKIGRvdWJsZSBC
aXF1YWREU1BLZXJuZWw6OnRhaWxUaW1lKCkgY29uc3QKIHsKLSAgICByZXR1cm4gTWF4QmlxdWFk
RGVsYXlUaW1lOworICAgIHJldHVybiBtX3RhaWxUaW1lOwogfQogCiBkb3VibGUgQmlxdWFkRFNQ
S2VybmVsOjpsYXRlbmN5VGltZSgpIGNvbnN0CkBAIC0xNjcsNiArMTg5LDIxIEBAIGRvdWJsZSBC
aXF1YWREU1BLZXJuZWw6OmxhdGVuY3lUaW1lKCkgY29uc3QKICAgICByZXR1cm4gMDsKIH0KIAor
dm9pZCBCaXF1YWREU1BLZXJuZWw6OnVwZGF0ZVRhaWxUaW1lKHNpemVfdCBjb2VmSW5kZXgpCit7
CisgICAgLy8gQSByZWFzb25hYmxlIHVwcGVyIGxpbWl0IGZvciB0aGUgdGFpbCB0aW1lLiBXaGls
ZSBpdCdzIGVhc3kgdG8KKyAgICAvLyBjcmVhdGUgYmlxdWFkIGZpbHRlcnMgd2hvc2UgdGFpbCB0
aW1lIGNhbiBiZSBtdWNoIGxhcmdlciB0aGFuCisgICAgLy8gdGhpcywgbGltaXQgdGhlIG1heGlt
dW0gdG8gdGhpcyB2YWx1ZSBzbyB0aGF0IHdlIGRvbid0IGtlZXAgc3VjaAorICAgIC8vIG5vZGVz
IGFsaXZlICJmb3JldmVyIi4KKyAgICAvLyBUT0RPOiBXaGF0IGlzIGEgcmVhc29uYWJsZSB1cHBl
ciBsaW1pdD8KKyAgICBjb25zdGV4cHIgZG91YmxlIG1heFRhaWxUaW1lID0gMzA7CisKKyAgICBk
b3VibGUgc2FtcGxlUmF0ZSA9IHRoaXMtPnNhbXBsZVJhdGUoKTsKKyAgICBkb3VibGUgdGFpbCA9
IG1fYmlxdWFkLnRhaWxGcmFtZShjb2VmSW5kZXgsIG1heFRhaWxUaW1lICogc2FtcGxlUmF0ZSkg
LyBzYW1wbGVSYXRlOworCisgICAgbV90YWlsVGltZSA9IHN0ZDo6Y2xhbXAodGFpbCwgMC4wLCBt
YXhUYWlsVGltZSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVO
QUJMRShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0JpcXVhZERTUEtlcm5lbC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9C
aXF1YWREU1BLZXJuZWwuaAppbmRleCA3YWUxNjFhMTYyYzMzY2EyMjBmZTZjZTIxNTdkYmQxNWE4
NzQzMjk2Li5hMDYzNjIyNmNhNjU1MDMyNGYyYWZlMGQ3NWIyMjI5ZDlkNWNhM2VmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZERTUEtlcm5lbC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFkRFNQS2VybmVsLmgKQEAg
LTQ3LDE0ICs0NywxMyBAQCBwdWJsaWM6CiAKICAgICAvLyBHZXQgdGhlIG1hZ25pdHVkZSBhbmQg
cGhhc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4KICAgICAvLyBzZXQgb2Yg
ZnJlcXVlbmNpZXMgKGluIEh6KS4gVGhlIHBoYXNlIHJlc3BvbnNlIGlzIGluIHJhZGlhbnMuCi0g
ICAgdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVzLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZmxvYXQqIG1hZ1Jlc3BvbnNlLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZmxvYXQqIHBoYXNlUmVzcG9uc2UpOworICAgIHZvaWQgZ2V0RnJlcXVl
bmN5UmVzcG9uc2UodW5zaWduZWQgbkZyZXF1ZW5jaWVzLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5
SHosIGZsb2F0KiBtYWdSZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpOwogCiAgICAgZG91
YmxlIHRhaWxUaW1lKCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgZG91YmxlIGxhdGVuY3lUaW1lKCkg
Y29uc3Qgb3ZlcnJpZGU7CiAKKyAgICB2b2lkIHVwZGF0ZUNvZWZmaWNpZW50cyhzaXplX3QgbnVt
YmVyT2ZGcmFtZXMsIGNvbnN0IGZsb2F0KiBjdXRvZmZGcmVxdWVuY3ksIGNvbnN0IGZsb2F0KiBx
LCBjb25zdCBmbG9hdCogZ2FpbiwgY29uc3QgZmxvYXQqIGRldHVuZSk7CisKIHByaXZhdGU6CiAg
ICAgQmlxdWFkIG1fYmlxdWFkOwogICAgIEJpcXVhZFByb2Nlc3NvciogYmlxdWFkUHJvY2Vzc29y
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8QmlxdWFkUHJvY2Vzc29yKj4ocHJvY2Vzc29yKCkpOyB9
CkBAIC02Niw3ICs2NSwxMCBAQCBwcml2YXRlOgogICAgIC8vIHVzZWQuIElmIHxmb3JjZVVwZGF0
ZXwgaXMgdHJ1ZSwgd2UgdXBkYXRlIHRoZSBjb2VmZmljaWVudHMgZXZlbgogICAgIC8vIGlmIHRo
ZXkgYXJlIG5vdCBkaXJ0eS4gKFVzZWQgd2hlbiBjb21wdXRpbmcgdGhlIGZyZXF1ZW5jeQogICAg
IC8vIHJlc3BvbnNlLikKLSAgICB2b2lkIHVwZGF0ZUNvZWZmaWNpZW50c0lmTmVjZXNzYXJ5KGJv
b2wgdXNlU21vb3RoaW5nLCBib29sIGZvcmNlVXBkYXRlKTsKKyAgICB2b2lkIHVwZGF0ZUNvZWZm
aWNpZW50c0lmTmVjZXNzYXJ5KHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZvaWQgdXBk
YXRlVGFpbFRpbWUoc2l6ZV90IGNvZWZJbmRleCk7CisKKyAgICBkb3VibGUgbV90YWlsVGltZSB7
IHN0ZDo6bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6aW5maW5pdHkoKSB9OwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9CaXF1YWRGaWx0ZXJOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vQmlxdWFkRmlsdGVyTm9kZS5jcHAKaW5kZXggMWU3ZThmMGU3MjIzNmVhNTBkZWY5ZDNlNjdk
MGRlZjBmOWI3YWIxYy4uM2JlN2E5MjEyZjcyMDhmNjk3OTZhNDVlNmNmZjE5MmUwYzhiMzRjMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRGaWx0ZXJO
b2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZEZpbHRl
ck5vZGUuY3BwCkBAIC03Niw3ICs3Niw3IEBAIHZvaWQgQmlxdWFkRmlsdGVyTm9kZTo6c2V0VHlw
ZShCaXF1YWRGaWx0ZXJUeXBlIHR5cGUpCiAKIEV4Y2VwdGlvbk9yPHZvaWQ+IEJpcXVhZEZpbHRl
ck5vZGU6OmdldEZyZXF1ZW5jeVJlc3BvbnNlKGNvbnN0IFJlZjxGbG9hdDMyQXJyYXk+JiBmcmVx
dWVuY3lIeiwgY29uc3QgUmVmPEZsb2F0MzJBcnJheT4mIG1hZ1Jlc3BvbnNlLCBjb25zdCBSZWY8
RmxvYXQzMkFycmF5PiYgcGhhc2VSZXNwb25zZSkKIHsKLSAgICBhdXRvIGxlbmd0aCA9IGZyZXF1
ZW5jeUh6LT5sZW5ndGgoKTsKKyAgICB1bnNpZ25lZCBsZW5ndGggPSBmcmVxdWVuY3lIei0+bGVu
Z3RoKCk7CiAgICAgaWYgKG1hZ1Jlc3BvbnNlLT5sZW5ndGgoKSAhPSBsZW5ndGggfHwgcGhhc2VS
ZXNwb25zZS0+bGVuZ3RoKCkgIT0gbGVuZ3RoKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsg
SW52YWxpZFN0YXRlRXJyb3IsICJUaGUgYXJyYXlzIHBhc3NlZCBhcyBhcmd1bWVudHMgbXVzdCBo
YXZlIHRoZSBzYW1lIGxlbmd0aCIgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuY3BwCmluZGV4IGRjOWRhMDdmMzU1ZjA2M2RjYjg2
MjVjMGE1NDEyMzIwOWRlNDgxMWIuLjc4N2M5M2Q2MDFkMTc4NGM1YTdjNGYyNjQ1MmI4NGJlYzQ1
Y2ViOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFk
UHJvY2Vzc29yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVh
ZFByb2Nlc3Nvci5jcHAKQEAgLTY4LDYgKzY4LDExIEBAIHZvaWQgQmlxdWFkUHJvY2Vzc29yOjpj
aGVja0ZvckRpcnR5Q29lZmZpY2llbnRzKCkKICAgICBpZiAobV9wYXJhbWV0ZXIxLT5oYXNTYW1w
bGVBY2N1cmF0ZVZhbHVlcygpIHx8IG1fcGFyYW1ldGVyMi0+aGFzU2FtcGxlQWNjdXJhdGVWYWx1
ZXMoKSB8fCBtX3BhcmFtZXRlcjMtPmhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKCkgfHwgbV9wYXJh
bWV0ZXI0LT5oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpKSB7CiAgICAgICAgIG1fZmlsdGVyQ29l
ZmZpY2llbnRzRGlydHkgPSB0cnVlOwogICAgICAgICBtX2hhc1NhbXBsZUFjY3VyYXRlVmFsdWVz
ID0gdHJ1ZTsKKworICAgICAgICBtX3Nob3VsZFVzZUFSYXRlID0gbV9wYXJhbWV0ZXIxLT5hdXRv
bWF0aW9uUmF0ZSgpID09IEF1dG9tYXRpb25SYXRlOjpBUmF0ZQorICAgICAgICAgICAgfHwgbV9w
YXJhbWV0ZXIyLT5hdXRvbWF0aW9uUmF0ZSgpID09IEF1dG9tYXRpb25SYXRlOjpBUmF0ZQorICAg
ICAgICAgICAgfHwgbV9wYXJhbWV0ZXIzLT5hdXRvbWF0aW9uUmF0ZSgpID09IEF1dG9tYXRpb25S
YXRlOjpBUmF0ZQorICAgICAgICAgICAgfHwgbV9wYXJhbWV0ZXI0LT5hdXRvbWF0aW9uUmF0ZSgp
ID09IEF1dG9tYXRpb25SYXRlOjpBUmF0ZTsKICAgICB9IGVsc2UgewogICAgICAgICBpZiAobV9o
YXNKdXN0UmVzZXQpIHsKICAgICAgICAgICAgIC8vIFNuYXAgdG8gZXhhY3QgdmFsdWVzIGZpcnN0
IHRpbWUgYWZ0ZXIgcmVzZXQsIHRoZW4gc21vb3RoIGZvciBzdWJzZXF1ZW50IGNoYW5nZXMuCkBA
IC0xMTEsNyArMTE2LDcgQEAgdm9pZCBCaXF1YWRQcm9jZXNzb3I6OnNldFR5cGUoQmlxdWFkRmls
dGVyVHlwZSB0eXBlKQogICAgIH0KIH0KIAotdm9pZCBCaXF1YWRQcm9jZXNzb3I6OmdldEZyZXF1
ZW5jeVJlc3BvbnNlKGludCBuRnJlcXVlbmNpZXMsIGNvbnN0IGZsb2F0KiBmcmVxdWVuY3lIeiwg
ZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSkKK3ZvaWQgQmlxdWFkUHJv
Y2Vzc29yOjpnZXRGcmVxdWVuY3lSZXNwb25zZSh1bnNpZ25lZCBuRnJlcXVlbmNpZXMsIGNvbnN0
IGZsb2F0KiBmcmVxdWVuY3lIeiwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNw
b25zZSkKIHsKICAgICAvLyBDb21wdXRlIHRoZSBmcmVxdWVuY3kgcmVzcG9uc2Ugb24gYSBzZXBh
cmF0ZSB0ZW1wb3Jhcnkga2VybmVsCiAgICAgLy8gdG8gYXZvaWQgaW50ZXJmZXJpbmcgd2l0aCB0
aGUgcHJvY2Vzc2luZyBydW5uaW5nIGluIHRoZSBhdWRpbwpAQCAtMTE5LDYgKzEyNCwxNCBAQCB2
b2lkIEJpcXVhZFByb2Nlc3Nvcjo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UoaW50IG5GcmVxdWVuY2ll
cywgY29uc3QgZmxvYXQqIGZyZXF1ZQogICAgIAogICAgIGF1dG8gcmVzcG9uc2VLZXJuZWwgPSBt
YWtlVW5pcXVlPEJpcXVhZERTUEtlcm5lbD4odGhpcyk7CiAKKyAgICAvLyBHZXQgYSBjb3B5IG9m
IHRoZSBjdXJyZW50IGJpcXVhZCBmaWx0ZXIgY29lZmZpY2llbnRzIHNvIHdlIGNhbiB1cGRhdGUK
KyAgICAvLyB8cmVzcG9uc2VLZXJuZWx8IHdpdGggdGhlc2UgdmFsdWVzLgorICAgIGZsb2F0IGN1
dG9mZkZyZXF1ZW5jeSA9IHBhcmFtZXRlcjEoKS52YWx1ZSgpOworICAgIGZsb2F0IHEgPSBwYXJh
bWV0ZXIyKCkudmFsdWUoKTsKKyAgICBmbG9hdCBnYWluID0gcGFyYW1ldGVyMygpLnZhbHVlKCk7
CisgICAgZmxvYXQgZGV0dW5lID0gcGFyYW1ldGVyNCgpLnZhbHVlKCk7CisKKyAgICByZXNwb25z
ZUtlcm5lbC0+dXBkYXRlQ29lZmZpY2llbnRzKDEsICZjdXRvZmZGcmVxdWVuY3ksICZxLCAmZ2Fp
biwgJmRldHVuZSk7CiAgICAgcmVzcG9uc2VLZXJuZWwtPmdldEZyZXF1ZW5jeVJlc3BvbnNlKG5G
cmVxdWVuY2llcywgZnJlcXVlbmN5SHosIG1hZ1Jlc3BvbnNlLCBwaGFzZVJlc3BvbnNlKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9j
ZXNzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmlxdWFkUHJvY2Vzc29y
LmgKaW5kZXggZGFjY2MyNTU4MWNlNDdjYzg4MTk0YjhkMmQyZGMxMzZlN2Y0Zjg2Yi4uYWRiMGE2
YTk4MTE5YTdmOGYyYTIyYTI4N2I1YjYxZjE1ZWY4ZWVkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CaXF1YWRQcm9jZXNzb3IuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0JpcXVhZFByb2Nlc3Nvci5oCkBAIC01MCwxMCArNTAsNyBA
QCBwdWJsaWM6CiAKICAgICAvLyBHZXQgdGhlIG1hZ25pdHVkZSBhbmQgcGhhc2UgcmVzcG9uc2Ug
b2YgdGhlIGZpbHRlciBhdCB0aGUgZ2l2ZW4KICAgICAvLyBzZXQgb2YgZnJlcXVlbmNpZXMgKGlu
IEh6KS4gVGhlIHBoYXNlIHJlc3BvbnNlIGlzIGluIHJhZGlhbnMuCi0gICAgdm9pZCBnZXRGcmVx
dWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVzLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeUh6LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZmxvYXQqIG1hZ1Jlc3BvbnNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZmxvYXQqIHBoYXNlUmVzcG9uc2UpOworICAgIHZvaWQgZ2V0RnJlcXVlbmN5UmVzcG9uc2UodW5z
aWduZWQgbkZyZXF1ZW5jaWVzLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5SHosIGZsb2F0KiBtYWdS
ZXNwb25zZSwgZmxvYXQqIHBoYXNlUmVzcG9uc2UpOwogCiAgICAgdm9pZCBjaGVja0ZvckRpcnR5
Q29lZmZpY2llbnRzKCk7CiAgICAgCkBAIC02OCw2ICs2NSw4IEBAIHB1YmxpYzoKICAgICBCaXF1
YWRGaWx0ZXJUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBtX3R5cGU7IH0KICAgICB2b2lkIHNl
dFR5cGUoQmlxdWFkRmlsdGVyVHlwZSk7CiAKKyAgICBib29sIHNob3VsZFVzZUFSYXRlKCkgY29u
c3QgeyByZXR1cm4gbV9zaG91bGRVc2VBUmF0ZTsgfQorCiBwcml2YXRlOgogICAgIEJpcXVhZEZp
bHRlclR5cGUgbV90eXBlOwogCkBAIC04MSw2ICs4MCw4IEBAIHByaXZhdGU6CiAKICAgICAvLyBT
ZXQgdG8gdHJ1ZSBpZiBhbnkgb2YgdGhlIGZpbHRlciBwYXJhbWV0ZXJzIGFyZSBzYW1wbGUtYWNj
dXJhdGUuCiAgICAgYm9vbCBtX2hhc1NhbXBsZUFjY3VyYXRlVmFsdWVzOworCisgICAgYm9vbCBt
X3Nob3VsZFVzZUFSYXRlIHsgdHJ1ZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vQmlxdWFkLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5jcHAKaW5kZXggMTY4NmI1NmE3NjQ3
NWE3ZDYzMDViYjkwODAxZmVkZWE5NDJhOTU0Yi4uNzA0NDkzMzJlNWE3ZTYzMTA0NWI3MjY2YzFh
Y2ViNDljODcyZDdkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
QmlxdWFkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuY3Bw
CkBAIC01Nyw4ICs1NywxNiBAQCBCaXF1YWQ6OkJpcXVhZCgpCiAgICAgbV9vdXRwdXRCdWZmZXIu
YWxsb2NhdGUoa0J1ZmZlclNpemUgKyAyKTsKICNlbmRpZgogCisgICAgLy8gQWxsb2NhdGUgZW5v
dWdoIHNwYWNlIGZvciB0aGUgYS1yYXRlIGZpbHRlciBjb2VmZmljaWVudHMgdG8gaGFuZGxlIGEK
KyAgICAvLyByZW5kZXJpbmcgcXVhbnR1bSBvZiAxMjggZnJhbWVzLgorICAgIG1fYjAuYWxsb2Nh
dGUoTWF4RnJhbWVzVG9Qcm9jZXNzKTsKKyAgICBtX2IxLmFsbG9jYXRlKE1heEZyYW1lc1RvUHJv
Y2Vzcyk7CisgICAgbV9iMi5hbGxvY2F0ZShNYXhGcmFtZXNUb1Byb2Nlc3MpOworICAgIG1fYTEu
YWxsb2NhdGUoTWF4RnJhbWVzVG9Qcm9jZXNzKTsKKyAgICBtX2EyLmFsbG9jYXRlKE1heEZyYW1l
c1RvUHJvY2Vzcyk7CisKICAgICAvLyBJbml0aWFsaXplIGFzIHBhc3MtdGhydSAoc3RyYWlnaHQt
d2lyZSwgbm8gZmlsdGVyIGVmZmVjdCkKLSAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDEs
IDAsIDAsIDEsIDAsIDApOworICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMCwgMSwgMCwg
MCwgMSwgMCwgMCk7CiAKICAgICByZXNldCgpOyAvLyBjbGVhciBmaWx0ZXIgbWVtb3J5CiB9CkBA
IC02NywxMyArNzUsODIgQEAgQmlxdWFkOjp+QmlxdWFkKCkgPSBkZWZhdWx0OwogCiB2b2lkIEJp
cXVhZDo6cHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3Qg
ZnJhbWVzVG9Qcm9jZXNzKQogeworICAgIGlmIChoYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcygpKSB7
CisgICAgICAgIHNpemVfdCBuID0gZnJhbWVzVG9Qcm9jZXNzOworCisgICAgICAgIC8vIENyZWF0
ZSBsb2NhbCBjb3BpZXMgb2YgbWVtYmVyIHZhcmlhYmxlcworICAgICAgICBkb3VibGUgeDEgPSBt
X3gxOworICAgICAgICBkb3VibGUgeDIgPSBtX3gyOworICAgICAgICBkb3VibGUgeTEgPSBtX3kx
OworICAgICAgICBkb3VibGUgeTIgPSBtX3kyOworCisgICAgICAgIGF1dG8qIGIwID0gbV9iMC5k
YXRhKCk7CisgICAgICAgIGF1dG8qIGIxID0gbV9iMS5kYXRhKCk7CisgICAgICAgIGF1dG8qIGIy
ID0gbV9iMi5kYXRhKCk7CisgICAgICAgIGF1dG8qIGExID0gbV9hMS5kYXRhKCk7CisgICAgICAg
IGF1dG8qIGEyID0gbV9hMi5kYXRhKCk7CisKKyAgICAgICAgZm9yIChzaXplX3QgayA9IDA7IGsg
PCBuOyArK2spIHsKKyAgICAgICAgICAgIC8vIEZJWE1FOiB0aGlzIGNhbiBiZSBvcHRpbWl6ZWQg
YnkgcGlwZWxpbmluZyB0aGUgbXVsdGlwbHkgYWRkcy4uLgorICAgICAgICAgICAgZmxvYXQgeCA9
ICpzb3VyY2VQKys7CisgICAgICAgICAgICBmbG9hdCB5ID0gYjBba10gKiB4ICsgYjFba10gKiB4
MSArIGIyW2tdICogeDIgLSBhMVtrXSAqIHkxIC0gYTJba10gKiB5MjsKKworICAgICAgICAgICAg
KmRlc3RQKysgPSB5OworCisgICAgICAgICAgICAvLyBVcGRhdGUgc3RhdGUgdmFyaWFibGVzCisg
ICAgICAgICAgICB4MiA9IHgxOworICAgICAgICAgICAgeDEgPSB4OworICAgICAgICAgICAgeTIg
PSB5MTsKKyAgICAgICAgICAgIHkxID0geTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIExvY2Fs
IHZhcmlhYmxlcyBiYWNrIHRvIG1lbWJlci4gRmx1c2ggZGVub3JtYWxzIGhlcmUgc28gd2UKKyAg
ICAgICAgLy8gZG9uJ3Qgc2xvdyBkb3duIHRoZSBpbm5lciBsb29wIGFib3ZlLgorICAgICAgICBt
X3gxID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHgxKTsKKyAg
ICAgICAgbV94MiA9IERlbm9ybWFsRGlzYWJsZXI6OmZsdXNoRGVub3JtYWxGbG9hdFRvWmVybyh4
Mik7CisgICAgICAgIG1feTEgPSBEZW5vcm1hbERpc2FibGVyOjpmbHVzaERlbm9ybWFsRmxvYXRU
b1plcm8oeTEpOworICAgICAgICBtX3kyID0gRGVub3JtYWxEaXNhYmxlcjo6Zmx1c2hEZW5vcm1h
bEZsb2F0VG9aZXJvKHkyKTsKKworICAgICAgICAvLyBUaGVyZSBpcyBhbiBhc3N1bXB0aW9uIGhl
cmUgdGhhdCBvbmNlIHdlIGhhdmUgc2FtcGxlIGFjY3VyYXRlIHZhbHVlcyB3ZQorICAgICAgICAv
LyBjYW4gbmV2ZXIgZ28gYmFjayB0byBub3QgaGF2aW5nIHNhbXBsZSBhY2N1cmF0ZSB2YWx1ZXMu
IFRoaXMgaXMKKyAgICAgICAgLy8gY3VycmVudGx5IHRydWUgaW4gdGhlIHdheSBBdWRpb1BhcmFt
VGltbGluZSBpcyBpbXBsZW1lbnRlZDogb25jZSBhbgorICAgICAgICAvLyBldmVudCBpcyBpbnNl
cnRlZCwgc2FtcGxlIGFjY3VyYXRlIHByb2Nlc3NpbmcgaXMgYWx3YXlzIGVuYWJsZWQuCisgICAg
ICAgIC8vCisgICAgICAgIC8vIElmIHNvLCB0aGVuIHdlIG5ldmVyIGhhdmUgdG8gdXBkYXRlIHRo
ZSBzdGF0ZSB2YXJpYWJsZXMgZm9yIHRoZSBNQUNPU1gKKyAgICAgICAgLy8gcGF0aC4gVGhlIHN0
cnVjdHVyZSBvZiB0aGUgc3RhdGUgdmFyaWFibGUgaW4gdGhlc2UgY2FzZXMgYXJlbid0IHdlbGwK
KyAgICAgICAgLy8gZG9jdW1lbnRlZCBzbyBpdCdzIG5vdCBjbGVhciBob3cgdG8gdXBkYXRlIHRo
ZW0gYW55d2F5LgorICAgICAgICByZXR1cm47CisgICAgfQorCiAjaWYgVVNFKEFDQ0VMRVJBVEUp
CisgICAgYXV0byogaW5wdXRQID0gbV9pbnB1dEJ1ZmZlci5kYXRhKCk7CisgICAgYXV0byogb3V0
cHV0UCA9IG1fb3V0cHV0QnVmZmVyLmRhdGEoKTsKKworICAgIC8vIFNldCB1cCBmaWx0ZXIgc3Rh
dGUuIFRoaXMgaXMgbmVlZGVkIGluIGNhc2Ugd2UncmUgc3dpdGNoaW5nIGZyb20KKyAgICAvLyBm
aWx0ZXJpbmcgd2l0aCB2YXJpYWJsZSBjb2VmZmljaWVudHMgKGkuZS4sIHdpdGggYXV0b21hdGlv
bnMpIHRvCisgICAgLy8gZml4ZWQgY29lZmZpY2llbnRzICh3aXRob3V0IGF1dG9tYXRpb25zKS4K
KyAgICBpbnB1dFBbMF0gPSBtX3gyOworICAgIGlucHV0UFsxXSA9IG1feDE7CisgICAgb3V0cHV0
UFswXSA9IG1feTI7CisgICAgb3V0cHV0UFsxXSA9IG1feTE7CisKICAgICAvLyBVc2UgdmVjTGli
IGlmIGF2YWlsYWJsZQogICAgIHByb2Nlc3NGYXN0KHNvdXJjZVAsIGRlc3RQLCBmcmFtZXNUb1By
b2Nlc3MpOwogCisgICAgQVNTRVJUKGZyYW1lc1RvUHJvY2VzcyA+PSAyKTsKKworICAgIC8vIENv
cHkgdGhlIGxhc3QgaW5wdXRzIGFuZCBvdXRwdXRzIHRvIHRoZSBmaWx0ZXIgbWVtb3J5IHZhcmlh
Ymxlcy4KKyAgICAvLyBUaGlzIGlzIG5lZWRlZCBiZWNhdXNlIHRoZSBuZXh0IHJlbmRlcmluZyBx
dWFudHVtIG1pZ2h0IGJlIGFuCisgICAgLy8gYXV0b21hdGlvbiB3aGljaCBuZWVkcyB0aGUgaGlz
dG9yeSB0byBjb250aW51ZSBjb3JyZWN0bHkuIEJlY2F1c2UKKyAgICAvLyBzb3VyY2VQIGFuZCBk
ZXN0UCBjYW4gYmUgdGhlIHNhbWUgYmxvY2sgb2YgbWVtb3J5LCB3ZSBjYW4ndCByZWFkIGZyb20K
KyAgICAvLyBzb3VyY2VQIHRvIGdldCB0aGUgbGFzdCBpbnB1dHMuIEZvcnR1bmF0ZWx5LCBwcm9j
ZXNzRmFzdCBoYXMgcHV0IHRoZQorICAgIC8vIGxhc3QgaW5wdXRzIGluIGlucHV0WzBdIGFuZCBp
bnB1dFsxXS4KKyAgICBtX3gxID0gaW5wdXRQWzFdOworICAgIG1feDIgPSBpbnB1dFBbMF07Cisg
ICAgbV95MSA9IGRlc3RQW2ZyYW1lc1RvUHJvY2VzcyAtIDFdOworICAgIG1feTIgPSBkZXN0UFtm
cmFtZXNUb1Byb2Nlc3MgLSAyXTsKICNlbHNlCi0KLSAgICBpbnQgbiA9IGZyYW1lc1RvUHJvY2Vz
czsKKyAgICBzaXplX3QgbiA9IGZyYW1lc1RvUHJvY2VzczsKIAogICAgIC8vIENyZWF0ZSBsb2Nh
bCBjb3BpZXMgb2YgbWVtYmVyIHZhcmlhYmxlcwogICAgIGRvdWJsZSB4MSA9IG1feDE7CkBAIC04
MSwxNiArMTU4LDE2IEBAIHZvaWQgQmlxdWFkOjpwcm9jZXNzKGNvbnN0IGZsb2F0KiBzb3VyY2VQ
LCBmbG9hdCogZGVzdFAsIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCiAgICAgZG91YmxlIHkxID0g
bV95MTsKICAgICBkb3VibGUgeTIgPSBtX3kyOwogCi0gICAgZG91YmxlIGIwID0gbV9iMDsKLSAg
ICBkb3VibGUgYjEgPSBtX2IxOwotICAgIGRvdWJsZSBiMiA9IG1fYjI7Ci0gICAgZG91YmxlIGEx
ID0gbV9hMTsKLSAgICBkb3VibGUgYTIgPSBtX2EyOworICAgIGRvdWJsZSBiMCA9IG1fYjBbMF07
CisgICAgZG91YmxlIGIxID0gbV9iMVswXTsKKyAgICBkb3VibGUgYjIgPSBtX2IyWzBdOworICAg
IGRvdWJsZSBhMSA9IG1fYTFbMF07CisgICAgZG91YmxlIGEyID0gbV9hMlswXTsKIAogICAgIHdo
aWxlIChuLS0pIHsKICAgICAgICAgLy8gRklYTUU6IHRoaXMgY2FuIGJlIG9wdGltaXplZCBieSBw
aXBlbGluaW5nIHRoZSBtdWx0aXBseSBhZGRzLi4uCiAgICAgICAgIGZsb2F0IHggPSAqc291cmNl
UCsrOwotICAgICAgICBmbG9hdCB5ID0gYjAqeCArIGIxKngxICsgYjIqeDIgLSBhMSp5MSAtIGEy
KnkyOworICAgICAgICBmbG9hdCB5ID0gYjAgKiB4ICsgYjEgKiB4MSArIGIyICogeDIgLSBhMSAq
IHkxIC0gYTIgKiB5MjsKIAogICAgICAgICAqZGVzdFArKyA9IHk7CiAKQEAgLTEwNywxMiArMTg0
LDYgQEAgdm9pZCBCaXF1YWQ6OnByb2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZVAsIGZsb2F0KiBk
ZXN0UCwgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKICAgICBtX3gyID0gRGVub3JtYWxEaXNhYmxl
cjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHgyKTsKICAgICBtX3kxID0gRGVub3JtYWxEaXNh
Ymxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHkxKTsKICAgICBtX3kyID0gRGVub3JtYWxE
aXNhYmxlcjo6Zmx1c2hEZW5vcm1hbEZsb2F0VG9aZXJvKHkyKTsKLQotICAgIG1fYjAgPSBiMDsK
LSAgICBtX2IxID0gYjE7Ci0gICAgbV9iMiA9IGIyOwotICAgIG1fYTEgPSBhMTsKLSAgICBtX2Ey
ID0gYTI7CiAjZW5kaWYKIH0KIApAQCAtMTIzLDExICsxOTQsMTEgQEAgdm9pZCBCaXF1YWQ6OnBy
b2Nlc3MoY29uc3QgZmxvYXQqIHNvdXJjZVAsIGZsb2F0KiBkZXN0UCwgc2l6ZV90IGZyYW1lc1Rv
UHJvY2VzcykKIHZvaWQgQmlxdWFkOjpwcm9jZXNzRmFzdChjb25zdCBmbG9hdCogc291cmNlUCwg
ZmxvYXQqIGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQogewogICAgIGRvdWJsZSBmaWx0
ZXJDb2VmZmljaWVudHNbNV07Ci0gICAgZmlsdGVyQ29lZmZpY2llbnRzWzBdID0gbV9iMDsKLSAg
ICBmaWx0ZXJDb2VmZmljaWVudHNbMV0gPSBtX2IxOwotICAgIGZpbHRlckNvZWZmaWNpZW50c1sy
XSA9IG1fYjI7Ci0gICAgZmlsdGVyQ29lZmZpY2llbnRzWzNdID0gbV9hMTsKLSAgICBmaWx0ZXJD
b2VmZmljaWVudHNbNF0gPSBtX2EyOworICAgIGZpbHRlckNvZWZmaWNpZW50c1swXSA9IG1fYjBb
MF07CisgICAgZmlsdGVyQ29lZmZpY2llbnRzWzFdID0gbV9iMVswXTsKKyAgICBmaWx0ZXJDb2Vm
ZmljaWVudHNbMl0gPSBtX2IyWzBdOworICAgIGZpbHRlckNvZWZmaWNpZW50c1szXSA9IG1fYTFb
MF07CisgICAgZmlsdGVyQ29lZmZpY2llbnRzWzRdID0gbV9hMlswXTsKIAogICAgIGRvdWJsZSog
aW5wdXRQID0gbV9pbnB1dEJ1ZmZlci5kYXRhKCk7CiAgICAgZG91YmxlKiBvdXRwdXRQID0gbV9v
dXRwdXRCdWZmZXIuZGF0YSgpOwpAQCAtMTM3LDcgKzIwOCw3IEBAIHZvaWQgQmlxdWFkOjpwcm9j
ZXNzRmFzdChjb25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXplX3QgZnJhbWVz
VG9Qcm9jCiAKICAgICAvLyBCcmVhayB1cCBwcm9jZXNzaW5nIGludG8gc21hbGxlciBzbGljZXMg
KGtCdWZmZXJTaXplKSBpZiBuZWNlc3NhcnkuCiAKLSAgICBpbnQgbiA9IGZyYW1lc1RvUHJvY2Vz
czsKKyAgICBzaXplX3QgbiA9IGZyYW1lc1RvUHJvY2VzczsKIAogICAgIHdoaWxlIChuID4gMCkg
ewogICAgICAgICBpbnQgZnJhbWVzVGhpc1RpbWUgPSBuIDwga0J1ZmZlclNpemUgPyBuIDoga0J1
ZmZlclNpemU7CkBAIC0xNjEsNyArMjMyLDcgQEAgdm9pZCBCaXF1YWQ6OnByb2Nlc3NTbGljZUZh
c3QoZG91YmxlKiBzb3VyY2VQLCBkb3VibGUqIGRlc3RQLCBkb3VibGUqIGNvZWZmaWNpZW4KICAg
ICAvLyBVc2UgZG91YmxlLXByZWNpc2lvbiBmb3IgZmlsdGVyIHN0YWJpbGl0eQogICAgIHZEU1Bf
ZGVxMjJEKHNvdXJjZVAsIDEsIGNvZWZmaWNpZW50c1AsIGRlc3RQLCAxLCBmcmFtZXNUb1Byb2Nl
c3MpOwogCi0gICAgLy8gU2F2ZSBoaXN0b3J5LiAgTm90ZSB0aGF0IHNvdXJjZVAgYW5kIGRlc3RQ
IHJlZmVyZW5jZSBtX2lucHV0QnVmZmVyIGFuZCBtX291dHB1dEJ1ZmZlciByZXNwZWN0aXZlbHku
CisgICAgLy8gU2F2ZSBoaXN0b3J5LiBOb3RlIHRoYXQgc291cmNlUCBhbmQgZGVzdFAgcmVmZXJl
bmNlIG1faW5wdXRCdWZmZXIgYW5kIG1fb3V0cHV0QnVmZmVyIHJlc3BlY3RpdmVseS4KICAgICAv
LyBUaGVzZSBidWZmZXJzIGFyZSBhbGxvY2F0ZWQgKGluIHRoZSBjb25zdHJ1Y3Rvcikgd2l0aCBz
cGFjZSBmb3IgdHdvIGV4dHJhIHNhbXBsZXMgc28gaXQncyBPSyB0byBhY2Nlc3MKICAgICAvLyBh
cnJheSB2YWx1ZXMgdHdvIGJleW9uZCBmcmFtZXNUb1Byb2Nlc3MuCiAgICAgc291cmNlUFswXSA9
IHNvdXJjZVBbZnJhbWVzVG9Qcm9jZXNzIC0gMiArIDJdOwpAQCAtMTg0LDIxICsyNTUsMjAgQEAg
dm9pZCBCaXF1YWQ6OnJlc2V0KCkKICAgICBkb3VibGUqIG91dHB1dFAgPSBtX291dHB1dEJ1ZmZl
ci5kYXRhKCk7CiAgICAgb3V0cHV0UFswXSA9IDA7CiAgICAgb3V0cHV0UFsxXSA9IDA7CisjZW5k
aWYKIAotI2Vsc2UKICAgICBtX3gxID0gbV94MiA9IG1feTEgPSBtX3kyID0gMDsKLSNlbmRpZgor
CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRMb3dwYXNzUGFyYW1zKGRvdWJsZSBjdXRvZmYsIGRvdWJs
ZSByZXNvbmFuY2UpCit2b2lkIEJpcXVhZDo6c2V0TG93cGFzc1BhcmFtcyhzaXplX3QgaW5kZXgs
IGRvdWJsZSBjdXRvZmYsIGRvdWJsZSByZXNvbmFuY2UpCiB7CiAgICAgLy8gTGltaXQgY3V0b2Zm
IHRvIDAgdG8gMS4KICAgICBjdXRvZmYgPSBzdGQ6Om1heCgwLjAsIHN0ZDo6bWluKGN1dG9mZiwg
MS4wKSk7CiAgICAgCiAgICAgaWYgKGN1dG9mZiA9PSAxKSB7CiAgICAgICAgIC8vIFdoZW4gY3V0
b2ZmIGlzIDEsIHRoZSB6LXRyYW5zZm9ybSBpcyAxLgotICAgICAgICBzZXROb3JtYWxpemVkQ29l
ZmZpY2llbnRzKDEsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwg
MCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIDEsIDAsIDAs
IDEsIDAsIDApOwogICAgIH0gZWxzZSBpZiAoY3V0b2ZmID4gMCkgewogICAgICAgICAvLyBDb21w
dXRlIGJpcXVhZCBjb2VmZmljaWVudHMgZm9yIGxvd3Bhc3MgZmlsdGVyCiAgICAgICAgIHJlc29u
YW5jZSA9IHN0ZDo6bWF4KDAuMCwgcmVzb25hbmNlKTsgLy8gY2FuJ3QgZ28gbmVnYXRpdmUKQEAg
LTIxNywyNCArMjg3LDIyIEBAIHZvaWQgQmlxdWFkOjpzZXRMb3dwYXNzUGFyYW1zKGRvdWJsZSBj
dXRvZmYsIGRvdWJsZSByZXNvbmFuY2UpCiAgICAgICAgIGRvdWJsZSBhMSA9IC0yICogY29zdzsK
ICAgICAgICAgZG91YmxlIGEyID0gMSAtIGFscGhhOwogCi0gICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CisgICAgICAgIHNldE5vcm1hbGl6
ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOwogICAgIH0gZWxz
ZSB7CiAgICAgICAgIC8vIFdoZW4gY3V0b2ZmIGlzIHplcm8sIG5vdGhpbmcgZ2V0cyB0aHJvdWdo
IHRoZSBmaWx0ZXIsIHNvIHNldAogICAgICAgICAvLyBjb2VmZmljaWVudHMgdXAgY29ycmVjdGx5
LgotICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoaW5kZXgsIDAsIDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBC
aXF1YWQ6OnNldEhpZ2hwYXNzUGFyYW1zKGRvdWJsZSBjdXRvZmYsIGRvdWJsZSByZXNvbmFuY2Up
Cit2b2lkIEJpcXVhZDo6c2V0SGlnaHBhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgY3V0
b2ZmLCBkb3VibGUgcmVzb25hbmNlKQogewogICAgIC8vIExpbWl0IGN1dG9mZiB0byAwIHRvIDEu
CiAgICAgY3V0b2ZmID0gc3RkOjptYXgoMC4wLCBzdGQ6Om1pbihjdXRvZmYsIDEuMCkpOwogCiAg
ICAgaWYgKGN1dG9mZiA9PSAxKSB7CiAgICAgICAgIC8vIFRoZSB6LXRyYW5zZm9ybSBpcyAwLgot
ICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2Vm
ZmljaWVudHMoaW5kZXgsIDAsIDAsIDAsIDEsIDAsIDApOwogICAgIH0gZWxzZSBpZiAoY3V0b2Zm
ID4gMCkgewogICAgICAgICAvLyBDb21wdXRlIGJpcXVhZCBjb2VmZmljaWVudHMgZm9yIGhpZ2hw
YXNzIGZpbHRlcgogICAgICAgICByZXNvbmFuY2UgPSBzdGQ6Om1heCgwLjAsIHJlc29uYW5jZSk7
IC8vIGNhbid0IGdvIG5lZ2F0aXZlCkBAIC0yNTMsMjkgKzMyMSwyOCBAQCB2b2lkIEJpcXVhZDo6
c2V0SGlnaHBhc3NQYXJhbXMoZG91YmxlIGN1dG9mZiwgZG91YmxlIHJlc29uYW5jZSkKICAgICAg
ICAgZG91YmxlIGExID0gLTIgKiBjb3N3OwogICAgICAgICBkb3VibGUgYTIgPSAxIC0gYWxwaGE7
CiAKLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEs
IGEyKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgYjAsIGIxLCBi
MiwgYTAsIGExLCBhMik7CiAgICAgfSBlbHNlIHsKICAgICAgIC8vIFdoZW4gY3V0b2ZmIGlzIHpl
cm8sIHdlIG5lZWQgdG8gYmUgY2FyZWZ1bCBiZWNhdXNlIHRoZSBhYm92ZQogICAgICAgLy8gZ2l2
ZXMgYSBxdWFkcmF0aWMgZGl2aWRlZCBieSB0aGUgc2FtZSBxdWFkcmF0aWMsIHdpdGggcG9sZXMK
ICAgICAgIC8vIGFuZCB6ZXJvcyBvbiB0aGUgdW5pdCBjaXJjbGUgaW4gdGhlIHNhbWUgcGxhY2Uu
IFdoZW4gY3V0b2ZmCiAgICAgICAvLyBpcyB6ZXJvLCB0aGUgei10cmFuc2Zvcm0gaXMgMS4KLSAg
ICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cygxLCAwLCAwLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZp
Y2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAwLCAwKTsKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFk
OjpzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGRvdWJsZSBiMCwgZG91YmxlIGIxLCBkb3VibGUg
YjIsIGRvdWJsZSBhMCwgZG91YmxlIGExLCBkb3VibGUgYTIpCit2b2lkIEJpcXVhZDo6c2V0Tm9y
bWFsaXplZENvZWZmaWNpZW50cyhzaXplX3QgaW5kZXgsIGRvdWJsZSBiMCwgZG91YmxlIGIxLCBk
b3VibGUgYjIsIGRvdWJsZSBhMCwgZG91YmxlIGExLCBkb3VibGUgYTIpCiB7CiAgICAgZG91Ymxl
IGEwSW52ZXJzZSA9IDEgLyBhMDsKICAgICAKLSAgICBtX2IwID0gYjAgKiBhMEludmVyc2U7Ci0g
ICAgbV9iMSA9IGIxICogYTBJbnZlcnNlOwotICAgIG1fYjIgPSBiMiAqIGEwSW52ZXJzZTsKLSAg
ICBtX2ExID0gYTEgKiBhMEludmVyc2U7Ci0gICAgbV9hMiA9IGEyICogYTBJbnZlcnNlOworICAg
IG1fYjBbaW5kZXhdID0gYjAgKiBhMEludmVyc2U7CisgICAgbV9iMVtpbmRleF0gPSBiMSAqIGEw
SW52ZXJzZTsKKyAgICBtX2IyW2luZGV4XSA9IGIyICogYTBJbnZlcnNlOworICAgIG1fYTFbaW5k
ZXhdID0gYTEgKiBhMEludmVyc2U7CisgICAgbV9hMltpbmRleF0gPSBhMiAqIGEwSW52ZXJzZTsK
IH0KIAotdm9pZCBCaXF1YWQ6OnNldExvd1NoZWxmUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRv
dWJsZSBkYkdhaW4pCit2b2lkIEJpcXVhZDo6c2V0TG93U2hlbGZQYXJhbXMoc2l6ZV90IGluZGV4
LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKQogewogICAgIC8vIENsaXAgZnJlcXVl
bmNpZXMgdG8gYmV0d2VlbiAwIGFuZCAxLCBpbmNsdXNpdmUuCiAgICAgZnJlcXVlbmN5ID0gc3Rk
OjptYXgoMC4wLCBzdGQ6Om1pbihmcmVxdWVuY3ksIDEuMCkpOwpAQCAtMjg0LDggKzM1MSw3IEBA
IHZvaWQgQmlxdWFkOjpzZXRMb3dTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUg
ZGJHYWluKQogCiAgICAgaWYgKGZyZXF1ZW5jeSA9PSAxKSB7CiAgICAgICAgIC8vIFRoZSB6LXRy
YW5zZm9ybSBpcyBhIGNvbnN0YW50IGdhaW4uCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmlj
aWVudHMoQSAqIEEsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwg
MCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIEEgKiBBLCAw
LCAwLCAxLCAwLCAwKTsKICAgICB9IGVsc2UgaWYgKGZyZXF1ZW5jeSA+IDApIHsKICAgICAgICAg
ZG91YmxlIHcwID0gcGlEb3VibGUgKiBmcmVxdWVuY3k7CiAgICAgICAgIGRvdWJsZSBTID0gMTsg
Ly8gZmlsdGVyIHNsb3BlICgxIGlzIG1heCB2YWx1ZSkKQEAgLTMwMiwxNSArMzY4LDE0IEBAIHZv
aWQgQmlxdWFkOjpzZXRMb3dTaGVsZlBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJH
YWluKQogICAgICAgICBkb3VibGUgYTEgPSAtMiAqIChhTWludXNPbmUgKyBhUGx1c09uZSAqIGsp
OwogICAgICAgICBkb3VibGUgYTIgPSBhUGx1c09uZSArIGFNaW51c09uZSAqIGsgLSBrMjsKIAot
ICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIp
OworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBh
MCwgYTEsIGEyKTsKICAgICB9IGVsc2UgewogICAgICAgICAvLyBXaGVuIGZyZXF1ZW5jeSBpcyAw
LCB0aGUgei10cmFuc2Zvcm0gaXMgMS4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50
cygxLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDApOwor
ICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAwLCAw
KTsKICAgICB9CiB9CiAKLXZvaWQgQmlxdWFkOjpzZXRIaWdoU2hlbGZQYXJhbXMoZG91YmxlIGZy
ZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKK3ZvaWQgQmlxdWFkOjpzZXRIaWdoU2hlbGZQYXJhbXMo
c2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKQogewogICAgIC8v
IENsaXAgZnJlcXVlbmNpZXMgdG8gYmV0d2VlbiAwIGFuZCAxLCBpbmNsdXNpdmUuCiAgICAgZnJl
cXVlbmN5ID0gc3RkOjptYXgoMC4wLCBzdGQ6Om1pbihmcmVxdWVuY3ksIDEuMCkpOwpAQCAtMzE5
LDggKzM4NCw3IEBAIHZvaWQgQmlxdWFkOjpzZXRIaWdoU2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1
ZW5jeSwgZG91YmxlIGRiR2FpbikKIAogICAgIGlmIChmcmVxdWVuY3kgPT0gMSkgewogICAgICAg
ICAvLyBUaGUgei10cmFuc2Zvcm0gaXMgMS4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNp
ZW50cygxLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsIDAsIDAp
OworICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAw
LCAwKTsKICAgICB9IGVsc2UgaWYgKGZyZXF1ZW5jeSA+IDApIHsKICAgICAgICAgZG91YmxlIHcw
ID0gcGlEb3VibGUgKiBmcmVxdWVuY3k7CiAgICAgICAgIGRvdWJsZSBTID0gMTsgLy8gZmlsdGVy
IHNsb3BlICgxIGlzIG1heCB2YWx1ZSkKQEAgLTMzNywxNSArNDAxLDE0IEBAIHZvaWQgQmlxdWFk
OjpzZXRIaWdoU2hlbGZQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIGRiR2FpbikKICAg
ICAgICAgZG91YmxlIGExID0gMiAqIChhTWludXNPbmUgLSBhUGx1c09uZSAqIGspOwogICAgICAg
ICBkb3VibGUgYTIgPSBhUGx1c09uZSAtIGFNaW51c09uZSAqIGsgLSBrMjsKIAotICAgICAgICBz
ZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGIwLCBiMSwgYjIsIGEwLCBhMSwgYTIpOworICAgICAg
ICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCBiMCwgYjEsIGIyLCBhMCwgYTEsIGEy
KTsKICAgICB9IGVsc2UgewogICAgICAgICAvLyBXaGVuIGZyZXF1ZW5jeSA9IDAsIHRoZSBmaWx0
ZXIgaXMganVzdCBhIGdhaW4sIEFeMi4KLSAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50
cyhBICogQSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAw
KTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgQSAqIEEsIDAsIDAs
IDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6OnNldFBlYWtpbmdQYXJhbXMoZG91
YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEsIGRvdWJsZSBkYkdhaW4pCit2b2lkIEJpcXVhZDo6c2V0
UGVha2luZ1BhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBRLCBk
b3VibGUgZGJHYWluKQogewogICAgIC8vIENsaXAgZnJlcXVlbmNpZXMgdG8gYmV0d2VlbiAwIGFu
ZCAxLCBpbmNsdXNpdmUuCiAgICAgZnJlcXVlbmN5ID0gc3RkOjptYXgoMC4wLCBzdGQ6Om1pbihm
cmVxdWVuY3ksIDEuMCkpOwpAQCAtMzY4LDIyICs0MzEsMjAgQEAgdm9pZCBCaXF1YWQ6OnNldFBl
YWtpbmdQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEsIGRvdWJsZSBkYkdhaW4pCiAg
ICAgICAgICAgICBkb3VibGUgYTEgPSAtMiAqIGs7CiAgICAgICAgICAgICBkb3VibGUgYTIgPSAx
IC0gYWxwaGEgLyBBOwogCi0gICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGIw
LCBiMSwgYjIsIGEwLCBhMSwgYTIpOworICAgICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNp
ZW50cyhpbmRleCwgYjAsIGIxLCBiMiwgYTAsIGExLCBhMik7CiAgICAgICAgIH0gZWxzZSB7CiAg
ICAgICAgICAgICAvLyBXaGVuIFEgPSAwLCB0aGUgYWJvdmUgZm9ybXVsYXMgaGF2ZSBwcm9ibGVt
cy4gSWYgd2UgbG9vayBhdAogICAgICAgICAgICAgLy8gdGhlIHotdHJhbnNmb3JtLCB3ZSBjYW4g
c2VlIHRoYXQgdGhlIGxpbWl0IGFzIFEtPjAgaXMgQV4yLCBzbwogICAgICAgICAgICAgLy8gc2V0
IHRoZSBmaWx0ZXIgdGhhdCB3YXkuCi0gICAgICAgICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2ll
bnRzKEEgKiBBLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAx
LCAwLCAwKTsKKyAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIEEg
KiBBLCAwLCAwLCAxLCAwLCAwKTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7CiAgICAgICAgIC8v
IFdoZW4gZnJlcXVlbmN5IGlzIDAgb3IgMSwgdGhlIHotdHJhbnNmb3JtIGlzIDEuCi0gICAgICAg
IHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50
cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfQogfQogCi12b2lkIEJpcXVhZDo6c2V0
QWxscGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSkKK3ZvaWQgQmlxdWFkOjpz
ZXRBbGxwYXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEp
CiB7CiAgICAgLy8gQ2xpcCBmcmVxdWVuY2llcyB0byBiZXR3ZWVuIDAgYW5kIDEsIGluY2x1c2l2
ZS4KICAgICBmcmVxdWVuY3kgPSBzdGQ6Om1heCgwLjAsIHN0ZDo6bWluKGZyZXF1ZW5jeSwgMS4w
KSk7CkBAIC00MDQsMjIgKzQ2NSwyMCBAQCB2b2lkIEJpcXVhZDo6c2V0QWxscGFzc1BhcmFtcyhk
b3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSkKICAgICAgICAgICAgIGRvdWJsZSBhMSA9IC0yICog
azsKICAgICAgICAgICAgIGRvdWJsZSBhMiA9IDEgLSBhbHBoYTsKIAotICAgICAgICAgICAgc2V0
Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAg
ICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwg
YTIpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gV2hlbiBRID0gMCwgdGhlIGFi
b3ZlIGZvcm11bGFzIGhhdmUgcHJvYmxlbXMuIElmIHdlIGxvb2sgYXQKICAgICAgICAgICAgIC8v
IHRoZSB6LXRyYW5zZm9ybSwgd2UgY2FuIHNlZSB0aGF0IHRoZSBsaW1pdCBhcyBRLT4wIGlzIC0x
LCBzbwogICAgICAgICAgICAgLy8gc2V0IHRoZSBmaWx0ZXIgdGhhdCB3YXkuCi0gICAgICAgICAg
ICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKC0xLCAwLCAwLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRD
b2VmZmljaWVudHMoaW5kZXgsIC0xLCAwLCAwLCAxLCAwLCAwKTsKICAgICAgICAgfQogICAgIH0g
ZWxzZSB7CiAgICAgICAgIC8vIFdoZW4gZnJlcXVlbmN5IGlzIDAgb3IgMSwgdGhlIHotdHJhbnNm
b3JtIGlzIDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAgICAgc2V0Tm9y
bWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAgICAgfQogfQog
Ci12b2lkIEJpcXVhZDo6c2V0Tm90Y2hQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEp
Cit2b2lkIEJpcXVhZDo6c2V0Tm90Y2hQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVl
bmN5LCBkb3VibGUgUSkKIHsKICAgICAvLyBDbGlwIGZyZXF1ZW5jaWVzIHRvIGJldHdlZW4gMCBh
bmQgMSwgaW5jbHVzaXZlLgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwgc3RkOjptaW4o
ZnJlcXVlbmN5LCAxLjApKTsKQEAgLTQ0MCwyMiArNDk5LDIwIEBAIHZvaWQgQmlxdWFkOjpzZXRO
b3RjaFBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSkKICAgICAgICAgICAgIGRvdWJs
ZSBhMSA9IC0yICogazsKICAgICAgICAgICAgIGRvdWJsZSBhMiA9IDEgLSBhbHBoYTsKIAotICAg
ICAgICAgICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEy
KTsKKyAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwg
YjIsIGEwLCBhMSwgYTIpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gV2hlbiBR
ID0gMCwgdGhlIGFib3ZlIGZvcm11bGFzIGhhdmUgcHJvYmxlbXMuIElmIHdlIGxvb2sgYXQKICAg
ICAgICAgICAgIC8vIHRoZSB6LXRyYW5zZm9ybSwgd2UgY2FuIHNlZSB0aGF0IHRoZSBsaW1pdCBh
cyBRLT4wIGlzIDAsIHNvCiAgICAgICAgICAgICAvLyBzZXQgdGhlIGZpbHRlciB0aGF0IHdheS4K
LSAgICAgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMCwgMCwgMCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgICAgICBzZXRO
b3JtYWxpemVkQ29lZmZpY2llbnRzKGluZGV4LCAwLCAwLCAwLCAxLCAwLCAwKTsKICAgICAgICAg
fQogICAgIH0gZWxzZSB7CiAgICAgICAgIC8vIFdoZW4gZnJlcXVlbmN5IGlzIDAgb3IgMSwgdGhl
IHotdHJhbnNmb3JtIGlzIDEuCi0gICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwg
MCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwLCAwKTsKKyAgICAg
ICAgc2V0Tm9ybWFsaXplZENvZWZmaWNpZW50cyhpbmRleCwgMSwgMCwgMCwgMSwgMCwgMCk7CiAg
ICAgfQogfQogCi12b2lkIEJpcXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5j
eSwgZG91YmxlIFEpCit2b2lkIEJpcXVhZDo6c2V0QmFuZHBhc3NQYXJhbXMoc2l6ZV90IGluZGV4
LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSkKIHsKICAgICAvLyBObyBuZWdhdGl2ZSBmcmVx
dWVuY2llcyBhbGxvd2VkLgogICAgIGZyZXF1ZW5jeSA9IHN0ZDo6bWF4KDAuMCwgZnJlcXVlbmN5
KTsKQEAgLTQ3NiwxMyArNTMzLDEyIEBAIHZvaWQgQmlxdWFkOjpzZXRCYW5kcGFzc1BhcmFtcyhk
b3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSkKICAgICAgICAgICAgIGRvdWJsZSBhMSA9IC0yICog
azsKICAgICAgICAgICAgIGRvdWJsZSBhMiA9IDEgLSBhbHBoYTsKIAotICAgICAgICAgICAgc2V0
Tm9ybWFsaXplZENvZWZmaWNpZW50cyhiMCwgYjEsIGIyLCBhMCwgYTEsIGEyKTsKKyAgICAgICAg
ICAgIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoaW5kZXgsIGIwLCBiMSwgYjIsIGEwLCBhMSwg
YTIpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gV2hlbiBRID0gMCwgdGhlIGFi
b3ZlIGZvcm11bGFzIGhhdmUgcHJvYmxlbXMuIElmIHdlIGxvb2sgYXQKICAgICAgICAgICAgIC8v
IHRoZSB6LXRyYW5zZm9ybSwgd2UgY2FuIHNlZSB0aGF0IHRoZSBsaW1pdCBhcyBRLT4wIGlzIDEs
IHNvCiAgICAgICAgICAgICAvLyBzZXQgdGhlIGZpbHRlciB0aGF0IHdheS4KLSAgICAgICAgICAg
IHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoMSwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgICAgICBzZXROb3JtYWxpemVkQ29l
ZmZpY2llbnRzKGluZGV4LCAxLCAwLCAwLCAxLCAwLCAwKTsKICAgICAgICAgfQogICAgIH0gZWxz
ZSB7CiAgICAgICAgIC8vIFdoZW4gdGhlIGN1dG9mZiBpcyB6ZXJvLCB0aGUgei10cmFuc2Zvcm0g
YXBwcm9hY2hlcyAwLCBpZiBRCkBAIC00OTAsMzkgKzU0NiwxNCBAQCB2b2lkIEJpcXVhZDo6c2V0
QmFuZHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpCiAgICAgICAgIC8vIHBy
ZXR0eSBtdWNoIHVuZGVmaW5lZC4gV2hhdCBzaG91bGQgd2UgZG8gaW4gdGhpcyBjYXNlPwogICAg
ICAgICAvLyBGb3Igbm93LCBqdXN0IG1ha2UgdGhlIGZpbHRlciAwLiBXaGVuIHRoZSBjdXRvZmYg
aXMgMSwgdGhlCiAgICAgICAgIC8vIHotdHJhbnNmb3JtIGFsc28gYXBwcm9hY2hlcyAwLgotICAg
ICAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKDAsIDAsIDAsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMSwgMCwgMCk7CisgICAgICAgIHNldE5vcm1hbGl6ZWRDb2VmZmlj
aWVudHMoaW5kZXgsIDAsIDAsIDAsIDEsIDAsIDApOwogICAgIH0KIH0KIAotdm9pZCBCaXF1YWQ6
OnNldFplcm9Qb2xlUGFpcnMoc3RkOjpjb21wbGV4PGRvdWJsZT4gemVybywgc3RkOjpjb21wbGV4
PGRvdWJsZT4gcG9sZSkKLXsKLSAgICBkb3VibGUgYjAgPSAxOwotICAgIGRvdWJsZSBiMSA9IC0y
ICogemVyby5yZWFsKCk7Ci0KLSAgICBkb3VibGUgemVyb01hZyA9IGFicyh6ZXJvKTsKLSAgICBk
b3VibGUgYjIgPSB6ZXJvTWFnICogemVyb01hZzsKLQotICAgIGRvdWJsZSBhMSA9IC0yICogcG9s
ZS5yZWFsKCk7Ci0KLSAgICBkb3VibGUgcG9sZU1hZyA9IGFicyhwb2xlKTsKLSAgICBkb3VibGUg
YTIgPSBwb2xlTWFnICogcG9sZU1hZzsKLSAgICBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKGIw
LCBiMSwgYjIsIDEsIGExLCBhMik7Ci19Ci0KLXZvaWQgQmlxdWFkOjpzZXRBbGxwYXNzUG9sZShz
dGQ6OmNvbXBsZXg8ZG91YmxlPiBwb2xlKQotewotICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IHpl
cm8gPSBzdGQ6OmNvbXBsZXg8ZG91YmxlPigxLCAwKSAvIHBvbGU7Ci0gICAgc2V0WmVyb1BvbGVQ
YWlycyh6ZXJvLCBwb2xlKTsKLX0KLQotdm9pZCBCaXF1YWQ6OmdldEZyZXF1ZW5jeVJlc3BvbnNl
KGludCBuRnJlcXVlbmNpZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u
c3QgZmxvYXQqIGZyZXF1ZW5jeSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm
bG9hdCogbWFnUmVzcG9uc2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxv
YXQqIHBoYXNlUmVzcG9uc2UpCit2b2lkIEJpcXVhZDo6Z2V0RnJlcXVlbmN5UmVzcG9uc2UodW5z
aWduZWQgbkZyZXF1ZW5jaWVzLCBjb25zdCBmbG9hdCogZnJlcXVlbmN5LCBmbG9hdCogbWFnUmVz
cG9uc2UsIGZsb2F0KiBwaGFzZVJlc3BvbnNlKQogewogICAgIC8vIEV2YWx1YXRlIHRoZSBaLXRy
YW5zZm9ybSBvZiB0aGUgZmlsdGVyIGF0IGdpdmVuIG5vcm1hbGl6ZWQKLSAgICAvLyBmcmVxdWVu
Y3kgZnJvbSAwIHRvIDEuICAoMSBjb3JyZXNwb25kcyB0byB0aGUgTnlxdWlzdAorICAgIC8vIGZy
ZXF1ZW5jeSBmcm9tIDAgdG8gMS4gKDEgY29ycmVzcG9uZHMgdG8gdGhlIE55cXVpc3QKICAgICAv
LyBmcmVxdWVuY3kuKQogICAgIC8vCiAgICAgLy8gVGhlIHotdHJhbnNmb3JtIG9mIHRoZSBmaWx0
ZXIgaXMKQEAgLTUzOCwxMyArNTY5LDEzIEBAIHZvaWQgQmlxdWFkOjpnZXRGcmVxdWVuY3lSZXNw
b25zZShpbnQgbkZyZXF1ZW5jaWVzLAogICAgIC8vIHdpdGggejEgPSAxL3ogYW5kIHogPSBleHAo
aipwaSpmcmVxdWVuY3kpLiBIZW5jZSB6MSA9IGV4cCgtaipwaSpmcmVxdWVuY3kpCiAKICAgICAv
LyBNYWtlIGxvY2FsIGNvcGllcyBvZiB0aGUgY29lZmZpY2llbnRzIGFzIGEgbWljcm8tb3B0aW1p
emF0aW9uLgotICAgIGRvdWJsZSBiMCA9IG1fYjA7Ci0gICAgZG91YmxlIGIxID0gbV9iMTsKLSAg
ICBkb3VibGUgYjIgPSBtX2IyOwotICAgIGRvdWJsZSBhMSA9IG1fYTE7Ci0gICAgZG91YmxlIGEy
ID0gbV9hMjsKKyAgICBkb3VibGUgYjAgPSBtX2IwWzBdOworICAgIGRvdWJsZSBiMSA9IG1fYjFb
MF07CisgICAgZG91YmxlIGIyID0gbV9iMlswXTsKKyAgICBkb3VibGUgYTEgPSBtX2ExWzBdOwor
ICAgIGRvdWJsZSBhMiA9IG1fYTJbMF07CiAgICAgCi0gICAgZm9yIChpbnQgayA9IDA7IGsgPCBu
RnJlcXVlbmNpZXM7ICsraykgeworICAgIGZvciAodW5zaWduZWQgayA9IDA7IGsgPCBuRnJlcXVl
bmNpZXM7ICsraykgewogICAgICAgICBkb3VibGUgb21lZ2EgPSAtcGlEb3VibGUgKiBmcmVxdWVu
Y3lba107CiAgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IHogPSBzdGQ6OmNvbXBsZXg8ZG91
YmxlPihjb3Mob21lZ2EpLCBzaW4ob21lZ2EpKTsKICAgICAgICAgc3RkOjpjb21wbGV4PGRvdWJs
ZT4gbnVtZXJhdG9yID0gYjAgKyAoYjEgKyBiMiAqIHopICogejsKQEAgLTU1NSw2ICs1ODYsMzA4
IEBAIHZvaWQgQmlxdWFkOjpnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVzLAog
ICAgIH0KIH0KIAorc3RhdGljIGRvdWJsZSByZXBlYXRlZFJvb3RSZXNwb25zZShkb3VibGUgbiwg
ZG91YmxlIGMxLCBkb3VibGUgYzIsIGRvdWJsZSByLCBkb3VibGUgbG9nRVBTKQoreworICAgIC8v
IFRoZSByZXNwb25zZSBpcyBoKG4pID0gcl4obi0yKSpbYzEqKG4rMSkqcl4yK2MyXS4gV2UncmUg
bG9va2luZworICAgIC8vIGZvciBuIHN1Y2ggdGhhdCB8aChuKXwgPSBlcHMuIEVxdWl2YWxlbnRs
eSwgd2Ugd2FudCBhIHJvb3QKKyAgICAvLyBvZiB0aGUgZXF1YXRpb24gbG9nKHxoKG4pfCkgLSBs
b2coZXBzKSA9IDAgb3IKKyAgICAvLworICAgIC8vICAgKG4tMikqbG9nKHIpICsgbG9nKHxjMSoo
bisxKSpyXjIrYzJ8KSAtIGxvZyhlcHMpCisgICAgLy8KKyAgICAvLyBUaGlzIGhlbHBzIHdpdGgg
ZmluZGluZyBhIG51ZW1yaWNhbCBzb2x1dGlvbiBiZWNhdXNlIHRoaXMKKyAgICAvLyBhcHByb3hp
bWF0ZWx5IGxpbmVhcml6ZXMgdGhlIHJlc3BvbnNlIGZvciBsYXJnZSBuLgorCisgICAgcmV0dXJu
IChuIC0gMikgKiBzdGQ6OmxvZyhyKSArIHN0ZDo6bG9nKHN0ZDo6ZmFicyhjMSAqIChuICsgMSkg
KiByICogciArIGMyKSkgLSBsb2dFUFM7Cit9CisKKworLy8gUmVndWxhIEZhbHNpIHJvb3QgZmlu
ZGVyLCBJbGxpbm9pcyB2YXJpYW50CisvLyAoaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kv
RmFsc2VfcG9zaXRpb25fbWV0aG9kI1RoZV9JbGxpbm9pc19hbGdvcml0aG0pLgorLy8KKy8vIFRo
aXMgZmluZHMgYSByb290IG9mIHRoZSByZXBlYXRlZCByb290IHJlc3BvbnNlIHdoZXJlIHRoZSBy
b290IGlzCisvLyBhc3N1bWVkIHRvIGxpZSBiZXR3ZWVuIHxsb3d8IGFuZCB8aGlnaHwuIFRoZSBy
ZXNwb25zZSBpcyBnaXZlbiBieQorLy8gfGMxfCwgfGMyfCwgYW5kIHxyfCBhcyBkZXRlcm1pbmVk
IGJ5IHxSZXBlYXRlZFJvb3RSZXNwb25zZXwuCisvLyB8bG9nRVBTfCBpcyB0aGUgbG9nIHRoZSB0
aGUgbWF4aW11bSBhbGxvd2VkIGFtcGxpdHVkZSBpbiB0aGUKKy8vIHJlc3BvbnNlLgorc3RhdGlj
IGRvdWJsZSByb290RmluZGVyKGRvdWJsZSBsb3csIGRvdWJsZSBoaWdoLCBkb3VibGUgbG9nRVBT
LCBkb3VibGUgYzEsIGRvdWJsZSBjMiwgZG91YmxlIHIpCit7CisgICAgLy8gRGVzaXJlZCBhY2N1
cmF5IG9mIHRoZSByb290IChpbiBmcmFtZXMpLiBUaGlzIGRvZXNuJ3QgbmVlZCB0byBiZQorICAg
IC8vIHN1cGVyLWFjY3VyYXRlLCBzbyBoYWxmIGZyYW1lIGlzIGdvb2QgZW5vdWdoLCBhbmQgc2hv
dWxkIGJlIGxlc3MKKyAgICAvLyB0aGFuIDEgYmVjYXVzZSB0aGUgYWxnb3JpdGhtIG1heSBwcmVt
YXR1cmVseSB0ZXJtaW5hdGUuCisgICAgY29uc3RleHByIGRvdWJsZSBhY2N1cmFjeVRocmVzaG9s
ZCA9IDAuNTsKKyAgICAvLyBNYXggbnVtYmVyIG9mIGl0ZXJhdGlvbnMgdG8gZG8uIElmIHdlIGhh
dmVuJ3QgY29udmVyZ2VkIGJ5IG5vdywKKyAgICAvLyBqdXN0IHJldHVybiB3aGF0ZXZlciB3ZSd2
ZSBmb3VuZC4KKyAgICBjb25zdGV4cHIgaW50IG1heEl0ZXJhdGlvbnMgPSAxMDsKKworICAgIGlu
dCBzaWRlID0gMDsKKyAgICBkb3VibGUgcm9vdCA9IDA7CisgICAgZG91YmxlIGZMb3cgPSByZXBl
YXRlZFJvb3RSZXNwb25zZShsb3csIGMxLCBjMiwgciwgbG9nRVBTKTsKKyAgICBkb3VibGUgZkhp
Z2ggPSByZXBlYXRlZFJvb3RSZXNwb25zZShoaWdoLCBjMSwgYzIsIHIsIGxvZ0VQUyk7CisKKyAg
ICAvLyBUaGUgZnVuY3Rpb24gdmFsdWVzIG11c3QgYmUgZmluaXRlIGFuZCBoYXZlIG9wcG9zaXRl
IHNpZ25zIQorICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKGZMb3cpKTsKKyAgICBBU1NFUlQoc3Rk
Ojppc2Zpbml0ZShmSGlnaCkpOworICAgIEFTU0VSVChmTG93ICogZkhpZ2ggPD0gMCk7CisKKyAg
ICBpbnQgaXRlcmF0aW9uOworICAgIGZvciAoaXRlcmF0aW9uID0gMDsgaXRlcmF0aW9uIDwgbWF4
SXRlcmF0aW9uczsgKytpdGVyYXRpb24pIHsKKyAgICAgICAgcm9vdCA9IChmTG93ICogaGlnaCAt
IGZIaWdoICogbG93KSAvIChmTG93IC0gZkhpZ2gpOworICAgICAgICBpZiAoZmFicyhoaWdoIC0g
bG93KSA8IGFjY3VyYWN5VGhyZXNob2xkICogc3RkOjpmYWJzKGhpZ2ggKyBsb3cpKQorICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGRvdWJsZSBmciA9IHJlcGVhdGVkUm9vdFJlc3BvbnNlKHJv
b3QsIGMxLCBjMiwgciwgbG9nRVBTKTsKKworICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShm
cikpOworCisgICAgICAgIGlmIChmciAqIGZIaWdoID4gMCkgeworICAgICAgICAgICAgLy8gZnIg
YW5kIGZIaWdoIGhhdmUgc2FtZSBzaWduLiBDb3B5IHJvb3QgdG8gZkhpZ2gKKyAgICAgICAgICAg
IGhpZ2ggPSByb290OworICAgICAgICAgICAgZkhpZ2ggPSBmcjsKKyAgICAgICAgICAgIHNpZGUg
PSAtMTsKKyAgICAgICAgfSBlbHNlIGlmIChmTG93ICogZnIgPiAwKSB7CisgICAgICAgICAgICAv
LyBmciBhbmQgZkxvdyBoYXZlIHNhbWUgc2lnbi4gQ29weSByb290IHRvIGZMb3cKKyAgICAgICAg
ICAgIGxvdyA9IHJvb3Q7CisgICAgICAgICAgICBmTG93ID0gZnI7CisgICAgICAgICAgICBpZiAo
c2lkZSA9PSAxKQorICAgICAgICAgICAgICAgIGZIaWdoIC89IDI7CisgICAgICAgICAgICBzaWRl
ID0gMTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIGZMb3cgKiBmciBsb29rcyBs
aWtlIHplcm8sIHNvIGFzc3VtZSB3ZSd2ZSBjb252ZXJnZWQuCisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgfQorICAgIH0KKworICAgIC8vIFdhbnQgdG8ga25vdyBpZiB0aGUgbWF4IG51bWJl
ciBvZiBpdGVyYXRpb25zIGlzIGV2ZXIgZXhjZWVkZWQgc28KKyAgICAvLyB3ZSBjYW4gdW5kZXJz
dGFuZCB3aHkgdGhhdCBoYXBwZW5lZC4KKyAgICBBU1NFUlQoaXRlcmF0aW9uIDwgbWF4SXRlcmF0
aW9ucyk7CisKKyAgICByZXR1cm4gcm9vdDsKK30KKworZG91YmxlIEJpcXVhZDo6dGFpbEZyYW1l
KHNpemVfdCBjb2VmSW5kZXgsIGRvdWJsZSBtYXhGcmFtZSkKK3sKKyAgICAvLyBUaGUgQmlxdWFk
IGZpbHRlciBpcyBnaXZlbiBieQorICAgIC8vCisgICAgLy8gICBIKHopID0gKGIwICsgYjEveiAr
IGIyL3peMikvKDEgKyBhMS96ICsgYTIvel4yKS4KKyAgICAvLworICAgIC8vIFRvIGNvbXB1dGUg
dGhlIHRhaWwgdGltZSwgY29tcHV0ZSB0aGUgaW1wdWxzZSByZXNwb25zZSwgaChuKSwgb2YKKyAg
ICAvLyBIKHopLCB3aGljaCB3ZSBjYW4gZG8gYW5hbHl0aWNhbGx5LiBGcm9tIHRoaXMgaW1wdWxz
ZSByZXNwb25zZSwKKyAgICAvLyBmaW5kIHRoZSB2YWx1ZSBuMCB3aGVyZSB8aChuKXwgPD0gZXBz
IGZvciBuID49IG4wLgorICAgIC8vCisgICAgLy8gQXNzdW1lIGZpcnN0IHRoYXQgdGhlIHR3byBw
b2xlcyBvZiBIKHopIGFyZSBub3QgcmVwZWF0ZWQsIHNheSByMQorICAgIC8vIGFuZCByMi4gVGhl
biwgd2UgY2FuIGNvbXB1dGUgYSBwYXJ0aWFsIGZyYWN0aW9uIGV4cGFuc2lvbiBvZgorICAgIC8v
IEgoeik6CisgICAgLy8KKyAgICAvLyAgIEgoeikgPSAoYjArYjEveitiMi96XjIpL1soMS1yMS96
KSooMS1yMi96KV0KKyAgICAvLyAgICAgICAgPSBiMCArIEMyLyh6LXIyKSAtIEMxLyh6LXIxKQor
ICAgIC8vCisgICAgLy8gIHdoZXJlCisgICAgLy8gICAgQzIgPSAoYjAqcjJeMitiMSpyMitiMikv
KHIyLXIxKQorICAgIC8vICAgIEMxID0gKGIwKnIxXjIrYjEqcjErYjIpLyhyMi1yMSkKKyAgICAv
LworICAgIC8vIEV4cGFuZCBIKHopIHRoZW4gdGhpcyBpbiBwb3dlcnMgb2YgMS96IGdpdmVzOgor
ICAgIC8vCisgICAgLy8gICBIKHopID0gYjAgLShDMi9yMitDMS9yMSkgKyBzdW0oQzIqcjJeKGkt
MSkvel5pICsgQzEqcjFeKGktMSkvel5pKQorICAgIC8vCisgICAgLy8gVGh1cywgZm9yIG4gPiAx
ICh3ZSBkb24ndCBjYXJlIGFib3V0IHNtYWxsIG4pLAorICAgIC8vCisgICAgLy8gICBoKG4pID0g
QzIqcjJeKG4tMSkgKyBDMSpyMV4obi0xKQorICAgIC8vCisgICAgLy8gV2UgbmVlZCB0byBmaW5k
IG4wIHN1Y2ggdGhhdCB8aChuKXwgPCBlcHMgZm9yIG4gPiBuMC4KKyAgICAvLworICAgIC8vIENh
c2UgMTogcjEgYW5kIHIyIGFyZSByZWFsIGFuZCBkaXN0aW5jdCwgd2l0aCB8cjF8Pj18cjJ8Lgor
ICAgIC8vCisgICAgLy8gVGhlbgorICAgIC8vCisgICAgLy8gICBoKG4pID0gQzEqcjFeKG4tMSkq
KDEgKyBDMi9DMSoocjIvcjEpXihuLTEpKQorICAgIC8vCisgICAgLy8gc28KKyAgICAvLworICAg
IC8vICAgfGgobil8ID0gfEMxfCp8cjF8XihuLTEpKnwxK0MyL0MxKihyMi9yMSleKG4tMSl8Cisg
ICAgLy8gICAgICAgICAgPD0gfEMxfCp8cjF8XihuLTEpKlsxICsgfEMyL0MxfCp8cjIvcjF8Xihu
LTEpXQorICAgIC8vICAgICAgICAgIDw9IHxDMXwqfHIxfF4obi0xKSpbMSArIHxDMi9DMXxdCisg
ICAgLy8KKyAgICAvLyBzbworICAgIC8vCisgICAgLy8gICB8aChuKXwgPSB8QzF8KnxyMXxeKG4t
MSkqfDErQzIvQzEqKHIyL3IxKV4obi0xKXwKKyAgICAvLyAgICAgICAgICA8PSB8QzF8KnxyMXxe
KG4tMSkqWzEgKyB8QzIvQzF8KnxyMi9yMXxeKG4tMSldCisgICAgLy8gICAgICAgICAgPD0gfEMx
fCp8cjF8XihuLTEpKlsxICsgfEMyL0MxfF0KKyAgICAvLworICAgIC8vIGJ5IHVzaW5nIHRoZSB0
cmlhbmdsZSBpbmVxdWFsaXR5IGFuZCB0aGUgZmFjdCB0aGF0IHxyMnw8PXxyMXwuCisgICAgLy8g
QW5kIHdlIHdhbnQgfGgobil8PD1lcHMgd2hpY2ggaXMgdHJ1ZSBpZgorICAgIC8vCisgICAgLy8g
ICB8QzF8KnxyMXxeKG4tMSkqWzEgKyB8QzIvQzF8XSA8PSBlcHMKKyAgICAvLworICAgIC8vIG9y
CisgICAgLy8KKyAgICAvLyAgIG4gPj0gMSArIGxvZyhlcHMvQykvbG9nKHxyMXwpCisgICAgLy8K
KyAgICAvLyB3aGVyZSBDID0gfEMxfCpbMSt8QzIvQzF8XSA9IHxDMXwgKyB8QzJ8LgorICAgIC8v
CisgICAgLy8gQ2FzZSAyOiByMSBhbmQgcjIgYXJlIGNvbXBsZXgKKyAgICAvLworICAgIC8vIFRo
bmUgd2UgY2FuIHdyaXRlIHIxPXIqZXhwKGkqcCkgYW5kIHIyPXIqZXhwKC1pKnApLiBTbywKKyAg
ICAvLworICAgIC8vICAgfGgobil8ID0gfEMyKnJeKG4tMSkqZXhwKC1pKnAqKG4tMSkpICsgQzEq
cl4obi0xKSpleHAoaSpwKihuLTEpKXwKKyAgICAvLyAgICAgICAgICA9IHxDMXwqcl4obi0xKSp8
MSArIEMyL0MxKmV4cCgtaSpwKihuLTEpKS9leHAoaSpuKihuLTEpKXwKKyAgICAvLyAgICAgICAg
ICA8PSB8QzF8KnJeKG4tMSkqWzEgKyB8QzIvQzF8XQorICAgIC8vCisgICAgLy8gQWdhaW4sIHRo
aXMgaXMgZWFzaWx5IHNvbHZlZCB0byBnaXZlCisgICAgLy8KKyAgICAvLyAgIG4gPj0gMSArIGxv
ZyhlcHMvQykvbG9nKHIpCisgICAgLy8KKyAgICAvLyB3aGVyZSBDID0gfEMxfCpbMSt8QzIvQzF8
XSA9IHxDMXwgKyB8QzJ8LgorICAgIC8vCisgICAgLy8gQ2FzZSAzOiBSZXBlYXRlZCByb290cywg
cjE9cjI9ci4KKyAgICAvLworICAgIC8vIEluIHRoaXMgY2FzZSwKKyAgICAvLworICAgIC8vICAg
SCh6KSA9IChiMCtiMS96K2IyL3peMikvWygxLXIveileMgorICAgIC8vCisgICAgLy8gRXhwYW5k
aW5nIHRoaXMgaW4gcG93ZXJzIG9mIDEveiBnaXZlczoKKyAgICAvLworICAgIC8vICAgSCh6KSA9
IEMxKnN1bSgoaSsxKSpyXmkvel5pKSAtIEMyICogc3VtKHJeKGktMikvel5pKSArIGIyL3JeMgor
ICAgIC8vICAgICAgICA9IGIyL3JeMiArIHN1bShbQzEqKGkrMSkqcl5pICsgQzIqcl4oaS0yKV0v
el5pKQorICAgIC8vIHdoZXJlCisgICAgLy8gICBDMSA9IChiMCpyXjIrYjEqcitiMikvcl4yCisg
ICAgLy8gICBDMiA9IGIxKnIrMipiMgorICAgIC8vCisgICAgLy8gVGh1cywgdGhlIGltcHVsc2Ug
cmVzcG9uc2UgaXMKKyAgICAvLworICAgIC8vICAgaChuKSA9IEMxKihuKzEpKnJebiArIEMyKnJe
KG4tMikKKyAgICAvLyAgICAgICAgPSByXihuLTIpKltDMSoobisxKSpyXjIrQzJdCisgICAgLy8K
KyAgICAvLyBTbworICAgIC8vCisgICAgLy8gICB8aChuKXwgPSB8cnxeKG4tMikqfEMxKihuKzEp
KnJeMitDMnwKKyAgICAvLworICAgIC8vIFRvIGZpbmQgbiBzdWNoIHRoYXQgfGgobil8IDwgZXBz
LCB3ZSBuZWVkIGEgbnVtZXJpY2FsIG1ldGhvZCBpbgorICAgIC8vIGdlbmVyYWwsIHNvIHRoZXJl
J3Mgbm8gcmVhbCByZWFzb24gdG8gc2ltcGxpZnkgdGhpcyBvciB1c2Ugb3RoZXIKKyAgICAvLyBh
cHByb3hpbWF0aW9ucy4gSnVzdCBzb2x2ZSB8aChuKXw9ZXBzIGRpcmVjdGx5LgorICAgIC8vCisg
ICAgLy8gVGh1cywgZm9yIGFuIHNldCBvZiBmaWx0ZXIgY29lZmZpY2llbnRzLCB3ZSBjYW4gY29t
cHV0ZSB0aGUgdGFpbAorICAgIC8vIHRpbWUuCisgICAgLy8KKworICAgIC8vIElmIHRoZSBtYXhp
bXVtIGFtcGxpdHVkZSBvZiB0aGUgaW1wdWxzZSByZXNwb25zZSBpcyBsZXNzIHRoYW4KKyAgICAv
LyB0aGlzLCB3ZSBhc3N1bWUgdGhhdCB3ZSd2ZSByZWFjaGVkIHRoZSB0YWlsIG9mIHRoZSByZXNw
b25zZS4KKyAgICAvLyBDdXJyZW50bHksIHRoaXMgbWVhbnMgdGhhdCB0aGUgaW1wdWxzZSBpcyBs
ZXNzIHRoYW4gMSBiaXQgb2YgYQorICAgIC8vIDE2LWJpdCBQQ00gdmFsdWUuCisgICAgY29uc3Rl
eHByIGRvdWJsZSBtYXhUYWlsQW1wbGl0dWRlID0gMSAvIDMyNzY4LjA7CisKKyAgICAvLyBGaW5k
IHRoZSByb290cyBvZiAxK2ExL3orYTIvel4yID0gMC4gT3IgZXF1aXZhbGVudGx5LAorICAgIC8v
IHpeMithMSp6K2EyID0gMC4gRnJvbSB0aGUgcXVhZHJhdGljIGZvcm11bGEgdGhlIHJvb3RzIGFy
ZQorICAgIC8vICgtYTErLy1zcXJ0KGExXjItNCphMikpLzIuCisKKyAgICBkb3VibGUgYTEgPSBt
X2ExW2NvZWZJbmRleF07CisgICAgZG91YmxlIGEyID0gbV9hMltjb2VmSW5kZXhdOworICAgIGRv
dWJsZSBiMCA9IG1fYjBbY29lZkluZGV4XTsKKyAgICBkb3VibGUgYjEgPSBtX2IxW2NvZWZJbmRl
eF07CisgICAgZG91YmxlIGIyID0gbV9iMltjb2VmSW5kZXhdOworCisgICAgZG91YmxlIGRpc2Ny
aW0gPSBhMSAqIGExIC0gNCAqIGEyOworICAgIGlmIChkaXNjcmltID4gMCkgeworICAgICAgICAv
LyBDb21wdXRlIHRoZSByZWFsIHJvb3RzIHNvIHRoYXQgcjEgaGFzIHRoZSBsYXJnZXN0IG1hZ25p
dHVkZS4KKyAgICAgICAgZG91YmxlIHJwbHVzID0gKC1hMSArIHN0ZDo6c3FydChkaXNjcmltKSkg
LyAyOworICAgICAgICBkb3VibGUgcm1pbnVzID0gKC1hMSAtIHN0ZDo6c3FydChkaXNjcmltKSkg
LyAyOworICAgICAgICBkb3VibGUgcjEgPSBzdGQ6OmZhYnMocnBsdXMpID49IHN0ZDo6ZmFicyhy
bWludXMpID8gcnBsdXMgOiBybWludXM7CisgICAgICAgIC8vIFVzZSB0aGUgZmFjdCB0aGF0IGEy
ID0gcjEqcjIKKyAgICAgICAgZG91YmxlIHIyID0gYTIgLyByMTsKKworICAgICAgICBkb3VibGUg
YzEgPSAoYjAgKiByMSAqIHIxICsgYjEgKiByMSArIGIyKSAvIChyMiAtIHIxKTsKKyAgICAgICAg
ZG91YmxlIGMyID0gKGIwICogcjIgKiByMiArIGIxICogcjIgKyBiMikgLyAocjIgLSByMSk7CisK
KyAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUocjEpKTsKKyAgICAgICAgQVNTRVJUKHN0ZDo6
aXNmaW5pdGUocjIpKTsKKyAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzEpKTsKKyAgICAg
ICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzIpKTsKKworICAgICAgICAvLyBJdCdzIHBvc3NpYmxl
IGZvciBtYXhUYWlsQW1wbGl0dWRlIHRvIGJlIGdyZWF0ZXIgdGhhbiBjMSArIGMyLgorICAgICAg
ICAvLyBUaGlzIG1heSBwcm9kdWNlIGEgbmVnYXRpdmUgdGFpbCBmcmFtZS4gSnVzdCBjbGFtcCB0
aGUgdGFpbAorICAgICAgICAvLyBmcmFtZSB0byAwLgorICAgICAgICBkb3VibGUgdGFpbEZyYW1l
ID0gY2xhbXBUbygxICsgc3RkOjpsb2cobWF4VGFpbEFtcGxpdHVkZSAvIChzdGQ6OmZhYnMoYzEp
ICsgc3RkOjpmYWJzKGMyKSkpIC8gc3RkOjpsb2coc3RkOjpmYWJzKHIxKSksIDApOworCisgICAg
ICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKHRhaWxGcmFtZSkpOworICAgICAgICByZXR1cm4gdGFp
bEZyYW1lOworICAgIH0KKworICAgIGlmIChkaXNjcmltIDwgMCkgeworICAgICAgICAvLyBUd28g
Y29tcGxleCByb290cy4KKyAgICAgICAgLy8gT25lIHJvb3QgaXMgLWExLzIgKyBpKnNxcnQoLWRp
c2NyaW0pLzIuCisgICAgICAgIGRvdWJsZSB4ID0gLWExIC8gMjsKKyAgICAgICAgZG91YmxlIHkg
PSBzdGQ6OnNxcnQoLWRpc2NyaW0pIC8gMjsKKyAgICAgICAgc3RkOjpjb21wbGV4PGRvdWJsZT4g
cjEoeCwgeSk7CisgICAgICAgIHN0ZDo6Y29tcGxleDxkb3VibGU+IHIyKHgsIC15KTsKKyAgICAg
ICAgZG91YmxlIHIgPSBzdGQ6Omh5cG90KHgsIHkpOworCisgICAgICAgIEFTU0VSVChzdGQ6Omlz
ZmluaXRlKHIpKTsKKworICAgICAgICBkb3VibGUgdGFpbEZyYW1lID0gMDsKKyAgICAgICAgLy8g
SXQncyBwb3NzaWJsZSBmb3IgciB0byBiZSAxLiAoTFBGIHdpdGggUSB2ZXJ5IGxhcmdlIGNhbiBj
YXVzZSB0aGlzLikKKyAgICAgICAgaWYgKHIgPT0gMSkKKyAgICAgICAgICAgIHRhaWxGcmFtZSA9
IG1heEZyYW1lOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGRvdWJsZSBjMSA9IHN0ZDo6
YWJzKChiMCAqIHIxICogcjEgKyBiMSAqIHIxICsgYjIpIC8gKHIyIC0gcjEpKTsKKyAgICAgICAg
ICAgIGRvdWJsZSBjMiA9IHN0ZDo6YWJzKChiMCAqIHIyICogcjIgKyBiMSAqIHIyICsgYjIpIC8g
KHIyIC0gcjEpKTsKKworICAgICAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUoYzEpKTsKKyAg
ICAgICAgICAgIEFTU0VSVChzdGQ6OmlzZmluaXRlKGMyKSk7CisgICAgICAgICAgICB0YWlsRnJh
bWUgPSAxICsgc3RkOjpsb2cobWF4VGFpbEFtcGxpdHVkZSAvIChjMSArIGMyKSkgLyBzdGQ6Omxv
ZyhyKTsKKyAgICAgICAgICAgIGlmICghYzEgJiYgIWMyKSB7CisgICAgICAgICAgICAgICAgLy8g
SWYgYzEgPSBjMiA9IDAsIHRoZW4gSCh6KSA9IGIwLiBIZW5jZSwgdGhlcmUncyBubyB0YWlsCisg
ICAgICAgICAgICAgICAgLy8gYmVjYXVzZSB0aGlzIGlzIGp1c3QgYSB3aXJlIGZyb20gaW5wdXQg
dG8gb3V0cHV0LgorICAgICAgICAgICAgICAgIHRhaWxGcmFtZSA9IDA7CisgICAgICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgY2hlY2sgdGhhdCB0aGUgdGFp
bCBoYXMgZmluaXRlIGxlbmd0aC4gTm90CisgICAgICAgICAgICAgICAgLy8gc3RyaWN0bHkgbmVj
ZXNzYXJ5LCBidXQgd2Ugd2FudCB0byBrbm93IGlmIHRoaXMgZXZlcgorICAgICAgICAgICAgICAg
IC8vIGhhcHBlbnMuCisgICAgICAgICAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUodGFpbEZy
YW1lKSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHRhaWxGcmFt
ZTsKKyAgICB9CisKKyAgICAvLyBSZXBlYXRlZCByb290cy4gVGhpcyBzaG91bGQgYmUgcHJldHR5
IHJhcmUgYmVjYXVzZSBhbGwgdGhlCisgICAgLy8gY29lZmZpY2llbnRzIG5lZWQgdG8gYmUganVz
dCB0aGUgcmlnaHQgdmFsdWVzIHRvIGdldCBhCisgICAgLy8gZGlzY3JpbWluYW50IG9mIGV4YWN0
bHkgemVyby4KKyAgICBkb3VibGUgciA9IC1hMSAvIDI7CisKKyAgICBkb3VibGUgdGFpbEZyYW1l
ID0gMDsKKyAgICBpZiAoIXIpIHsKKyAgICAgICAgLy8gRG91YmxlIHBvbGUgYXQgMC4gVGhpcyBq
dXN0IGRlbGF5cyB0aGUgc2lnbmFsIGJ5IDIgZnJhbWVzLAorICAgICAgICAvLyBzbyBzZXQgdGhl
IHRhaWwgZnJhbWUgdG8gMi4KKyAgICAgICAgdGFpbEZyYW1lID0gMjsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBkb3VibGUgYzEgPSAoYjAgKiByICogciArIGIxICogciArIGIyKSAvIChyICogcik7
CisgICAgICAgIGRvdWJsZSBjMiA9IGIxICogciArIDIgKiBiMjsKKworICAgICAgICBBU1NFUlQo
c3RkOjppc2Zpbml0ZShjMSkpOworICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShjMikpOwor
CisgICAgICAgIC8vIEl0IGNhbiBoYXBwZW4gdGhhdCBjMT1jMj0wLiBUaGlzIGJhc2ljYWxseSBt
ZWFucyB0aGF0IEgoeikgPQorICAgICAgICAvLyBjb25zdGFudCwgd2hpY2ggaXMgdGhlIGxpbWl0
aW5nIGNhc2UgZm9yIHNldmVyYWwgb2YgdGhlCisgICAgICAgIC8vIGJpcXVhZCBmaWx0ZXJzLgor
ICAgICAgICBpZiAoIWMxICYmICFjMikKKyAgICAgICAgICAgIHRhaWxGcmFtZSA9IDA7CisgICAg
ICAgIGVsc2UgeworICAgICAgICAgICAgLy8gVGhlIGZ1bmN0aW9uIGMqKG4rMSkqcl5uIGlzIG5v
dCBtb25vdG9uaWMsIGJ1dCBpdCdzIGVhc3kgdG8KKyAgICAgICAgICAgIC8vIGZpbmQgdGhlIG1h
eCBwb2ludCBzaW5jZSB0aGUgZGVyaXZhdGl2ZSBpcworICAgICAgICAgICAgLy8gYypyXm4qKDEr
KG4rMSkqbG9nKHIpKS4gVGhpcyBoYXMgYSByb290IGF0CisgICAgICAgICAgICAvLyAtKDErbG9n
KHIpKS9sb2cocikuIHNvIHdlIGNhbiBzdGFydCBvdXIgc2VhcmNoIGZyb20gdGhhdAorICAgICAg
ICAgICAgLy8gcG9pbnQgdG8gbWF4RnJhbWVzLgorCisgICAgICAgICAgICBkb3VibGUgbG93ID0g
c3RkOjpjbGFtcCgtKDEgKyBzdGQ6OmxvZyhyKSkgLyBzdGQ6OmxvZyhyKSwgMS4wLCBzdGF0aWNf
Y2FzdDxkb3VibGU+KG1heEZyYW1lIC0gMSkpOworICAgICAgICAgICAgZG91YmxlIGhpZ2ggPSBt
YXhGcmFtZTsKKworICAgICAgICAgICAgQVNTRVJUKHN0ZDo6aXNmaW5pdGUobG93KSk7CisgICAg
ICAgICAgICBBU1NFUlQoc3RkOjppc2Zpbml0ZShoaWdoKSk7CisKKyAgICAgICAgICAgIHRhaWxG
cmFtZSA9IHJvb3RGaW5kZXIobG93LCBoaWdoLCBzdGQ6OmxvZyhtYXhUYWlsQW1wbGl0dWRlKSwg
YzEsIGMyLCByKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiB0YWlsRnJhbWU7Cit9
CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9CaXF1YWQuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5oCmluZGV4IDcxMzQ5NGM5MTRkMzM3
ODY0M2UyOWE4MGJjMzllNzczNjZkZjE4MmIuLjU0ODc5M2M4MjdhZjcxMWIwMzhiMzg3MDcxYjJm
ZWU4OGJlMmQ2ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0Jp
cXVhZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0JpcXVhZC5oCkBAIC00
NiwyNiArNDYsMjMgQEAgcHVibGljOgogICAgIEJpcXVhZCgpOwogICAgIH5CaXF1YWQoKTsKIAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgc2l6ZV90IE1heEZyYW1lc1RvUHJvY2VzcyA9IDEyODsKKwog
ICAgIHZvaWQgcHJvY2Vzcyhjb25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQqIGRlc3RQLCBzaXpl
X3QgZnJhbWVzVG9Qcm9jZXNzKTsKIAorICAgIGJvb2wgaGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMo
KSBjb25zdCB7IHJldHVybiBtX2hhc1NhbXBsZUFjY3VyYXRlVmFsdWVzOyB9CisgICAgdm9pZCBz
ZXRIYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcyhib29sIGhhc1NhbXBsZUFjY3VyYXRlVmFsdWVzKSB7
IG1faGFzU2FtcGxlQWNjdXJhdGVWYWx1ZXMgPSBoYXNTYW1wbGVBY2N1cmF0ZVZhbHVlczsgfQor
CiAgICAgLy8gZnJlcXVlbmN5IGlzIDAgLSAxIG5vcm1hbGl6ZWQsIHJlc29uYW5jZSBhbmQgZGJH
YWluIGFyZSBpbiBkZWNpYmVscy4KICAgICAvLyBRIGlzIGEgdW5pdGxlc3MgcXVhbGl0eSBmYWN0
b3IuCi0gICAgdm9pZCBzZXRMb3dwYXNzUGFyYW1zKGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBy
ZXNvbmFuY2UpOwotICAgIHZvaWQgc2V0SGlnaHBhc3NQYXJhbXMoZG91YmxlIGZyZXF1ZW5jeSwg
ZG91YmxlIHJlc29uYW5jZSk7Ci0gICAgdm9pZCBzZXRCYW5kcGFzc1BhcmFtcyhkb3VibGUgZnJl
cXVlbmN5LCBkb3VibGUgUSk7Ci0gICAgdm9pZCBzZXRMb3dTaGVsZlBhcmFtcyhkb3VibGUgZnJl
cXVlbmN5LCBkb3VibGUgZGJHYWluKTsKLSAgICB2b2lkIHNldEhpZ2hTaGVsZlBhcmFtcyhkb3Vi
bGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKTsKLSAgICB2b2lkIHNldFBlYWtpbmdQYXJhbXMo
ZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEsIGRvdWJsZSBkYkdhaW4pOwotICAgIHZvaWQgc2V0
QWxscGFzc1BhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSk7Ci0gICAgdm9pZCBzZXRO
b3RjaFBhcmFtcyhkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSk7Ci0KLSAgICAvLyBTZXQgdGhl
IGJpcXVhZCBjb2VmZmljaWVudHMgZ2l2ZW4gYSBzaW5nbGUgemVybyAob3RoZXIgemVybyB3aWxs
IGJlIGNvbmp1Z2F0ZSkKLSAgICAvLyBhbmQgYSBzaW5nbGUgcG9sZSAob3RoZXIgcG9sZSB3aWxs
IGJlIGNvbmp1Z2F0ZSkKLSAgICB2b2lkIHNldFplcm9Qb2xlUGFpcnMoc3RkOjpjb21wbGV4PGRv
dWJsZT4gemVybywgc3RkOjpjb21wbGV4PGRvdWJsZT4gcG9sZSk7Ci0KLSAgICAvLyBTZXQgdGhl
IGJpcXVhZCBjb2VmZmljaWVudHMgZ2l2ZW4gYSBzaW5nbGUgcG9sZSAob3RoZXIgcG9sZSB3aWxs
IGJlIGNvbmp1Z2F0ZSkKLSAgICAvLyAoVGhlIHplcm9lcyB3aWxsIGJlIHRoZSBpbnZlcnNlIG9m
IHRoZSBwb2xlcykKLSAgICB2b2lkIHNldEFsbHBhc3NQb2xlKHN0ZDo6Y29tcGxleDxkb3VibGU+
KTsKKyAgICB2b2lkIHNldExvd3Bhc3NQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVl
bmN5LCBkb3VibGUgcmVzb25hbmNlKTsKKyAgICB2b2lkIHNldEhpZ2hwYXNzUGFyYW1zKHNpemVf
dCBpbmRleCwgZG91YmxlIGZyZXF1ZW5jeSwgZG91YmxlIHJlc29uYW5jZSk7CisgICAgdm9pZCBz
ZXRCYW5kcGFzc1BhcmFtcyhzaXplX3QgaW5kZXgsIGRvdWJsZSBmcmVxdWVuY3ksIGRvdWJsZSBR
KTsKKyAgICB2b2lkIHNldExvd1NoZWxmUGFyYW1zKHNpemVfdCBpbmRleCwgZG91YmxlIGZyZXF1
ZW5jeSwgZG91YmxlIGRiR2Fpbik7CisgICAgdm9pZCBzZXRIaWdoU2hlbGZQYXJhbXMoc2l6ZV90
IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgZGJHYWluKTsKKyAgICB2b2lkIHNldFBl
YWtpbmdQYXJhbXMoc2l6ZV90IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSwgZG91
YmxlIGRiR2Fpbik7CisgICAgdm9pZCBzZXRBbGxwYXNzUGFyYW1zKHNpemVfdCBpbmRleCwgZG91
YmxlIGZyZXF1ZW5jeSwgZG91YmxlIFEpOworICAgIHZvaWQgc2V0Tm90Y2hQYXJhbXMoc2l6ZV90
IGluZGV4LCBkb3VibGUgZnJlcXVlbmN5LCBkb3VibGUgUSk7CiAKICAgICAvLyBSZXNldHMgZmls
dGVyIHN0YXRlCiAgICAgdm9pZCByZXNldCgpOwpAQCAtNzMsMzYgKzcwLDQxIEBAIHB1YmxpYzoK
ICAgICAvLyBGaWx0ZXIgcmVzcG9uc2UgYXQgYSBzZXQgb2YgbiBmcmVxdWVuY2llcy4gVGhlIG1h
Z25pdHVkZSBhbmQKICAgICAvLyBwaGFzZSByZXNwb25zZSBhcmUgcmV0dXJuZWQgaW4gbWFnUmVz
cG9uc2UgYW5kIHBoYXNlUmVzcG9uc2UuCiAgICAgLy8gVGhlIHBoYXNlIHJlc3BvbnNlIGlzIGlu
IHJhZGlhbnMuCi0gICAgdm9pZCBnZXRGcmVxdWVuY3lSZXNwb25zZShpbnQgbkZyZXF1ZW5jaWVz
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZmxvYXQqIGZyZXF1ZW5jeSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0KiBtYWdSZXNwb25zZSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0KiBwaGFzZVJlc3BvbnNlKTsKKyAgICB2b2lk
IGdldEZyZXF1ZW5jeVJlc3BvbnNlKHVuc2lnbmVkIG5GcmVxdWVuY2llcywgY29uc3QgZmxvYXQq
IGZyZXF1ZW5jeSwgZmxvYXQqIG1hZ1Jlc3BvbnNlLCBmbG9hdCogcGhhc2VSZXNwb25zZSk7CisK
KyAgICAvLyBDb21wdXRlIHRhaWwgZnJhbWUgYmFzZWQgb24gdGhlIGZpbHRlciBjb2VmZmljZW50
cyBhdCBpbmRleAorICAgIC8vIHxjb2VmSW5kZXh8LiBUaGUgdGFpbCBmcmFtZSBpcyB0aGUgZnJh
bWUgbnVtYmVyIHdoZXJlIHRoZQorICAgIC8vIGltcHVsc2UgcmVzcG9uc2Ugb2YgdGhlIGZpbHRl
ciBmYWxscyBiZWxvdyBhIHRocmVzaG9sZCB2YWx1ZS4KKyAgICAvLyBUaGUgbWF4aW11bSBhbGxv
d2VkIGZyYW1lIHZhbHVlIGlzIGdpdmVuIGJ5IHxtYXhGcmFtZXwuIFRoaXMKKyAgICAvLyBsaW1p
dHMgaG93IG11Y2ggd29yayBpcyBkb25lIGluIGNvbXB1dGluZyB0aGUgZnJhbWUgbnVtYmVyLgor
ICAgIGRvdWJsZSB0YWlsRnJhbWUoc2l6ZV90IGNvZWZJbmRleCwgZG91YmxlIG1heEZyYW1lKTsK
KwogcHJpdmF0ZToKLSAgICB2b2lkIHNldE5vcm1hbGl6ZWRDb2VmZmljaWVudHMoZG91YmxlIGIw
LCBkb3VibGUgYjEsIGRvdWJsZSBiMiwgZG91YmxlIGEwLCBkb3VibGUgYTEsIGRvdWJsZSBhMik7
Ci0gICAgCisgICAgdm9pZCBzZXROb3JtYWxpemVkQ29lZmZpY2llbnRzKHNpemVfdCBpbmRleCwg
ZG91YmxlIGIwLCBkb3VibGUgYjEsIGRvdWJsZSBiMiwgZG91YmxlIGEwLCBkb3VibGUgYTEsIGRv
dWJsZSBhMik7CisKICAgICAvLyBGaWx0ZXIgY29lZmZpY2llbnRzLiBUaGUgZmlsdGVyIGlzIGRl
ZmluZWQgYXMKICAgICAvLwogICAgIC8vIHlbbl0gKyBtX2ExKnlbbi0xXSArIG1fYTIqeVtuLTJd
ID0gbV9iMCp4W25dICsgbV9iMSp4W24tMV0gKyBtX2IyKnhbbi0yXS4KLSAgICBkb3VibGUgbV9i
MDsKLSAgICBkb3VibGUgbV9iMTsKLSAgICBkb3VibGUgbV9iMjsKLSAgICBkb3VibGUgbV9hMTsK
LSAgICBkb3VibGUgbV9hMjsKKyAgICBBdWRpb0RvdWJsZUFycmF5IG1fYjA7CisgICAgQXVkaW9E
b3VibGVBcnJheSBtX2IxOworICAgIEF1ZGlvRG91YmxlQXJyYXkgbV9iMjsKKyAgICBBdWRpb0Rv
dWJsZUFycmF5IG1fYTE7CisgICAgQXVkaW9Eb3VibGVBcnJheSBtX2EyOwogCiAjaWYgVVNFKEFD
Q0VMRVJBVEUpCiAgICAgdm9pZCBwcm9jZXNzRmFzdChjb25zdCBmbG9hdCogc291cmNlUCwgZmxv
YXQqIGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKTsKICAgICB2b2lkIHByb2Nlc3NTbGlj
ZUZhc3QoZG91YmxlKiBzb3VyY2VQLCBkb3VibGUqIGRlc3RQLCBkb3VibGUqIGNvZWZmaWNpZW50
c1AsIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOwotCiAgICAgQXVkaW9Eb3VibGVBcnJheSBtX2lu
cHV0QnVmZmVyOwogICAgIEF1ZGlvRG91YmxlQXJyYXkgbV9vdXRwdXRCdWZmZXI7CisjZW5kaWYK
IAotI2Vsc2UKICAgICAvLyBGaWx0ZXIgbWVtb3J5CiAgICAgZG91YmxlIG1feDE7IC8vIGlucHV0
IGRlbGF5ZWQgYnkgMSBzYW1wbGUKICAgICBkb3VibGUgbV94MjsgLy8gaW5wdXQgZGVsYXllZCBi
eSAyIHNhbXBsZXMKICAgICBkb3VibGUgbV95MTsgLy8gb3V0cHV0IGRlbGF5ZWQgYnkgMSBzYW1w
bGUKICAgICBkb3VibGUgbV95MjsgLy8gb3V0cHV0IGRlbGF5ZWQgYnkgMiBzYW1wbGVzCi0jZW5k
aWYKKworICAgIGJvb2wgbV9oYXNTYW1wbGVBY2N1cmF0ZVZhbHVlcyB7IGZhbHNlIH07CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRl
eCBmOWFhYzY5OGE1OGQ5MmM1MzQxMWFhY2E2MzRiOGU1MDRmMTM1ZDY2Li42ZTU3MzRkOGE2ZGU3
Nzg1Yjc1NTg3ZTJjNWIyNDQ2MjExOTExMmJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNyBAQAorMjAyMC0wOC0zMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgorCisgICAgICAgIEFkZCBwcm9wZXIgay1yYXRlIGF1dG9tYXRpb24gc3VwcG9ydCBm
b3IgQmlxdWFkRmlsdGVyTm9kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE2MDI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4K
KworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyBub3cgdGhhdCBtb3JlIGNoZWNrcyBhcmUg
cGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24t
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3Rl
ZC50eHQ6CisKIDIwMjAtMDgtMzEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgog
CiAgICAgICAgIFVwZGF0ZSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9S
VENQZWVyQ29ubmVjdGlvbi1tYW5kYXRvcnktZ2V0U3RhdHMuaHR0cHMuaHRtbCBzbyB0aGF0IGl0
IG5vIGxvbmdlciB0aW1lcyBvdXQgaWYgZmlyc3QgdGVzdCBmYWlscwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24t
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUt
YmlxdWFkLWNvbm5lY3Rpb24tZXhwZWN0ZWQudHh0CmluZGV4IGMzMGUzZTg4OTM1MWRkMzRmNWE0
NzM1NTEzOTY5YzFlMjQ4N2JjZjkuLjkzMjhiMTk5YzkwNjMzNGZhYTY4YmQyZTE5N2JlMzc3MWIx
ZWM1MDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1y
YXRlLWJpcXVhZC1jb25uZWN0aW9uLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1
ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1iaXF1YWQtY29ubmVjdGlvbi1leHBlY3RlZC50eHQK
QEAgLTI4LDcgKzI4LDcgQEAgUEFTUyAgIFRlc3QgQmlxdWFkRmlsdGVyTm9kZShjb250ZXh0LCB7
InR5cGUiOiJiYW5kcGFzcyIsImZyZXF1ZW5jeSI6NDQwLCJRIjowfSkKIFBBU1MgICBROiBtb2Qu
b2Zmc2V0LnNldFZhbHVlQXRUaW1lKDAsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAog
UEFTUyAgIFE6IG1vZC5vZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTAwLDAuMTI1KSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIFEgd2l0aCBpbnB1dDog
b3V0cHV0WzAsMjA0OF0gZXF1YWxzIFswLDAuOTgyMjg3MTY4NTAyODA3NiwwLjM2ODEyNDMwNjIw
MTkzNDgsLTAuODQ0MzI3ODA3NDI2NDUyNiwtMC42ODQ1NDY3MDkwNjA2NjksMC41ODc3ODUzNjMx
OTczMjY3LDAuOTA0ODI2NjQxMDgyNzYzNywtMC4yNDg2OTAzMDcxNDAzNTAzNCwtMC45OTgwMjY2
MDk0MjA3NzY0LC0wLjEyNTMzMjQ0NDkwNjIzNDc0LDAuOTUxMDU2NzE4ODI2Mjk0LDAuNDgxNzUy
ODQyNjY0NzE4NjMsLTAuNzcwNTEzNzEzMzU5ODMyOCwtMC43NzA1MTIyMjMyNDM3MTM0LDAuNDgx
NzU0NjAxMDAxNzM5NSwwLjk1MTA1NjAwMzU3MDU1NjYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6
MH0uIAotUEFTUyAgIGstcmF0ZSBRIHdpdGggaW5wdXQ6IG91dHB1dFsyMDQ4Ol0gZXF1YWxzIFsw
LjAwNTYzNTU5MzA4NjQ4MTA5NCwwLjAwMzcxNDY1NTI5MzE1MTczNjMsMC4wMDE5OTA2OTU3MTY4
MTMyMDY3LDAuMDAzMjk1MjY4MTY0OTQ3NjI5LDAuMDA0ODMyMjY0MDM1OTQwMTcsMC4wMDI4MDA3
MDYzMDgzMzUwNjYsLTAuMDAxMjc4OTM1Njk4NzkyMzM4NCwtMC4wMDI4MzM2NjcyMTEyMzQ1Njk1
LC0wLjAwMTQzNzU0MTIxMzgxNzg5NDUsLTAuMDAxMjY3MTY3MTU3NDkzNTMxNywtMC4wMDQwOTk1
MjM2NDg2MTk2NTIsLTAuMDA2MjU2MzQ0MjYyNTEwNTM4LC0wLjAwNDQ3OTg5NzIwODUxMTgyOSwt
MC4wMDEyMDE5MjQyODU4NTE0MTksLTAuMDAwNjQ1MDk3NTc3OTQ0Mzk3OSwtMC4wMDIwODY3NTIw
OTQzMjg0MDM1Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0
ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBrLXJhdGUgUSB3
aXRoIGlucHV0OiBvdXRwdXRbMjA0ODpdIGVxdWFscyBbMC4wMDU2MzU1OTIxNTUxNTg1MiwwLjAw
MzcxNDY1NDU5NDY1OTgwNTMsMC4wMDE5OTA2OTU0ODM5ODI1NjMsMC4wMDMyOTUyNjg2MzA2MDg5
MTYzLDAuMDA0ODMyMjY0OTY3MjYyNzQ1LDAuMDAyODAwNzA3NzA1MzE4OTI3OCwtMC4wMDEyNzg5
MzQxODUzOTMxNTQ2LC0wLjAwMjgzMzY2NTU4MTQyMDA2NCwtMC4wMDE0Mzc1Mzk3MDA0MTg3MTA3
LC0wLjAwMTI2NzE2NTg3NjkyNDk5MTYsLTAuMDA0MDk5NTIyNzE3Mjk3MDc3LC0wLjAwNjI1NjM0
NDI2MjUxMDUzOCwtMC4wMDQ0Nzk4OTc2NzQxNzMxMTcsLTAuMDAxMjAxOTI1MTAwNzU4NjcxOCwt
MC4wMDA2NDUwOTg3NDIwOTc2MTYyLC0wLjAwMjA4Njc1MzcyNDE0MjkwOS4uLl0gd2l0aCBhbiBl
bGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZl
VGhyZXNob2xkIjowfS4gCiBQQVNTIDwgW1EgQXVkaW9QYXJhbV0gQWxsIGFzc2VydGlvbnMgcGFz
c2VkLiAodG90YWwgOSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbR2FpbiBBdWRpb1BhcmFtXSBrLXJh
dGUgaW5wdXQgd29ya3MgCiBQQVNTICAgZ2FpbjogbmV3IE9zY2lsbGF0b3JOb2RlKGNvbnRleHQs
IHtmcmVxdWVuY3k6IDE3NjB9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCkBAIC01MCw3
ICs1MCw3IEBAIFBBU1MgICBUZXN0IEJpcXVhZEZpbHRlck5vZGUoY29udGV4dCwgeyJ0eXBlIjoi
bG93cGFzcyIsImZyZXF1ZW5jeSI6MjIwMCwiZGV0dW5lCiBQQVNTICAgZGV0dW5lOiBtb2Qub2Zm
c2V0LnNldFZhbHVlQXRUaW1lKDAsMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFT
UyAgIGRldHVuZTogbW9kLm9mZnNldC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgtMTMzMjMuOTQ1
MzcwMDk0NDI3LDAuMTI1KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1y
YXRlIGRldHVuZSB3aXRoIGlucHV0OiBvdXRwdXRbMCwyMDQ4XSBlcXVhbHMgWzAsMC4xMzEwNjE3
MTc4Njc4NTEyNiwwLjQ4NzYxNDk4OTI4MDcwMDcsMC44MjgwNzI0ODgzMDc5NTI5LDAuOTcwODAz
OTE2NDU0MzE1MiwwLjk5ODc4NzY0MTUyNTI2ODYsMC45NDcyMzczMTI3OTM3MzE3LDAuNzc3NDUz
NzgwMTc0MjU1NCwwLjUwMTg1MTI2MDY2MjA3ODksMC4xNzE1NTk0NTMwMTA1NTkwOCwtMC4xNzQz
OTg0ODE4NDU4NTU3LC0wLjUwMjI3NjgzNzgyNTc3NTEsLTAuNzcyMTQxNTc1ODEzMjkzNSwtMC45
NDk1MDU5ODQ3ODMxNzI2LC0xLjAxNDI2NTE3OTYzNDA5NDIsLTAuOTU5NjE4NTY4NDIwNDEwMi4u
Ll0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQi
OjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCi1QQVNTICAgay1yYXRlIGRldHVuZSB3aXRoIGlu
cHV0OiBvdXRwdXRbMjA0ODpdIGVxdWFscyBbMC4wMTE4OTA5MjU0NjcwMTQzMTMsMC4wMTE5Mzg2
MjIyMjEzNTA2NywwLjAxMTk4NTc0MzQxODMzNTkxNSwwLjAxMjAzMjI1MzY2NzcxMjIxMiwwLjAx
MjA3ODE4OTI5MTA1OTk3LDAuMDEyMTIzNjQ1MjgzMjgxODAzLDAuMDEyMTY4NzczNDQ5OTU3Mzcs
MC4wMTIyMTM3NTcyNjE2MzM4NzMsMC4wMTIyNTg3OTEzNjQ3Mjk0MDQsMC4wMTIzMDQwNjI5NTUw
ODE0NjMsMC4wMTIzNDk3MjQ3Njk1OTIyODUsMC4wMTIzOTU4NzgzMjI0MjI1MDQsMC4wMTI0NDI1
NjI3MjkxMjAyNTUsMC4wMTI0ODk3NTE5MTI2NTM0NDYsMC4wMTI1MzczNTE4MDk0NDIwNDMsMC4w
MTI1ODUyMTgwNjQ0ODY5OC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsi
YWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgay1y
YXRlIGRldHVuZSB3aXRoIGlucHV0OiBvdXRwdXRbMjA0ODpdIGVxdWFscyBbMC4wMTE4OTU4MTc3
MDQ0OTg3NjgsMC4wMTE5NDM1MTgxODQxMjU0MjMsMC4wMTE5OTA2NDIxNzUwNzgzOTIsMC4wMTIw
MzcxNTYxNDk3NDQ5ODcsMC4wMTIwODMwOTM2MzU3Mzc4OTYsMC4wMTIxMjg1NTQyODQ1NzI2MDEs
MC4wMTIxNzM2ODUyNDUyMTU4OTMsMC4wMTIyMTg2NzA5MTk1Mzc1NDQsMC4wMTIyNjM3MDg3NDc5
MjMzNzQsMC4wMTIzMDg5ODQwNjM1NjU3MzEsMC4wMTIzNTQ2NDg2NzIwNDQyNzcsMC4wMTI0MDA4
MDUwMTg4NDIyMiwwLjAxMjQ0NzQ5MzE1MDgzMDI2OSwwLjAxMjQ5NDY4NTEyODMzMTE4NCwwLjAx
MjU0MjI4NzgxOTA4NzUwNSwwLjAxMjU5MDE1Njg2ODEwMDE2Ni4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNo
b2xkIjowfS4gCiBQQVNTIDwgW0RldHVuZSBBdWRpb1BhcmFtXSBBbGwgYXNzZXJ0aW9ucyBwYXNz
ZWQuICh0b3RhbCA5IGFzc2VydGlvbnMpIAogUEFTUyA+IFtBbGwgay1yYXRlIGlucHV0c10gIAog
UEFTUyAgIENyZWF0ZTogcmVmTm9kZSA9IG5ldyBCaXF1YWRGaWx0ZXJOb2RlKGNvbnRleHQsIHsi
dHlwZSI6InBlYWtpbmciLCJmcmVxdWVuY3kiOjAsImRldHVuZSI6MCwiZ2FpbiI6MCwiUSI6MH0p
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
YXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWJpcXVhZC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2stcmF0ZS1iaXF1YWQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDFlMzExNmU4MDA4Mzk2NjQ1ZmZhYWM3YTc2YjRkY2UzYWJiOGEyODAuLjllZTQ5YTdkNzg3
ZWRjODcxMjdiYzg3YzA2YzdhMTE3MDY4OTI1YTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
YXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWJpcXVhZC1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWV4cGVjdGVkLnR4
dApAQCAtMTYsOCArMTYsOCBAQCBQQVNTICAgQWxsIGstcmF0ZSBwYXJhbXM6IGstcmF0ZSBub2Rl
OiBmcmVxdWVuY3kubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMCwxKSBkaQogUEFTUyAgIEFsbCBr
LXJhdGUgcGFyYW1zOiBhLXJhdGUgbm9kZTpmcmVxdWVuY3kuc2V0VmFsdWVBdFRpbWUoMzUwLDAp
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBBbGwgay1yYXRlIHBhcmFtczog
YS1yYXRlIG5vZGU6ZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBPdXRwdXQg
b2Ygay1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCww
LjAwNTY3MjczNzk1NjA0NzA1OCwwLjAzMTc2MTQyMjc1MzMzNDA0NSwwLjA5MTUyODk0NDY3MTE1
NDAyLDAuMTg4MjIwMzk2NjM3OTE2NTYsMC4zMTUyOTExOTYxMDc4NjQ0LDAuNDU4MDIzOTk1MTYx
MDU2NSwwLjU5NjIzNjk0NDE5ODYwODQsMC43MDc2NzA5ODY2NTIzNzQzLDAuNzcxNTgxNjQ5Nzgw
MjczNCwwLjc3MjA1NTU2NjMxMDg4MjYsMC43MDA2MjE0ODU3MTAxNDQsMC41NTc4Mjg2NjQ3Nzk2
NjMxLDAuMzUzNTk4NzczNDc5NDYxNjcsMC4xMDYzMTc1Mjc1OTIxODIxNiwtMC4xNTkyMTIzMjEw
NDMwMTQ1My4uLl0uIAotUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBPdXRwdXQgb2YgYS1yYXRl
IEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjAwNTY3Mjcz
Nzk1NjA0NzA1OCwwLjAzMTc2MTQyMjc1MzMzNDA0NSwwLjA5MTUyODk0NDY3MTE1NDAyLDAuMTg4
MjIwMzk2NjM3OTE2NTYsMC4zMTUyOTExOTYxMDc4NjQ0LDAuNDU4MDIzOTk1MTYxMDU2NSwwLjU5
NjIzNjk0NDE5ODYwODQsMC43MDc2NzA5ODY2NTIzNzQzLDAuNzcxNTgxNjQ5NzgwMjczNCwwLjc3
MjA1NTU2NjMxMDg4MjYsMC43MDA2MjE0ODU3MTAxNDQsMC41NTc4Mjg2NjQ3Nzk2NjMxLDAuMzUz
NTk4NzczNDc5NDYxNjcsMC4xMDYzMTc1Mjc1OTIxODIxNiwtMC4xNTkyMTIzMjEwNDMwMTQ1My4u
Ll0uIAotUEFTUyAgIEFsbCBrLXJhdGUgcGFyYW1zOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRl
IGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlu
cyA3ODcyIGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgICBBbGwgay1yYXRlIHBhcmFtczogT3V0
cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkg
WzAsMC4wMDU2NzE0MDI5MDUxMzYzNDcsMC4wMzE3NDkyMTQ5NzcwMjU5ODYsMC4wOTE0ODMxMjM2
MDA0ODI5NCwwLjE4ODExMDAwODgzNTc5MjU0LDAuMzE1MDg4NjI5NzIyNTk1MiwwLjQ1NzcxOTc3
MzA1NDEyMjksMC41OTU4NTM1MDc1MTg3NjgzLDAuNzA3MjcxMjE4Mjk5ODY1NywwLjc3MTI2OTAy
MzQxODQyNjUsMC43NzE5NjM4MzQ3NjI1NzMyLDAuNzAwODk1MDcxMDI5NjYzMSwwLjU1ODU5NTI0
MDExNjExOTQsMC4zNTQ5MzkzNDE1NDUxMDUsMC4xMDgyMzg1NjI5NDE1NTEyMSwtMC4xNTY3OTg2
MDExNTA1MTI3Li4uXS4gCitQQVNTICAgQWxsIGstcmF0ZSBwYXJhbXM6IERpZmZlcmVuY2UgYmV0
d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5
IDAgKGNvbnRhaW5zIDc5OTkgZGlmZmVyZW50IHZhbHVlcykuIAogUEFTUyA8IFtCaXF1YWQgay1y
YXRlIEF1ZGlvUGFyYW1zIChhbGwpXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxMSBh
c3NlcnRpb25zKSAKIFBBU1MgPiBbQmlxdWFkIGstcmF0ZSBRXSAgCiBQQVNTICAgay1yYXRlIFE6
IFNldHRpbmcgUS5hdXRvbWF0aW9uUmF0ZSB0byAiay1yYXRlIiBpcyBlcXVhbCB0byBrLXJhdGUu
IApAQCAtMjYsOSArMjYsOSBAQCBQQVNTICAgay1yYXRlIFE6IGstcmF0ZSBub2RlOiBRLmxpbmVh
clJhbXBUb1ZhbHVlQXRUaW1lKDEwLDEpIGRpZCBub3QgdGhyb3cgYW4gZQogUEFTUyAgIGstcmF0
ZSBROiBhLXJhdGUgbm9kZTpRLnNldFZhbHVlQXRUaW1lKDEsMCkgZGlkIG5vdCB0aHJvdyBhbiBl
eGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBROiBhLXJhdGUgbm9kZTpRLmxpbmVhclJhbXBUb1Zh
bHVlQXRUaW1lKDEwLDEpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBrLXJh
dGUgUTogT3V0cHV0IG9mIGstcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0
aGUgYXJyYXkgWzAsMC4zOTA2NzUwMDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcx
MTIyODM3MDY2NjUsMS41NDQ2ODUxMjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3
MTcxMDc3NzI4MjcsMS4zNjI1NDE1NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYw
MzM5NjY1NDEyOTAzLC0wLjQyOTcyMDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEu
NzU4ODA3ODk3NTY3NzQ5LC0yLjIxNzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0MjY4LC0y
LjQyMTU1MTk0MjgyNTMxNzQuLi5dLiAKLVBBU1MgICBrLXJhdGUgUTogT3V0cHV0IG9mIGEtcmF0
ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUw
MDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUx
MjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1
NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcy
MDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIx
NzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5d
LiAKLUZBSUwgWCBrLXJhdGUgUTogRGlmZmVyZW5jZSBiZXR3ZWVuIGEtcmF0ZSBhbmQgay1yYXRl
IEJpcXVhZEZpbHRlck5vZGUgc2hvdWxkIGhhdmUgY29udGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUg
ZGlmZmVyZW50IGZyb20gMC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1G
QUlMIDwgW0JpcXVhZCBrLXJhdGUgUV0gMSBvdXQgb2YgOCBhc3NlcnRpb25zIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBrLXJhdGUgUTog
T3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJy
YXkgWzAsMC4zOTA2MjA3NjgwNzAyMjA5NSwwLjgyNzc1NjI4NTY2NzQxOTQsMS4yMzY0NTUyMDIx
MDI2NjExLDEuNTQzNjM2NDQxMjMwNzc0LDEuNjg4NjY4NDg5NDU2MTc2OCwxLjYzMjE2MzUyNDYy
NzY4NTUsMS4zNjE4Nzk4MjU1OTIwNDEsMC44OTUwMDIwNjcwODkwODA4LDAuMjc2NTM3Mjk5MTU2
MTg4OTYsLTAuNDI1OTYwODY4NTk3MDMwNjQsLTEuMTMwNjU4NjI2NTU2Mzk2NSwtMS43NTE2NTQx
NDgxMDE4MDY2LC0yLjIwOTg1NzQ2MzgzNjY3LC0yLjQ0MzE3MDA3MDY0ODE5MzQsLTIuNDE0Njkw
NzMyOTU1OTMyNi4uLl0uIAorUEFTUyAgIGstcmF0ZSBROiBEaWZmZXJlbmNlIGJldHdlZW4gYS1y
YXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBub3QgY29uc3RhbnRseSAwIChjb250
YWlucyA3OTk5IGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgPCBbQmlxdWFkIGstcmF0ZSBRXSBB
bGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA4IGFzc2VydGlvbnMpIAogUEFTUyA+IFtCaXF1
YWQgay1yYXRlIGRldHVuZV0gIAogUEFTUyAgIGstcmF0ZSBkZXR1bmU6IFNldHRpbmcgZGV0dW5l
LmF1dG9tYXRpb25SYXRlIHRvICJrLXJhdGUiIGlzIGVxdWFsIHRvIGstcmF0ZS4gCiBQQVNTICAg
ay1yYXRlIGRldHVuZTogay1yYXRlIG5vZGU6IGRldHVuZS5zZXRWYWx1ZUF0VGltZSgwLDApIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKQEAgLTM2LDkgKzM2LDkgQEAgUEFTUyAgIGstcmF0
ZSBkZXR1bmU6IGstcmF0ZSBub2RlOiBkZXR1bmUubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTIw
MCwxKSBkaWQgbm8KIFBBU1MgICBrLXJhdGUgZGV0dW5lOiBhLXJhdGUgbm9kZTpkZXR1bmUuc2V0
VmFsdWVBdFRpbWUoMCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1y
YXRlIGRldHVuZTogYS1yYXRlIG5vZGU6ZGV0dW5lLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEy
MDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBkZXR1bmU6
IE91dHB1dCBvZiBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBpZGVudGljYWwgdG8gdGhlIGFy
cmF5IFswLDAuMzkwNjc1MDA4Mjk2OTY2NTUsMC44MjgwNDIzODc5NjIzNDEzLDEuMjM3MTEyMjgz
NzA2NjY1LDEuNTQ0Njg1MTI1MzUwOTUyMSwxLjY4OTk1OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3
NzcyODI3LDEuMzYyNTQxNTU2MzU4MzM3NCwwLjg5NDU5ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2
NTQxMjkwMywtMC40Mjk3MjAzNDIxNTkyNzEyNCwtMS4xMzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgw
Nzg5NzU2Nzc0OSwtMi4yMTc5MDcxOTAzMjI4NzYsLTIuNDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1
NTE5NDI4MjUzMTc0Li4uXS4gCi1QQVNTICAgay1yYXRlIGRldHVuZTogT3V0cHV0IG9mIGEtcmF0
ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzUw
MDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2ODUx
MjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1NDE1
NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQyOTcy
MDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0yLjIx
NzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQuLi5d
LiAKLUZBSUwgWCBrLXJhdGUgZGV0dW5lOiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBr
LXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBzaG91bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2
YWx1ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKLUZBSUwgPCBbQmlxdWFkIGstcmF0ZSBkZXR1bmVdIDEgb3V0IG9mIDggYXNzZXJ0aW9ucyB3
ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAg
ay1yYXRlIGRldHVuZTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50
aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NzkwOTEyMTUxMzM2NywwLjgyODA2MjY1MzU0MTU2
NDksMS4yMzcxNTI1NzY0NDY1MzMyLDEuNTQ0NzMwNjYzMjk5NTYwNSwxLjY4OTk3MTQ0Njk5MDk2
NjgsMS42MzMyODc0Mjk4MDk1NzAzLDEuMzYyMjg3NjQwNTcxNTk0MiwwLjg5NDEwNzc1ODk5ODg3
MDgsMC4yNzM4Mzc5MjQwMDM2MDExLC0wLjQzMDc0NjE5NzcwMDUwMDUsLTEuMTM3NDcxNjc1ODcy
ODAyNywtMS43NjAwMjkxOTY3MzkxOTY4LC0yLjIxODkyMDk0NjEyMTIxNiwtMi40NTE3MTczNzY3
MDg5ODQ0LC0yLjQyMTMzNjE3NDAxMTIzMDUuLi5dLiAKK1BBU1MgICBrLXJhdGUgZGV0dW5lOiBE
aWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBu
b3QgY29uc3RhbnRseSAwIChjb250YWlucyA3OTk5IGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1Mg
PCBbQmlxdWFkIGstcmF0ZSBkZXR1bmVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDgg
YXNzZXJ0aW9ucykgCiBQQVNTID4gW0JpcXVhZCBrLXJhdGUgZnJlcXVlbmN5XSAgCiBQQVNTICAg
ay1yYXRlIGZyZXF1ZW5jeTogU2V0dGluZyBmcmVxdWVuY3kuYXV0b21hdGlvblJhdGUgdG8gImst
cmF0ZSIgaXMgZXF1YWwgdG8gay1yYXRlLiAKIFBBU1MgICBrLXJhdGUgZnJlcXVlbmN5OiBrLXJh
dGUgbm9kZTogZnJlcXVlbmN5LnNldFZhbHVlQXRUaW1lKDM1MCwwKSBkaWQgbm90IHRocm93IGFu
IGV4Y2VwdGlvbi4gCkBAIC00Niw5ICs0Niw5IEBAIFBBU1MgICBrLXJhdGUgZnJlcXVlbmN5OiBr
LXJhdGUgbm9kZTogZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlkCiBQ
QVNTICAgay1yYXRlIGZyZXF1ZW5jeTogYS1yYXRlIG5vZGU6ZnJlcXVlbmN5LnNldFZhbHVlQXRU
aW1lKDM1MCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgay1yYXRlIGZy
ZXF1ZW5jeTogYS1yYXRlIG5vZGU6ZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAs
MSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBmcmVxdWVuY3k6
IE91dHB1dCBvZiBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBpZGVudGljYWwgdG8gdGhlIGFy
cmF5IFswLDAuMzkwNjc1MDA4Mjk2OTY2NTUsMC44MjgwNDIzODc5NjIzNDEzLDEuMjM3MTEyMjgz
NzA2NjY1LDEuNTQ0Njg1MTI1MzUwOTUyMSwxLjY4OTk1OTg4MzY4OTg4MDQsMS42MzMzNzE3MTA3
NzcyODI3LDEuMzYyNTQxNTU2MzU4MzM3NCwwLjg5NDU5ODU0MzY0Mzk1MTQsMC4yNzQ2MDMzOTY2
NTQxMjkwMywtMC40Mjk3MjAzNDIxNTkyNzEyNCwtMS4xMzYyNjg3MzQ5MzE5NDU4LC0xLjc1ODgw
Nzg5NzU2Nzc0OSwtMi4yMTc5MDcxOTAzMjI4NzYsLTIuNDUxMTgwNjk2NDg3NDI2OCwtMi40MjE1
NTE5NDI4MjUzMTc0Li4uXS4gCi1QQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogT3V0cHV0IG9mIGEt
cmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2
NzUwMDgyOTY5NjY1NSwwLjgyODA0MjM4Nzk2MjM0MTMsMS4yMzcxMTIyODM3MDY2NjUsMS41NDQ2
ODUxMjUzNTA5NTIxLDEuNjg5OTU5ODgzNjg5ODgwNCwxLjYzMzM3MTcxMDc3NzI4MjcsMS4zNjI1
NDE1NTYzNTgzMzc0LDAuODk0NTk4NTQzNjQzOTUxNCwwLjI3NDYwMzM5NjY1NDEyOTAzLC0wLjQy
OTcyMDM0MjE1OTI3MTI0LC0xLjEzNjI2ODczNDkzMTk0NTgsLTEuNzU4ODA3ODk3NTY3NzQ5LC0y
LjIxNzkwNzE5MDMyMjg3NiwtMi40NTExODA2OTY0ODc0MjY4LC0yLjQyMTU1MTk0MjgyNTMxNzQu
Li5dLiAKLUZBSUwgWCBrLXJhdGUgZnJlcXVlbmN5OiBEaWZmZXJlbmNlIGJldHdlZW4gYS1yYXRl
IGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBzaG91bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0
IG9uZSB2YWx1ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKLUZBSUwgPCBbQmlxdWFkIGstcmF0ZSBmcmVxdWVuY3ldIDEgb3V0IG9mIDggYXNz
ZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitQQVNTICAgay1yYXRlIGZyZXF1ZW5jeTogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJO
b2RlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2NjkxMzcyMzk0NTYyLDAuODI4
MDEzMTgxNjg2NDAxNCwxLjIzNzA1NDEwOTU3MzM2NDMsMS41NDQ2MTkzMjE4MjMxMjAxLDEuNjg5
OTQzMDc1MTgwMDUzNywxLjYzMzQ5MzE4NTA0MzMzNSwxLjM2MjkwNzY0ODA4NjU0NzksMC44OTUz
MDYyODkxOTYwMTQ0LDAuMjc1NzA3NDgzMjkxNjI2LC0wLjQyODI0MDE4MDAxNTU2Mzk2LC0xLjEz
NDUzMjIxMzIxMTA1OTYsLTEuNzU3MDQzMTIzMjQ1MjM5MywtMi4yMTY0MzkyNDcxMzEzNDc3LC0y
LjQ1MDM5Nzk2ODI5MjIzNjMsLTIuNDIxODUyMTExODE2NDA2Mi4uLl0uIAorUEFTUyAgIGstcmF0
ZSBmcmVxdWVuY3k6IERpZmZlcmVuY2UgYmV0d2VlbiBhLXJhdGUgYW5kIGstcmF0ZSBCaXF1YWRG
aWx0ZXJOb2RlIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDc5OTkgZGlmZmVyZW50IHZh
bHVlcykuIAorUEFTUyA8IFtCaXF1YWQgay1yYXRlIGZyZXF1ZW5jeV0gQWxsIGFzc2VydGlvbnMg
cGFzc2VkLiAodG90YWwgOCBhc3NlcnRpb25zKSAKIFBBU1MgPiBbQmlxdWFkIGstcmF0ZSBnYWlu
XSAgCiBQQVNTICAgay1yYXRlIGdhaW46IFNldHRpbmcgZ2Fpbi5hdXRvbWF0aW9uUmF0ZSB0byAi
ay1yYXRlIiBpcyBlcXVhbCB0byBrLXJhdGUuIAogUEFTUyAgIGstcmF0ZSBnYWluOiBrLXJhdGUg
bm9kZTogZ2Fpbi5zZXRWYWx1ZUF0VGltZSgxMCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlv
bi4gCkBAIC01Niw4ICs1Niw4IEBAIFBBU1MgICBrLXJhdGUgZ2Fpbjogay1yYXRlIG5vZGU6IGdh
aW4ubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMCwxKSBkaWQgbm90IHRocm93CiBQQVNTICAgay1y
YXRlIGdhaW46IGEtcmF0ZSBub2RlOmdhaW4uc2V0VmFsdWVBdFRpbWUoMTAsMCkgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIGstcmF0ZSBnYWluOiBhLXJhdGUgbm9kZTpnYWlu
LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAsMSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAogUEFTUyAgIGstcmF0ZSBnYWluOiBPdXRwdXQgb2Ygay1yYXRlIEJpcXVhZEZpbHRlck5vZGUg
aXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMCwwLjM5MDY3NTAwODI5Njk2NjU1LDAuODI4MDQy
Mzg3OTYyMzQxMywxLjIzNzExMjI4MzcwNjY2NSwxLjU0NDY4NTEyNTM1MDk1MjEsMS42ODk5NTk4
ODM2ODk4ODA0LDEuNjMzMzcxNzEwNzc3MjgyNywxLjM2MjU0MTU1NjM1ODMzNzQsMC44OTQ1OTg1
NDM2NDM5NTE0LDAuMjc0NjAzMzk2NjU0MTI5MDMsLTAuNDI5NzIwMzQyMTU5MjcxMjQsLTEuMTM2
MjY4NzM0OTMxOTQ1OCwtMS43NTg4MDc4OTc1Njc3NDksLTIuMjE3OTA3MTkwMzIyODc2LC0yLjQ1
MTE4MDY5NjQ4NzQyNjgsLTIuNDIxNTUxOTQyODI1MzE3NC4uLl0uIAotUEFTUyAgIGstcmF0ZSBn
YWluOiBPdXRwdXQgb2YgYS1yYXRlIEJpcXVhZEZpbHRlck5vZGUgaXMgaWRlbnRpY2FsIHRvIHRo
ZSBhcnJheSBbMCwwLjM5MDY3NTAwODI5Njk2NjU1LDAuODI4MDQyMzg3OTYyMzQxMywxLjIzNzEx
MjI4MzcwNjY2NSwxLjU0NDY4NTEyNTM1MDk1MjEsMS42ODk5NTk4ODM2ODk4ODA0LDEuNjMzMzcx
NzEwNzc3MjgyNywxLjM2MjU0MTU1NjM1ODMzNzQsMC44OTQ1OTg1NDM2NDM5NTE0LDAuMjc0NjAz
Mzk2NjU0MTI5MDMsLTAuNDI5NzIwMzQyMTU5MjcxMjQsLTEuMTM2MjY4NzM0OTMxOTQ1OCwtMS43
NTg4MDc4OTc1Njc3NDksLTIuMjE3OTA3MTkwMzIyODc2LC0yLjQ1MTE4MDY5NjQ4NzQyNjgsLTIu
NDIxNTUxOTQyODI1MzE3NC4uLl0uIAotRkFJTCBYIGstcmF0ZSBnYWluOiBEaWZmZXJlbmNlIGJl
dHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBzaG91bGQgaGF2ZSBjb250
YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbQmlxdWFkIGstcmF0ZSBnYWluXSAxIG91dCBv
ZiA4IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA0IG91dCBvZiA1IHRh
c2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BB
U1MgICBrLXJhdGUgZ2FpbjogT3V0cHV0IG9mIGEtcmF0ZSBCaXF1YWRGaWx0ZXJOb2RlIGlzIGlk
ZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsMC4zOTA2Njc1NTc3MTYzNjk2MywwLjgyODAwMDA2ODY2
NDU1MDgsMS4yMzcwMDQ3NTY5Mjc0OTAyLDEuNTQ0NDkyMjQ0NzIwNDU5LDEuNjg5Njg1NDYzOTA1
MzM0NSwxLjYzMzA1NDAxODAyMDYyOTksMS4zNjIyNTc0ODA2MjEzMzgsMC44OTQ0NTg4MzAzNTY1
OTc5LDAuMjc0NzM4Njk5MTk3NzY5MTcsLTAuNDI5MTgxNjY1MTgyMTEzNjUsLTEuMTM1MjI4MDM3
ODM0MTY3NSwtMS43NTcyMjM5NjM3Mzc0ODc4LC0yLjIxNTgxOTgzNTY2Mjg0MiwtMi40NDg3MjQw
MzE0NDgzNjQzLC0yLjQxODk1NDYxMDgyNDU4NS4uLl0uIAorUEFTUyAgIGstcmF0ZSBnYWluOiBE
aWZmZXJlbmNlIGJldHdlZW4gYS1yYXRlIGFuZCBrLXJhdGUgQmlxdWFkRmlsdGVyTm9kZSBpcyBu
b3QgY29uc3RhbnRseSAwIChjb250YWlucyA3OTk5IGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1Mg
PCBbQmlxdWFkIGstcmF0ZSBnYWluXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA4IGFz
c2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA1IHRhc2tzIHJh
biBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRl
cm5vZGUtaW50ZXJmYWNlL2JpcXVhZC1hdXRvbWF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0
ZWQudHh0CmluZGV4IDU5MGQ3MzQwOTZhZDE5ODRhZmFjZDc4ZDI1ZDRlZTg4NzVjOTUxYjQuLjhj
ZTRhMjhiY2E1ZDIwOTEyN2Q4MDQwYmExYTE2ZWZhNzU5MmE1MDggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2UvYmlxdWFkLWF1dG9tYXRpb24tZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uv
YmlxdWFkLWF1dG9tYXRpb24tZXhwZWN0ZWQudHh0CkBAIC04LDk0ICs4LDI3IEBAIFBBU1MgRXhl
Y3V0aW5nICJhdXRvbWF0ZS1hbGwiCiBQQVNTIEV4ZWN1dGluZyAibW9kdWxhdGlvbiIgCiBQQVNT
IEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbYXV0b21hdGUtZnJlcV0gIAotRkFJTCBYIE91dHB1dCBv
ZiBiYW5kcGFzcyBmaWx0ZXIgd2l0aCBmcmVxdWVuY3kgYXV0b21hdGlvbiBkb2VzIG5vdCBlcXVh
bCBbMCwwLjI3MjIyMjc1NzMzOTQ3NzU0LDAuMTcwMzQ4Mzc2MDM1NjkwMywtMC40ODA2MjYxOTU2
NjkxNzQyLC0wLjI3ODg0Mzc2MDQ5MDQxNzUsMC4zOTU3MDU2OTk5MjA2NTQzLDAuMTA4NDAzMjQz
MTI0NDg1MDIsLTAuMzk2NzcyMjA1ODI5NjIwMzYsMC4wNjg3MTIzNTM3MDYzNTk4NiwwLjQxMDA0
NDc1OTUxMTk0NzYzLC0wLjE4OTc2MjkwNTI0MDA1ODksLTAuMzU5MDE0NjYwMTIwMDEwNCwwLjI5
MjQ4NTQ3NTU0MDE2MTEzLDAuMjYxNDU0MjI0NTg2NDg2OCwtMC4zNzY3MjIxMjcxOTkxNzMsLTAu
MTQxOTUwMDU1OTU2ODQwNTIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7
ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwNDY0NTUsInJlbGF0aXZlVGhyZXNob2xkIjowfS4K
LQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVz
aG9sZAotCVsxXQkyLjcyMDc3NDExNDEzMTkyNzVlLTEJMi43MjIyMjc1NzMzOTQ3NzU0ZS0xCTEu
NDUzNDU5MjYyODQ3OTAwNGUtNAk1LjMzOTIyNzYxMjkwNDM1NTdlLTQJNC42NDU0OTk5OTk5OTk5
OTk4ZS02Ci0JWzJdCTEuNzA5MjQ5MzE3NjQ2MDI2NmUtMQkxLjcwMzQ4Mzc2MDM1NjkwMzFlLTEJ
NS43NjU1NTcyODkxMjM1MzUyZS00CTMuMzg0NTY4MzkwNTUyNTMwMWUtMwk0LjY0NTQ5OTk5OTk5
OTk5OThlLTYKLQlbM10JLTQuNzg4NDU4MzQ3MzIwNTU2NmUtMQktNC44MDYyNjE5NTY2OTE3NDE5
ZS0xCTEuNzgwMzYwOTM3MTE4NTMwM2UtMwkzLjcwNDI1MjgxMjYwMzY0OTJlLTMJNC42NDU0OTk5
OTk5OTk5OTk4ZS02Ci0JWzRdCS0yLjgwMzUyMTQ1NDMzNDI1OTBlLTEJLTIuNzg4NDM3NjA0OTA0
MTc0OGUtMQkxLjUwODM4NDk0MzAwODQyMjllLTMJNS40MDk0MjY5MTQ3NTUyMjE0ZS0zCTQuNjQ1
NDk5OTk5OTk5OTk5OGUtNgotCVs1XQkzLjkxNDI1MzExNTY1Mzk5MTdlLTEJMy45NTcwNTY5OTky
MDY1NDMwZS0xCTQuMjgwMzg4MzU1MjU1MTI3MGUtMwkxLjA4MTcxMDA1Nzc4MTE3ODZlLTIJNC42
NDU0OTk5OTk5OTk5OTk4ZS02Ci0JLi4uYW5kIDIwNzIgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vy
cm9yIG9mIDIuMTE5MDEwNjEyMzY4NTgzN2UtMSBhdCBpbmRleCBvZiAxMTQ5LgotCVsxMTQ5XQkt
MS4xNDY4ODQwMzkwNDQzODAyZS0xCTkuNzIxMjY1NzMzMjQyMDM0OWUtMgkyLjExOTAxMDYxMjM2
ODU4MzdlLTEJMi4xNzk3NjgyMjIwNzY4NzQ4ZSswCTQuNjQ1NDk5OTk5OTk5OTk5OGUtNgotCU1h
eCBSZWxFcnJvciBvZiA5LjY2OTk0NjI4Nzk4MTE2NDhlKzEgYXQgaW5kZXggb2YgMTAwMC4KLQlb
MTAwMF0JLTEuNzUzODkxNzA2NDY2Njc0OGUtMQktMS43OTUxOTA3MzU3MjAwOTgwZS0zCTEuNzM1
OTM5Nzk5MTA5NDczOGUtMQk5LjY2OTk0NjI4Nzk4MTE2NDhlKzEJNC42NDU0OTk5OTk5OTk5OTk4
ZS02Ci0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2F1dG9t
YXRlLWZyZXFdIDEgb3V0IG9mIDEgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgT3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRl
ciB3aXRoIGZyZXF1ZW5jeSBhdXRvbWF0aW9uIGVxdWFscyBbMCwwLjI3MjIyMjc1NzMzOTQ3NzU0
LDAuMTcwMzQ4Mzc2MDM1NjkwMywtMC40ODA2MjYxOTU2NjkxNzQyLC0wLjI3ODg0Mzc2MDQ5MDQx
NzUsMC4zOTU3MDU2OTk5MjA2NTQzLDAuMTA4NDAzMjQzMTI0NDg1MDIsLTAuMzk2NzcyMjA1ODI5
NjIwMzYsMC4wNjg3MTIzNTM3MDYzNTk4NiwwLjQxMDA0NDc1OTUxMTk0NzYzLC0wLjE4OTc2Mjkw
NTI0MDA1ODksLTAuMzU5MDE0NjYwMTIwMDEwNCwwLjI5MjQ4NTQ3NTU0MDE2MTEzLDAuMjYxNDU0
MjI0NTg2NDg2OCwtMC4zNzY3MjIxMjcxOTkxNzMsLTAuMTQxOTUwMDU1OTU2ODQwNTIuLi5dIHdp
dGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAw
MDAwNDY0NTUsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTIDwgW2F1dG9tYXRlLWZyZXFd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2F1
dG9tYXRlLXFdICAKIEZBSUwgWCBPdXRwdXQgb2YgYmFuZHBhc3MgZmlsdGVyIHdpdGggUSBhdXRv
bWF0aW9uIGRvZXMgbm90IGVxdWFsIFswLDAuMDEzMTE0NzgxMTE4OTI5Mzg2LDAuMDQ3ODIzMzg0
NDA0MTgyNDM0LDAuMDk3NjUyOTM0NDkxNjM0MzcsMC4xNTY1NzEyNTQxMzQxNzgxNiwwLjIxODk5
MDU0OTQ0NTE1MjI4LDAuMjc5ODE3NDYxOTY3NDY4MjYsMC4zMzQ1MjQ0ODI0ODg2MzIyLDAuMzc5
MjI2OTUyNzkxMjE0LDAuNDEwNzU0MjMzNTk4NzA5MSwwLjQyNjcwNzk4MzAxNjk2NzgsMC40MjU1
MDE2NzQ0MTM2ODEwMywwLjQwNjM3ODQ0ODAwOTQ5MDk3LDAuMzY5NDA1MDkwODA4ODY4NCwwLjMx
NTQ0MTIyMDk5ODc2NDA0LDAuMjQ2MDg0NjkwMDkzOTk0MTQuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjo5LjgzNDhlLTcsInJlbGF0aXZl
VGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVy
cm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQkxLjQzMTEwODE3Mjk4MjkzMTFlLTIJMS4zMTE0Nzgx
MTE4OTI5Mzg2ZS0yCTEuMTk2MzAwNjEwODk5OTI1MmUtMwk5LjEyMTc3MzM2NDM1NDczOTFlLTIJ
OS44MzQ4MDAwMDAwMDAwMDA3ZS03Ci0JWzJdCTUuMzk5OTQwMTYyODk3MTEwMGUtMgk0Ljc4MjMz
ODQ0MDQxODI0MzRlLTIJNi4xNzYwMTcyMjQ3ODg2NjU4ZS0zCTEuMjkxNDIyMDMxNjU1NDA0M2Ut
MQk5LjgzNDgwMDAwMDAwMDAwMDdlLTcKLQlbM10JMS4xMjM2NDQ2MzUwODEyOTEyZS0xCTkuNzY1
MjkzNDQ5MTYzNDM2OWUtMgkxLjQ3MTE1MjkwMTY0OTQ3NTFlLTIJMS41MDY1MTE3MTg1NzU2NTA1
ZS0xCTkuODM0ODAwMDAwMDAwMDAwN2UtNwotCVs0XQkxLjgyNDQ5ODc3MjYyMTE1NDhlLTEJMS41
NjU3MTI1NDEzNDE3ODE2ZS0xCTIuNTg3ODYyMzEyNzkzNzMxN2UtMgkxLjY1MjgzMzYxMDU1Mjc5
NjZlLTEJOS44MzQ4MDAwMDAwMDAwMDA3ZS03Ci0JWzVdCTIuNTczNTk2MjM5MDg5OTY1OGUtMQky
LjE4OTkwNTQ5NDQ1MTUyMjhlLTEJMy44MzY5MDc0NDYzODQ0Mjk5ZS0yCTEuNzUyMDg4MTQwODM3
OTcyN2UtMQk5LjgzNDgwMDAwMDAwMDAwMDdlLTcKLQkuLi5hbmQgMzk5NCBtb3JlIGVycm9ycy4K
LQlNYXggQWJzRXJyb3Igb2YgNC44NzY0NzMwOTg5OTMzMDE0ZS0xIGF0IGluZGV4IG9mIDEyMy4K
LQlbMTIzXQk1LjgzNTY3OTc2OTUxNTk5MTJlLTEJOS41OTIwNjY3MDUyMjY4OTgyZS0yCTQuODc2
NDczMDk4OTkzMzAxNGUtMQk1LjA4Mzg2MDcwMzY5NTkxODllKzAJOS44MzQ4MDAwMDAwMDAwMDA3
ZS03Ci0JTWF4IFJlbEVycm9yIG9mIDEuMzczMzkzNTY5NDg0ODg2MGUrNSBhdCBpbmRleCBvZiAx
MDYuCi0JWzEwNl0JLTQuMDgyNDEzNjEzNzk2MjM0MWUtMQktMi45NzI0NzkyNTExODQyNjc5ZS02
CTQuMDgyMzgzODg5MDAzNzIyM2UtMQkxLjM3MzM5MzU2OTQ4NDg4NjBlKzUJOS44MzQ4MDAwMDAw
MDAwMDA3ZS03CisJWzI1Ml0JNS4yMjcwODQxNTk4NTEwNzQyZS0xCTUuMjI3MDk0MjkyNjQwNjg2
MGUtMQkxLjAxMzI3ODk2MTE4MTY0MDZlLTYJMS45Mzg1MTI4ODAxMDY3NDEzZS02CTkuODM0ODAw
MDAwMDAwMDAwN2UtNworCU1heCBBYnNFcnJvciBvZiAxLjAxMzI3ODk2MTE4MTY0MDZlLTYgYXQg
aW5kZXggb2YgMjUyLgorCU1heCBSZWxFcnJvciBvZiAxLjkzODUxMjg4MDEwNjc0MTNlLTYgYXQg
aW5kZXggb2YgMjUyLgogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJ
TCA8IFthdXRvbWF0ZS1xXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFthdXRvbWF0ZS1nYWluXSAg
Ci1GQUlMIFggT3V0cHV0IG9mIGxvd3NoZWxmIGZpbHRlciB3aXRoIGdhaW4gYXV0b21hdGlvbiBk
b2VzIG5vdCBlcXVhbCBbMCwwLjQ3ODEzNTY3NTE5MTg3OTMsMS41NTExMzg1MjAyNDA3ODM3LDMu
MDQyODE1NDQ2ODUzNjM3Nyw0LjY0OTQ0MDI4ODU0MzcwMSw2LjE0ODA5OTg5OTI5MTk5Miw3LjQy
NDg5MjkwMjM3NDI2OCw4LjQzNjQ3Mzg0NjQzNTU0Nyw5LjE2OTUzODQ5NzkyNDgwNSw5LjYxODU2
NDYwNTcxMjg5LDkuNzc5NDM4OTcyNDczMTQ1LDkuNjUwODczMTg0MjA0MTAyLDkuMjM3NDc2MzQ4
ODc2OTUzLDguNTUxNzUzOTk3ODAyNzM0LDcuNjE0NjE1NDQwMzY4NjUyLDYuNDU0ODE5Njc5MjYw
MjU0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MC4wMDAwMjc2NTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJ
CQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQk0Ljc4
NjMwMTU1MzI0OTM1OTFlLTEJNC43ODEzNTY3NTE5MTg3OTI3ZS0xCTQuOTQ0ODAxMzMwNTY2NDA2
M2UtNAkxLjAzNDE4MzcyMzgxMDYxNTVlLTMJMi43NjU3MDAwMDAwMDAwMDAwZS01Ci0JWzJdCTEu
NTU1MDY0MDgyMTQ1NjkwOWUrMAkxLjU1MTEzODUyMDI0MDc4MzdlKzAJMy45MjU1NjE5MDQ5MDcy
MjY2ZS0zCTIuNTMwNzYxNjY1NTAwOTM4MWUtMwkyLjc2NTcwMDAwMDAwMDAwMDBlLTUKLQlbM10J
My4wNTYwNTY5NzYzMTgzNTk0ZSswCTMuMDQyODE1NDQ2ODUzNjM3N2UrMAkxLjMyNDE1Mjk0NjQ3
MjE2ODBlLTIJNC4zNTE3MzU5ODEzNjM1MTU0ZS0zCTIuNzY1NzAwMDAwMDAwMDAwMGUtNQotCVs0
XQk0LjY3OTQ4MzQxMzY5NjI4OTFlKzAJNC42NDk0NDAyODg1NDM3MDEyZSswCTMuMDA0MzEyNTE1
MjU4Nzg5MWUtMgk2LjQ2MTY2NDkwNzYyNjU0OTJlLTMJMi43NjU3MDAwMDAwMDAwMDAwZS01Ci0J
WzVdCTYuMjAyMjEyODEwNTE2MzU3NGUrMAk2LjE0ODA5OTg5OTI5MTk5MjJlKzAJNS40MTEyOTEx
MjI0MzY1MjM0ZS0yCTguODAxNTY2NjgwODg1NzE3OGUtMwkyLjc2NTcwMDAwMDAwMDAwMDBlLTUK
LQkuLi5hbmQgMjA0OCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMi40MDkwMjEzNzc1
NjM0NzY2ZSswIGF0IGluZGV4IG9mIDEyMC4KLQlbMTIwXQk5LjkwOTg4MTU5MTc5Njg3NTBlKzAJ
Ny41MDA4NjAyMTQyMzMzOTg0ZSswCTIuNDA5MDIxMzc3NTYzNDc2NmUrMAkzLjIxMTY2MDE0MTMx
NTc4MjVlLTEJMi43NjU3MDAwMDAwMDAwMDAwZS01Ci0JTWF4IFJlbEVycm9yIG9mIDEuMDYzMjI5
MjQxOTUyNTM3NWUrMiBhdCBpbmRleCBvZiAxMDAwLgotCVsxMDAwXQkyLjI5NjgxOTcyNDE0MjU1
MTRlLTIJLTIuMTgwNzQwNTU3Mzc4MTU4MGUtNAkyLjMxODYyNzEyOTcxNjMzMzBlLTIJMS4wNjMy
MjkyNDE5NTI1Mzc1ZSsyCTIuNzY1NzAwMDAwMDAwMDAwMGUtNQotIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFthdXRvbWF0ZS1nYWluXSAxIG91dCBvZiAxIGFz
c2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorUEFTUyAgIE91dHB1dCBvZiBsb3dzaGVsZiBmaWx0ZXIgd2l0aCBnYWluIGF1dG9tYXRpb24g
ZXF1YWxzIFswLDAuNDc4MTM1Njc1MTkxODc5MywxLjU1MTEzODUyMDI0MDc4MzcsMy4wNDI4MTU0
NDY4NTM2Mzc3LDQuNjQ5NDQwMjg4NTQzNzAxLDYuMTQ4MDk5ODk5MjkxOTkyLDcuNDI0ODkyOTAy
Mzc0MjY4LDguNDM2NDczODQ2NDM1NTQ3LDkuMTY5NTM4NDk3OTI0ODA1LDkuNjE4NTY0NjA1NzEy
ODksOS43Nzk0Mzg5NzI0NzMxNDUsOS42NTA4NzMxODQyMDQxMDIsOS4yMzc0NzYzNDg4NzY5NTMs
OC41NTE3NTM5OTc4MDI3MzQsNy42MTQ2MTU0NDAzNjg2NTIsNi40NTQ4MTk2NzkyNjAyNTQuLi5d
IHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjow
LjAwMDAyNzY1NywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbYXV0b21hdGUtZ2Fp
bl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBb
YXV0b21hdGUtZGV0dW5lXSAgCi1GQUlMIFggT3V0cHV0IG9mIGJhbmRwYXNzIGZpbHRlciB3aXRo
IGRldHVuZSBhdXRvbWF0aW9uIGRvZXMgbm90IGVxdWFsIFswLDAuMDAwODM4Mzg1NjYyMDYzOTU2
MywwLjAwMTQxMTIwNzk1MTYwNTMyLDAuMDAwMzY2MDkzNjQ5MDYzMjU5MzYsMC4wMDAxMDAwMDkz
NzYxODMxNTIyLDAuMDAxMjI5MDI5NzMwODkzNjcxNSwwLjAwMTEyODYzMDQ3OTc5NzcyMSwwLjAw
MDAwMTAwNzU0MDE2MzMwMDI5MTIsMC4wMDA0NDM2MTkzNTU3OTIxNzk3LDAuMDAxNDMzMTAzNjk0
NTgwNDk1NCwwLjAwMDY1ODE1OTM3NzA1MzM4LC0wLjAwMDExNTM3NzI5MDA1Nzk0OTcyLDAuMDAw
ODk5NzIyNzk5NjU4Nzc1MywwLjAwMTM0OTg5NjA3NjEzNTMzNzQsMC4wMDAxNjQ0NjkyNjc0NzQ0
ODc0MiwwLjAwMDA2NzE4MjMyMTc5OTkxOTAxLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMzE0NzEsInJlbGF0aXZlVGhyZXNo
b2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlU
ZXN0IHRocmVzaG9sZAotCVs0XQkxLjMzMDYwMDIwNzQzODY5MjVlLTQJMS4wMDAwOTM3NjE4MzE1
MjIwZS00CTMuMzA1MDY0NDU2MDcxNzA0NmUtNQkzLjMwNDc1NDU5NjIyODAzMTdlLTEJMy4xNDcw
OTk5OTk5OTk5OTk3ZS01Ci0JWzddCTYuOTc5MTYyNTcxOTUxNzQ2OWUtNQkxLjAwNzU0MDE2MzMw
MDI5MTJlLTYJNi44Nzg0MDg1NTU2MjE3MTc4ZS01CTYuODI2OTMyMzcwNzA2NTQ2N2UrMQkzLjE0
NzA5OTk5OTk5OTk5OTdlLTUKLQlbOF0JNC44ODY3NDg1MDIwMzA5Njg3ZS00CTQuNDM2MTkzNTU3
OTIxNzk3MGUtNAk0LjUwNTU0OTQ0MTA5MTcxNjNlLTUJMS4wMTU2MzQwOTc2MjU0NDQ5ZS0xCTMu
MTQ3MDk5OTk5OTk5OTk5N2UtNQotCVsxMF0JNy4wNzkwMTQ5MDM4NjU3NTQ2ZS00CTYuNTgxNTkz
NzcwNTMzODAwMWUtNAk0Ljk3NDIxMTMzMzMxOTU0NDhlLTUJNy41NTc3NjEwOTM2NTY5NzI4ZS0y
CTMuMTQ3MDk5OTk5OTk5OTk5N2UtNQotCVsxMV0JLTQuNDIxMjY2MTEyMzMxMDY4MWUtNgktMS4x
NTM3NzI5MDA1Nzk0OTcyZS00CTEuMTA5NTYwMjM5NDU2MTg2NWUtNAk5LjYxNjc5OTI3NTY1Mzc3
NjhlLTEJMy4xNDcwOTk5OTk5OTk5OTk3ZS01Ci0JLi4uYW5kIDExMjYgbW9yZSBlcnJvcnMuCi0J
TWF4IEFic0Vycm9yIG9mIDEuMDE3ODAwNDM1NDIzODUxMGUrMCBhdCBpbmRleCBvZiAxMDE1Lgot
CVsxMDE1XQktMS40NTcwMDYxODYyNDY4NzE5ZS0xCTguNzIwOTk4MTY3OTkxNjM4MmUtMQkxLjAx
NzgwMDQzNTQyMzg1MTBlKzAJMS4xNjcwNjg3NDEyMzU4OTA3ZSswCTMuMTQ3MDk5OTk5OTk5OTk5
N2UtNQotCU1heCBSZWxFcnJvciBvZiBJbmZpbml0eSBhdCBpbmRleCBvZiAxMDg3LgotCVsxMDg3
XQkxLjAwMTc3OTA2NDUzNjA5NDdlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuMDAxNzc5MDY0
NTM2MDk0N2UtMQlJbmZpbml0eQkzLjE0NzA5OTk5OTk5OTk5OTdlLTUKLSBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbYXV0b21hdGUtZGV0dW5lXSAxIG91dCBv
ZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBiYW5kcGFzcyBmaWx0ZXIgd2l0aCBkZXR1bmUgYXV0
b21hdGlvbiBlcXVhbHMgWzAsMC4wMDA4MzgzODU2NjIwNjM5NTYzLDAuMDAxNDExMjA3OTUxNjA1
MzIsMC4wMDAzNjYwOTM2NDkwNjMyNTkzNiwwLjAwMDEwMDAwOTM3NjE4MzE1MjIsMC4wMDEyMjkw
Mjk3MzA4OTM2NzE1LDAuMDAxMTI4NjMwNDc5Nzk3NzIxLDAuMDAwMDAxMDA3NTQwMTYzMzAwMjkx
MiwwLjAwMDQ0MzYxOTM1NTc5MjE3OTcsMC4wMDE0MzMxMDM2OTQ1ODA0OTU0LDAuMDAwNjU4MTU5
Mzc3MDUzMzgsLTAuMDAwMTE1Mzc3MjkwMDU3OTQ5NzIsMC4wMDA4OTk3MjI3OTk2NTg3NzUzLDAu
MDAxMzQ5ODk2MDc2MTM1MzM3NCwwLjAwMDE2NDQ2OTI2NzQ3NDQ4NzQyLDAuMDAwMDY3MTgyMzIx
Nzk5OTE5MDEuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLjAwMDAzMTQ3MSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBb
YXV0b21hdGUtZGV0dW5lXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlv
bnMpIAogUEFTUyA+IFthdXRvbWF0ZS1hbGxdICAKLUZBSUwgWCBPdXRwdXQgb2YgcGVha2luZyBm
aWx0ZXIgd2l0aCBhdXRvbWF0aW9uIG9mIGFsbCBwYXJhbWV0ZXJzIGRvZXMgbm90IGVxdWFsIFsw
LDAuOTg3Njg4MzYyNTk4NDE5MiwtMC4zMDkwMTcwMDI1ODI1NTAwNSwtMC44OTEwMDY1MjkzMzEy
MDczLDAuNTg3Nzg1MjQzOTg4MDM3MSwwLjcwNzEwNjc2OTA4NDkzMDQsLTAuODA5MDE3MDAyNTgy
NTUsLTAuNDUzOTkwNDg5MjQ0NDYxMDYsMC45NTEwNTY1NDAwMTIzNTk2LDAuMTU2NDM0NDYxNDc0
NDE4NjQsLTEsMC4xNTY0MzQ0NjE0NzQ0MTg2NCwwLjk1MTA1NjU0MDAxMjM1OTYsLTAuNDUzOTkw
NDg5MjQ0NDYxMDYsLTAuODA5MDE3MDAyNTgyNTUsMC43MDcxMDY3NjkwODQ5MzA0Li4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDA2
MjkwNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlB
YnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzY5N10JLTguOTEwMDY1MjkzMzEy
MDcyOGUtMQktOC45NjU5NDgyMjQwNjc2ODgwZS0xCTUuNTg4MjkzMDc1NTYxNTIzNGUtMwk2LjIz
Mjc5NjUwNTA3MDg0NTBlLTMJNi4yOTA3MDAwMDAwMDAwMDAyZS00Ci0JWzY5OF0JLTMuMDkwMTcw
MDI1ODI1NTAwNWUtMQktMy4wNDgyOTYyNzI3NTQ2NjkyZS0xCTQuMTg3Mzc1MzA3MDgzMTI5OWUt
MwkxLjM3MzY3NzI3MTYzMTgzNjRlLTIJNi4yOTA3MDAwMDAwMDAwMDAyZS00Ci0JWzY5OV0JOS44
NzY4ODM2MjU5ODQxOTE5ZS0xCTEuMDA3MjYwMzIyNTcwODAwOGUrMAkxLjk1NzE5NTk5NzIzODE1
OTJlLTIJMS45NDMwODg1NDc1OTg5NjE4ZS0yCTYuMjkwNzAwMDAwMDAwMDAwMmUtNAotCVs3MDBd
CS01LjU4Nzk3OTM1MjI0MzAwNTVlLTE0CS0zLjc3MjY5NDk5MDAzODg3MThlLTIJMy43NzI2OTQ5
OTAwMzMyODM5ZS0yCTkuOTk5OTk5OTk5OTg1MTg4NWUtMQk2LjI5MDcwMDAwMDAwMDAwMDJlLTQK
LQlbNzAxXQktOS44NzY4ODM2MjU5ODQxOTE5ZS0xCS05LjcyNDYyMjk2NDg1OTAwODhlLTEJMS41
MjI2MDY2MTEyNTE4MzExZS0yCTEuNTY1NzIzMDI3Nzc1OTIyMGUtMgk2LjI5MDcwMDAwMDAwMDAw
MDJlLTQKLQkuLi5hbmQgMzI5MCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMS4wMDAw
NzgyNDg5Nzc2NjExZSsxIGF0IGluZGV4IG9mIDIwMzAuCi0JWzIwMzBdCTEuMjc3NjA2NDg3Mjc0
MTY5OWUrMAkxLjEyNzgzODg5NzcwNTA3ODFlKzEJMS4wMDAwNzgyNDg5Nzc2NjExZSsxCTguODY3
MjA4MzQ4NzUxMDE1NmUtMQk2LjI5MDcwMDAwMDAwMDAwMDJlLTQKLQlNYXggUmVsRXJyb3Igb2Yg
Ny4yNjI2ODE4MTU3MzczMTY1ZSsxIGF0IGluZGV4IG9mIDg5OC4KLQlbODk4XQktMi4wOTEwNjI4
MTM5OTcyNjg3ZS0xCS0yLjg0MDA4MzA5MjQ1MTA5NTZlLTMJMi4wNjI2NjE5ODMwNzI3NTc3ZS0x
CTcuMjYyNjgxODE1NzM3MzE2NWUrMQk2LjI5MDcwMDAwMDAwMDAwMDJlLTQKLSBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbYXV0b21hdGUtYWxsXSAxIG91dCBv
ZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIE91dHB1dCBvZiBwZWFraW5nIGZpbHRlciB3aXRoIGF1dG9tYXRpb24g
b2YgYWxsIHBhcmFtZXRlcnMgZXF1YWxzIFswLDAuOTg3Njg4MzYyNTk4NDE5MiwtMC4zMDkwMTcw
MDI1ODI1NTAwNSwtMC44OTEwMDY1MjkzMzEyMDczLDAuNTg3Nzg1MjQzOTg4MDM3MSwwLjcwNzEw
Njc2OTA4NDkzMDQsLTAuODA5MDE3MDAyNTgyNTUsLTAuNDUzOTkwNDg5MjQ0NDYxMDYsMC45NTEw
NTY1NDAwMTIzNTk2LDAuMTU2NDM0NDYxNDc0NDE4NjQsLTEsMC4xNTY0MzQ0NjE0NzQ0MTg2NCww
Ljk1MTA1NjU0MDAxMjM1OTYsLTAuNDUzOTkwNDg5MjQ0NDYxMDYsLTAuODA5MDE3MDAyNTgyNTUs
MC43MDcxMDY3NjkwODQ5MzA0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDA2MjkwNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAK
K1BBU1MgPCBbYXV0b21hdGUtYWxsXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFz
c2VydGlvbnMpIAogUEFTUyA+IFttb2R1bGF0aW9uXSAgCi1GQUlMIFggT3V0cHV0IG9mIGJhbmRw
YXNzIGZpbHRlciB3aXRoIHNpbnVzb2lkYWwgbW9kdWxhdGlvbiBvZiBiYW5kcGFzcyBjZW50ZXIg
ZnJlcXVlbmN5IGRvZXMgbm90IGVxdWFsIFswLDAuMDAxODAwMzczODk1MDkzNzk4NiwwLjAwNzE2
NTgxMjQyMTU5MDA5LDAuMDE1ODYyNTYzNjI0OTc4MDY1LDAuMDI3NDk2NTQ0NjQ0MjM2NTY1LDAu
MDQxNTE5MTE2NjEwMjg4NjIsMC4wNTcyMzk3MjI0NjA1MDgzNSwwLjA3Mzg0NTQ1MzU2MDM1MjMz
LDAuMDkwNDI3MzE2NzI1MjU0MDYsMC4xMDYwMTI1OTc2ODAwOTE4NiwwLjExOTYwMjQ0OTIzODMw
MDMyLDAuMTMwMjEzNDk5MDY5MjEzODcsMC4xMzY5MjE4OTc1MzA1NTU3MywwLjEzODkwODE5MjUx
NTM3MzIzLDAuMTM1NTAwODMzMzkyMTQzMjUsMC4xMjYyMTY1MTU4OTg3MDQ1My4uLl0gd2l0aCBh
biBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDM5
Nzg3LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFi
c0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMl0JNi45MzY4MzI3OTY3ODIyNTUy
ZS0zCTcuMTY1ODEyNDIxNTkwMDg5OGUtMwkyLjI4OTc5NjI0ODA3ODM0NjNlLTQJMy4xOTU0NDU0
MTk2Njk4NjMwZS0yCTMuOTc4Njk5OTk5OTk5OTk5N2UtNQotCVszXQkxLjUyNDY3MDcwMTQ3Mzk1
MTNlLTIJMS41ODYyNTYzNjI0OTc4MDY1ZS0yCTYuMTU4NTY2MTAyMzg1NTIwOWUtNAkzLjg4MjQ1
MzIwNzQyOTc5MDNlLTIJMy45Nzg2OTk5OTk5OTk5OTk3ZS01Ci0JWzRdCTIuNjI4MzY1MzQ1Mjk5
MjQzOWUtMgkyLjc0OTY1NDQ2NDQyMzY1NjVlLTIJMS4yMTI4OTExOTEyNDQxMjU0ZS0zCTQuNDEx
MDY3NjcwMjczMDg4MmUtMgkzLjk3ODY5OTk5OTk5OTk5OTdlLTUKLQlbNV0JMy45NTI4OTI0OTcx
ODE4OTI0ZS0yCTQuMTUxOTExNjYxMDI4ODYyMGUtMgkxLjk5MDE5MTYzODQ2OTY5NjBlLTMJNC43
OTM0MzQ0NDg4ODM1MjQwZS0yCTMuOTc4Njk5OTk5OTk5OTk5N2UtNQotCVs2XQk1LjQzNzAxMTI3
MTcxNTE2NDJlLTIJNS43MjM5NzIyNDYwNTA4MzQ3ZS0yCTIuODY5NjA5NzQzMzU2NzA0N2UtMwk1
LjAxMzMxODc1ODM3ODkzMzllLTIJMy45Nzg2OTk5OTk5OTk5OTk3ZS01Ci0JLi4uYW5kIDM5OTMg
bW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDEuMjc5ODA0ODg1Mzg3NDIwN2UrMCBhdCBp
bmRleCBvZiAzNTIwLgotCVszNTIwXQktNi4yNjU4MzM5NzM4ODQ1ODI1ZS0xCTYuNTMyMjE0ODc5
OTg5NjI0MGUtMQkxLjI3OTgwNDg4NTM4NzQyMDdlKzAJMS45NTkyMjA0MzEyMDE1MTI1ZSswCTMu
OTc4Njk5OTk5OTk5OTk5N2UtNQotCU1heCBSZWxFcnJvciBvZiAxLjMzNTM2MzYxMDUyMTcyMDZl
KzMgYXQgaW5kZXggb2YgMjgyMS4KLQlbMjgyMV0JMS41ODAyOTk0MzcwNDYwNTEwZS0xCTEuMTgy
NTM3MDE2NTc1MjI0N2UtNAkxLjU3OTExNjkwMDAyOTQ3NThlLTEJMS4zMzUzNjM2MTA1MjE3MjA2
ZSszCTMuOTc4Njk5OTk5OTk5OTk5N2UtNQotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCA8IFttb2R1bGF0aW9uXSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBm
YWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElU
IFRBU0sgUlVOTkVSIEZJTklTSEVEOiA2IG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBPdXRwdXQgb2YgYmFuZHBh
c3MgZmlsdGVyIHdpdGggc2ludXNvaWRhbCBtb2R1bGF0aW9uIG9mIGJhbmRwYXNzIGNlbnRlciBm
cmVxdWVuY3kgZXF1YWxzIFswLDAuMDAxODAwMzczODk1MDkzNzk4NiwwLjAwNzE2NTgxMjQyMTU5
MDA5LDAuMDE1ODYyNTYzNjI0OTc4MDY1LDAuMDI3NDk2NTQ0NjQ0MjM2NTY1LDAuMDQxNTE5MTE2
NjEwMjg4NjIsMC4wNTcyMzk3MjI0NjA1MDgzNSwwLjA3Mzg0NTQ1MzU2MDM1MjMzLDAuMDkwNDI3
MzE2NzI1MjU0MDYsMC4xMDYwMTI1OTc2ODAwOTE4NiwwLjExOTYwMjQ0OTIzODMwMDMyLDAuMTMw
MjEzNDk5MDY5MjEzODcsMC4xMzY5MjE4OTc1MzA1NTU3MywwLjEzODkwODE5MjUxNTM3MzIzLDAu
MTM1NTAwODMzMzkyMTQzMjUsMC4xMjYyMTY1MTU4OTg3MDQ1My4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDM5Nzg3LCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFttb2R1bGF0aW9uXSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAorRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJ
TklTSEVEOiAxIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0
ZXJub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4
dAppbmRleCBmZjBmMTVlN2VmOTdlODI2NGYxMzNjZDNmZGE4ZDQ1YzBiOGI0NzRkLi5jYjU1NWYz
ZWRlZDA4OTU5ZDhiZWNmNTY3ZWZmMTI3ZWZmMWYwNzM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlw
cGVyaW5nLWV4cGVjdGVkLnR4dApAQCAtMTEsMTQgKzExLDE0IEBAIFBBU1MgPiBbVGVzdCAwXSBO
byBkZXppcHBlcmluZyBmb3IgZnJlcXVlbmN5CiBQQVNTICAgQXQgdGltZSAwLCBmcmVxdWVuY3kg
aXMgZXF1YWwgdG8gMzUwLiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBmcmVxdWVuY3kgaXMg
ZXF1YWwgdG8gODAwLiAKIFBBU1MgICBBdCB0aW1lIDAuMDU0Njg3NSwgZnJlcXVlbmN5IGlzIGVx
dWFsIHRvIDIwMC4gCi1QQVNTICAgT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBlcXVhbHMg
WzAuNzg2MzU2MjEwNzA4NjE4MiwwLjk2NzY2MTg1NzYwNDk4MDUsMS4xMzU3NzI0NjY2NTk1NDYs
MS4yODU4MjQ3NzU2OTU4MDA4LDEuNDEzMzkyNzgyMjExMzAzNywxLjUxNDYxNzY4MTUwMzI5Niwx
LjU4NjMyMzE0MjA1MTY5NjgsMS42MjYxMTEyNjg5OTcxOTI0LDEuNjMyNDM1Njc5NDM1NzMsMS42
MDQ2NTA4NTUwNjQzOTIsMS41NDMwMzY1ODAwODU3NTQ0LDEuNDQ4Nzk0MTI2NTEwNjIwMSwxLjMy
NDAxODk1NTIzMDcxMywxLjE3MTY0NTA0NTI4MDQ1NjUsMC45OTUzNjc2NDYyMTczNDYyLDAuNzk5
NTQyMTI5MDM5NzY0NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJz
b2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAzMDM5OSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BB
U1MgICBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIGVxdWFscyBbMC43ODYzNTYyMTA3MDg2
MTgyLDAuOTY3NjYxOTE3MjA5NjI1MiwxLjEzNTc3MjQ2NjY1OTU0NiwxLjI4NTgyNDg5NDkwNTA5
MDMsMS40MTMzOTI5MDE0MjA1OTMzLDEuNTE0NjE3NjgxNTAzMjk2LDEuNTg2MzIzMjYxMjYwOTg2
MywxLjYyNjExMTM4ODIwNjQ4MiwxLjYzMjQzNTc5ODY0NTAxOTUsMS42MDQ2NTA5NzQyNzM2ODE2
LDEuNTQzMDM2Njk5Mjk1MDQ0LDEuNDQ4Nzk0MjQ1NzE5OTA5NywxLjMyNDAxOTA3NDQ0MDAwMjQs
MS4xNzE2NDUxNjQ0ODk3NDYsMC45OTUzNjc3NjU0MjY2MzU3LDAuNzk5NTQyMjQ4MjQ5MDU0Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MC4wMDAwMDMwMzk5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAogUEFTUyAgIE91dHB1dCBmcm9t
IGZyZXF1ZW5jeSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgdHJ1ZS4g
CiBQQVNTIDwgW1Rlc3QgMF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRp
b25zKSAKIFBBU1MgPiBbVGVzdCAxXSBObyBkZXppcHBlcmluZyBmb3IgZGV0dW5lIAogUEFTUyAg
IEF0IHRpbWUgMCwgZGV0dW5lIGlzIGVxdWFsIHRvIDMzLiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1
NjI1LCBkZXR1bmUgaXMgZXF1YWwgdG8gMTAwMC4gCiBQQVNTICAgQXQgdGltZSAwLjAzOTA2MjUs
IGRldHVuZSBpcyBlcXVhbCB0byAtNDAwLiAKLVBBU1MgICBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0
dGVyIGVxdWFscyBbMS4xNDc2NjA5NzA2ODc4NjYyLDEuMTU2MTk1NDAyMTQ1Mzg1NywxLjEzNzE1
NjcyNDkyOTgwOTYsMS4wODkxMzM2MjAyNjIxNDYsMS4wMTE1MzM5NzU2MDExOTYzLDAuOTA0NjI5
NzA3MzM2NDI1OCwwLjc2OTU3Njc4Nzk0ODYwODQsMC42MDg0MDg4MDg3MDgxOTA5LDAuNDI0MDA0
ODIyOTY5NDM2NjUsMC4yMjAwMjg3NTgwNDkwMTEyMywwLjAwMDg0NjE0Mjg4MDYxODU3MjIsLTAu
MjI4NTgyNDQxODA2NzkzMiwtMC40NjI4MjY4MTgyMjc3Njc5NCwtMC42OTYxMzAzMzUzMzA5NjMx
LC0wLjkyMjU2NDA4OTI5ODI0ODMsLTEuMTM2MTg5ODE4MzgyMjYzMi4uLl0gd2l0aCBhbiBlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDA0MDUzMiwi
cmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVy
IGVxdWFscyBbMS4xNDc2NjA5NzA2ODc4NjYyLDEuMTU2MTk1NDAyMTQ1Mzg1NywxLjEzNzE1Njcy
NDkyOTgwOTYsMS4wODkxMzM2MjAyNjIxNDYsMS4wMTE1MzM5NzU2MDExOTYzLDAuOTA0NjI5NzA3
MzM2NDI1OCwwLjc2OTU3NjcyODM0Mzk2MzYsMC42MDg0MDg4MDg3MDgxOTA5LDAuNDI0MDA0Nzkz
MTY3MTE0MjYsMC4yMjAwMjg3NDMxNDc4NTAwNCwwLjAwMDg0NjEyOTYwOTI3MTg4NCwtMC4yMjg1
ODI0NTY3MDc5NTQ0LC0wLjQ2MjgyNjgxODIyNzc2Nzk0LC0wLjY5NjEzMDM5NDkzNTYwNzksLTAu
OTIyNTY0MDg5Mjk4MjQ4MywtMS4xMzYxODk4MTgzODIyNjMyLi4uXSB3aXRoIGFuIGVsZW1lbnQt
d2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDQwNTMyLCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uIAogUEFTUyAgIE91dHB1dCBmcm9tIGRldHVuZSBzZXR0ZXIgbWF0
Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgdHJ1ZS4gCiBQQVNTIDwgW1Rlc3QgMV0gQWxs
IGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbVGVzdCAy
XSBObyBkZXppcHBlcmluZyBmb3IgUSAKQEAgLTMyLDE0ICszMiwxNCBAQCBQQVNTID4gW1Rlc3Qg
M10gTm8gZGV6aXBwZXJpbmcgZm9yIGdhaW4KIFBBU1MgICBBdCB0aW1lIDAsIGdhaW4gaXMgZXF1
YWwgdG8gMS4gCiBQQVNTICAgQXQgdGltZSAwLjAxNTYyNSwgZ2FpbiBpcyBlcXVhbCB0byA1LiAK
IFBBU1MgICBBdCB0aW1lIDAuMDQ2ODc1LCBnYWluIGlzIGVxdWFsIHRvIC0wLjMuIAotUEFTUyAg
IE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIGVxdWFscyBbLTAuODQ0ODY3MjI5NDYxNjY5OSwtMS4w
MzQ1MzU2NDY0Mzg1OTg2LC0xLjE4NjYwNjE2ODc0Njk0ODIsLTEuMjk5NDczMjg1Njc1MDQ4OCwt
MS4zNzIzOTExMDQ2OTgxODEyLC0xLjQwNTQ4NjM0NTI5MTEzNzcsLTEuMzk5NzUwNTkwMzI0NDAx
OSwtMS4zNTcwMTM5NDA4MTExNTcyLC0xLjI3OTg5ODY0MzQ5MzY1MjMsLTEuMTcxNzUzNjQ0OTQz
MjM3MywtMS4wMzY1NzIwOTg3MzE5OTQ2LC0wLjg3ODg5MTY0Njg2MjAzLC0wLjcwMzY4NDM4OTU5
MTIxNywtMC41MTYyMzEyMzg4NDIwMTA1LC0wLjMyMTk5MjAwOTg3ODE1ODU3LC0wLjEyNjQ2OTMy
ODk5OTUxOTM1Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0
ZVRocmVzaG9sZCI6MC4wMDAwMDE5MDc0LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAg
IE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIGVxdWFscyBbLTAuODQ0ODY3MjI5NDYxNjY5OSwtMS4w
MzQ1MzU2NDY0Mzg1OTg2LC0xLjE4NjYwNjE2ODc0Njk0ODIsLTEuMjk5NDczMjg1Njc1MDQ4OCwt
MS4zNzIzOTExMDQ2OTgxODEyLC0xLjQwNTQ4NjM0NTI5MTEzNzcsLTEuMzk5NzUwNTkwMzI0NDAx
OSwtMS4zNTcwMTM5NDA4MTExNTcyLC0xLjI3OTg5ODY0MzQ5MzY1MjMsLTEuMTcxNzUzNjQ0OTQz
MjM3MywtMS4wMzY1NzIwOTg3MzE5OTQ2LC0wLjg3ODg5MTcwNjQ2NjY3NDgsLTAuNzAzNjg0NDQ5
MTk1ODYxOCwtMC41MTYyMzEyMzg4NDIwMTA1LC0wLjMyMTk5MjAzOTY4MDQ4MDk2LC0wLjEyNjQ2
OTM0MzkwMDY4MDU0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNv
bHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE5MDc0LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAogUEFT
UyAgIE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0
IGlzIHRydWUuIAogUEFTUyA8IFtUZXN0IDNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFs
IDUgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgNF0gTm8gZGV6aXBwZXJpbmcgb2YgZnJlcXVl
bmN5IHZzIEpTIGZpbHRlciAKIEZBSUwgWCBPdXRwdXQgZnJvbSBsb3dwYXNzIGZpbHRlciBkb2Vz
IG5vdCBlcXVhbCBbLTAuMDAzMDAxMDQ4NDYyNDY1NDA1NSwtMC4wMTQwNjk4OTYxOTEzNTg1NjYs
LTAuMDMzNDAyMDQ4MDUxMzU3MjcsLTAuMDU3MjkxNDEwODYzMzk5NTA2LC0wLjA4MjE2NDMwMjQ2
ODI5OTg3LC0wLjEwNDcwMDY0NzI5NDUyMTMzLC0wLjEyMTk0MDk1NTUxOTY3NjIxLC0wLjEzMTM3
NjYzOTAwODUyMjAzLC0wLjEzMTAyMTczODA1MjM2ODE2LC0wLjExOTQ2NDYwNjA0NjY3NjY0LC0w
LjA5NTg5ODgxNDQ5OTM3ODIsLTAuMDYwMTMzMDIxMzI0ODcyOTcsLTAuMDEyNTgwMTc0MDIxNDIy
ODYzLDAuMDQ1NzcyOTk1Nzk5Nzc5ODksMC4xMTM0MTQ3MTk3MDA4MTMzLDAuMTg4MzczMjIyOTQ3
MTIwNjcuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjo1Ljk2MDdlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJ
CQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAogCVswXQktMi42
MjU5ODI0NjMzNTk4MzI4ZS0xCS0zLjAwMTA0ODQ2MjQ2NTQwNTVlLTMJMi41OTU5NzE5Nzg3MzUx
Nzg3ZS0xCTguNjUwMjE2Nzg2NTc3ODEzNGUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKLQlbMV0J
LTQuMTQ0NDUwNzI0MTI0OTA4NGUtMQktMS40MDY5ODk2MTkxMzU4NTY2ZS0yCTQuMDAzNzUxNzYy
MjExMzIyOGUtMQkyLjg0NTYxNTcwODcxNDU2OTRlKzEJNS45NjA3MDAwMDAwMDAwMDAyZS03CisJ
WzFdCS00LjE0NDQ1MTAyMjE0ODEzMjNlLTEJLTEuNDA2OTg5NjE5MTM1ODU2NmUtMgk0LjAwMzc1
MjA2MDIzNDU0NjdlLTEJMi44NDU2MTU5MjA1MzA3OTAyZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUt
NwogCVsyXQktNS40Mzg2MjUyMTY0ODQwNjk4ZS0xCS0zLjM0MDIwNDgwNTEzNTcyNjllLTIJNS4x
MDQ2MDQ3MzU5NzA0OTcxZS0xCTEuNTI4MjMxMDYxNzk2NTQ2MWUrMQk1Ljk2MDcwMDAwMDAwMDAw
MDJlLTcKIAlbM10JLTYuMzU5Mjg2OTA0MzM1MDIyMGUtMQktNS43MjkxNDEwODYzMzk5NTA2ZS0y
CTUuNzg2MzcyNzk1NzAxMDI2OWUtMQkxLjAwOTk4OTU3OTMyNzYxMjRlKzEJNS45NjA3MDAwMDAw
MDAwMDAyZS03CiAJWzRdCS02LjgwOTA0NTA3NjM3MDIzOTNlLTEJLTguMjE2NDMwMjQ2ODI5OTg2
NmUtMgk1Ljk4NzQwMjA1MTY4NzI0MDZlLTEJNy4yODcxMDg3MjIxODE3MDkwZSswCTUuOTYwNzAw
MDAwMDAwMDAwMmUtNwpAQCAtNTUsMjAgKzU1LDggQEAgUEFTUyA+IFtUZXN0IDVdIFRlc3Qgd2l0
aCBtb2R1bGF0aW9uCiBQQVNTICAgTW9kdWxhdGlvbjogQXQgdGltZSAwLCBmcmVxdWVuY3kgaXMg
ZXF1YWwgdG8gMzUwLiAKIFBBU1MgICBNb2R1bGF0aW9uOiBBdCB0aW1lIDAuMDE1NjI1LCBmcmVx
dWVuY3kgaXMgZXF1YWwgdG8gMTAuIAogUEFTUyAgIE1vZHVsYXRpb246IEF0IHRpbWUgMC4wNjI1
LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gLTEwLiAKLUZBSUwgWCBNb2R1bGF0aW9uOiBPdXRwdXQg
ZnJvbSBmcmVxdWVuY3kgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFswLC0wLjE2NzkzODMwNjkyNzY4
MDk3LC0wLjMzMTEwNjMwNTEyMjM3NTUsLTAuNDg0ODY5MjQxNzE0NDc3NTQsLTAuNjI0ODU5NTEx
ODUyMjY0NCwtMC43NDcxMDA1OTE2NTk1NDU5LC0wLjg0ODEyMDMzMTc2NDIyMTIsLTAuOTI1MDQ5
MzY0NTY2ODAzLC0wLjk3NTcwMjIyNjE2MTk1NjgsLTAuOTk4NjQwMTc5NjM0MDk0MiwtMC45OTMy
MTIwNDQyMzkwNDQyLC0wLjk1OTU3MTQyMTE0NjM5MjgsLTAuODk4Njc0NDg4MDY3NjI3LC0wLjgx
MjI1MDU1NDU2MTYxNSwtMC43MDI3NTQ3OTU1NTEzLC0wLjU3MzI5NzE0Mjk4MjQ4MjkuLi5dIHdp
dGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJy
ZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9y
CQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMTI4XQktMy44MjMwMTE4MTU1NDc5NDMxZS0x
CS0zLjgyMzY0NjAwODk2ODM1MzNlLTEJNi4zNDE5MzQyMDQxMDE1NjI1ZS01CTEuNjU4NjA5MTM2
MjA4MzY1MGUtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMTI5XQktMi4yMDkxMzY3ODQwNzY2
OTA3ZS0xCS0yLjIxMTA5MjU2MTQ4MzM4MzJlLTEJMS45NTU3Nzc0MDY2OTI1MDQ5ZS00CTguODQ1
Mjk4NjU4MDU1MzExMWUtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMTMwXQktNS4yNzgwNTM1
MDcyMDg4MjQyZS0yCS01LjMxODAxOTkxMTY0Njg0MzBlLTIJMy45OTY2NDA0NDM4MDE4Nzk5ZS00
CTcuNTE1Mjc5MjAyMDM3MTE5NGUtMwkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMTMxXQkxLjE3
MzY1NTAxODIxMDQxMTFlLTEJMS4xNjY4ODc2NTU4NTQyMjUyZS0xCTYuNzY3MzYyMzU2MTg1OTEz
MWUtNAk1Ljc5OTQ5Nzc2ODQ3MzU1MjBlLTMJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzEzMl0J
Mi44NDczNDkwNDc2NjA4Mjc2ZS0xCTIuODM3MDkzMTc0NDU3NTUwMGUtMQkxLjAyNTU4NzMyMDMy
Nzc1ODhlLTMJMy42MTQ5MjI5NDE0MTQ2NzYzZS0zCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCS4u
LmFuZCA1MDcgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDUuMDQ3NTU5NzM4MTU5MTc5
N2UtMiBhdCBpbmRleCBvZiAzNTQuCi0JWzM1NF0JMy4wMTA2NTA3MjQxNzI1OTIyZS0yCTguMDU4
MjEwNDYyMzMxNzcxOWUtMgk1LjA0NzU1OTczODE1OTE3OTdlLTIJNi4yNjM4NzE4MTM0MTgyMjE0
ZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBSZWxFcnJvciBvZiAzLjA4Njk3OTk0MDc5
NDUyNzFlKzAgYXQgaW5kZXggb2YgMjc5LgotCVsyNzldCS01LjEwNDg1MjA5NTI0NjMxNTBlLTIJ
LTEuMjQ5MDUyMzk3OTA2NzgwMmUtMgkzLjg1NTc5OTY5NzMzOTUzNDhlLTIJMy4wODY5Nzk5NDA3
OTQ1MjcxZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCBYIE1vZHVsYXRpb246IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBz
ZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxz
ZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW1Rlc3QgNV0g
MiBvdXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKLUZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMiBvdXQg
b2YgNiB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCitQQVNTICAgTW9kdWxhdGlvbjogT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBlcXVh
bHMgWzAsLTAuMTY3OTM4MzA2OTI3NjgwOTcsLTAuMzMxMTA2MzA1MTIyMzc1NSwtMC40ODQ4Njky
NDE3MTQ0Nzc1NCwtMC42MjQ4NTk1MTE4NTIyNjQ0LC0wLjc0NzEwMDU5MTY1OTU0NTksLTAuODQ4
MTIwMzMxNzY0MjIxMiwtMC45MjUwNDkzNjQ1NjY4MDMsLTAuOTc1NzAyMjI2MTYxOTU2OCwtMC45
OTg2NDk0Nzc5NTg2NzkyLC0wLjk5MzI0MTAxMjA5NjQwNSwtMC45NTk1OTM0NzQ4NjQ5NTk3LC0w
Ljg5ODU5MDY4MzkzNzA3MjgsLTAuODExODU5MTMwODU5Mzc1LC0wLjcwMTc4NzQ3MTc3MTI0MDIs
LTAuNTcxMjM1NjU2NzM4MjgxMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9m
IHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAg
TW9kdWxhdGlvbjogT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBtYXRjaGVzIHNldFZhbHVl
QXRUaW1lIG91dHB1dCBpcyB0cnVlLiAKK1BBU1MgPCBbVGVzdCA1XSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCA1IGFzc2VydGlvbnMpIAorRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJ
TklTSEVEOiAxIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>