<?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>41566</bug_id>
          
          <creation_ts>2010-07-03 01:17:04 -0700</creation_ts>
          <short_desc>Logic to track whether elements are using relative lengths is incomplete</short_desc>
          <delta_ts>2010-07-05 07:35:49 -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>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>15391</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          <cc>krit</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>246269</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-07-03 01:17:04 -0700</bug_when>
    <thetext>To be able to avoid relayouts for absolute positioned RenderObjects if just window size changes we need more logic in the SVG DOM to know whether an element has relative lengths or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246274</commentid>
    <comment_count>1</comment_count>
      <attachid>60442</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-07-03 01:37:57 -0700</bug_when>
    <thetext>Created attachment 60442
Initial patch

This prepares the actual patch to fix bug 15391. Gives a huge speed benefit, whenever elements with absolute sizes are used, that do not need to relayout anymore.
The actual logic for that comes in the patch for bug 15391, this is just a preparation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246275</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-03 01:39:27 -0700</bug_when>
    <thetext>Attachment 60442 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebCore/svg/SVGStyledElement.cpp:371:  Tab found; better to use spaces  [whitespace/tab] [1]
Total errors found: 1 in 43 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246277</commentid>
    <comment_count>3</comment_count>
      <attachid>60444</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-07-03 01:41:28 -0700</bug_when>
    <thetext>Created attachment 60444
Updated patch

Oops, remove leftover tab.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246311</commentid>
    <comment_count>4</comment_count>
      <attachid>60444</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2010-07-03 08:13:41 -0700</bug_when>
    <thetext>Comment on attachment 60444
Updated patch

&gt;  {
&gt;      SVGStyledTransformableElement::svgAttributeChanged(attrName);
&gt;  
&gt; +    bool isLengthAttribute = attrName == SVGNames::cxAttr
&gt; +                          || attrName == SVGNames::cyAttr
&gt; +                          || attrName == SVGNames::rAttr;
&gt; +
&gt; +    if (isLengthAttribute)
&gt; +        updateRelativeLengthsInformation();
&gt; +
&gt;      RenderPath* renderer = static_cast&lt;RenderPath*&gt;(this-&gt;renderer());
&gt;      if (!renderer)

updateRelativeLengthsInformation is not in this patch. Do we need to call it, even if we don&apos;t have a renderer? I guess you want to update the information about relative values, even if a renderer was not created yet, to avoid a second layout, correct?

&gt; +void SVGStyledElement::updateRelativeLengthsInformation(bool, SVGStyledElement*)
&gt; +{
&gt; +    // FIXME: The actual code will land in a follow-up patch.
&gt; +}
&gt; +
&gt;  }

Please add a link to this bug, even if you provide a followup soon.

It looks like you changed the behavior of the filterElement. Do we have dynamic update tests for filter? If not, can you add some?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246532</commentid>
    <comment_count>5</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-07-05 01:57:21 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 60444 [details])
&gt; &gt;  {
&gt; &gt;      SVGStyledTransformableElement::svgAttributeChanged(attrName);
&gt; &gt;  
&gt; &gt; +    bool isLengthAttribute = attrName == SVGNames::cxAttr
&gt; &gt; +                          || attrName == SVGNames::cyAttr
&gt; &gt; +                          || attrName == SVGNames::rAttr;
&gt; &gt; +
&gt; &gt; +    if (isLengthAttribute)
&gt; &gt; +        updateRelativeLengthsInformation();
&gt; &gt; +
&gt; &gt;      RenderPath* renderer = static_cast&lt;RenderPath*&gt;(this-&gt;renderer());
&gt; &gt;      if (!renderer)
&gt; 
&gt; updateRelativeLengthsInformation is not in this patch. Do we need to call it, even if we don&apos;t have a renderer? I guess you want to update the information about relative values, even if a renderer was not created yet, to avoid a second layout, correct?
Well, it&apos;s necessary to build this information while parsing, before renderers are available. As soon as renderers are attached, and layouted we need the relative length information.

&gt; &gt; +void SVGStyledElement::updateRelativeLengthsInformation(bool, SVGStyledElement*)
&gt; &gt; +{
&gt; &gt; +    // FIXME: The actual code will land in a follow-up patch.
&gt; &gt; +}
&gt; &gt; +
&gt; &gt;  }
&gt; 
&gt; Please add a link to this bug, even if you provide a followup soon.
Will do.

&gt; 
&gt; It looks like you changed the behavior of the filterElement. Do we have dynamic update tests for filter? If not, can you add some?

I hope you could mail me your set? You said you&apos;ve already  created some.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246536</commentid>
    <comment_count>6</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2010-07-05 02:02:42 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; I hope you could mail me your set? You said you&apos;ve already  created some.

I&apos;ll search them. I changed the hard disk, so I can&apos;t promise that I still have them :-(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246632</commentid>
    <comment_count>7</comment_count>
      <attachid>60530</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-07-05 07:23:27 -0700</bug_when>
    <thetext>Created attachment 60530
Updated patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246636</commentid>
    <comment_count>8</comment_count>
      <attachid>60530</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2010-07-05 07:30:03 -0700</bug_when>
    <thetext>Comment on attachment 60530
Updated patch v2

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246638</commentid>
    <comment_count>9</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-07-05 07:35:49 -0700</bug_when>
    <thetext>Landed in r62488.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60442</attachid>
            <date>2010-07-03 01:37:57 -0700</date>
            <delta_ts>2010-07-03 01:41:28 -0700</delta_ts>
            <desc>Initial patch</desc>
            <filename>FirstPatch.diff</filename>
            <type>text/plain</type>
            <size>54791</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MjQ0MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTEzIEBACisyMDEwLTA3LTAzICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVy
bWFubkByaW0uY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIExvZ2ljIHRvIHRyYWNrIHdoZXRoZXIgZWxlbWVudHMgYXJlIHVzaW5nIHJlbGF0aXZl
IGxlbmd0aHMgaXMgaW5jb21wbGV0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDE1NjYKKworICAgICAgICBBZGQgbG9naWMgdG8gYWxsIFNWRyBlbGVt
ZW50cyB3aGljaCBjcmVhdGUgcmVuZGVyZXMgdG8gZXhwb3NlIGEgbWV0aG9kCisgICAgICAgICJi
b29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSIsIHRoYXQgcmV0dXJucyB3aGV0aGVyIHRoZSBl
bGVtZW50IHVzZXMgcmVsYXRpdmUKKyAgICAgICAgbGVuZ3RocyAoZWcuIDxyZWN0IHg9IjUwJSIu
Li4pLiBUaGlzIHdpbGwgYmUgdXNlZCBzb29uIHRvIGF2b2lkIHJlbGF5b3V0cyBvZgorICAgICAg
ICBjb250YWluZXIgY2hpbGRyZW4sIHdoZW4gdGhlIGJvdW5kcyBoYXZlIG5vdCBjaGFuZ2VkLgor
CisgICAgICAgIEEgbmV3IG1ldGhvZCBTVkdTdHlsZWRFbGVtZW50Ojp1cGRhdGVSZWxhdGl2ZUxl
bmd0aHNJbmZvcm1hdGlvbigpIGlzIGFkZGVkLAorICAgICAgICB3aGljaCBpcyBjYWxsZWQgZnJv
bSB0aGUgdmFyaW91cyBzdmdBdHRyaWJ1dGVDaGFuZ2VkKCkgbWV0aG9kcyBhbmQgaW5zZXJ0ZWRJ
bnRvRG9jdW1lbnQvcmVtb3ZlZEZyb21Eb2N1bWVudC4KKyAgICAgICAgSXQgd2lsbCBiZSBpbXBs
ZW1lbnRlZCBpbiBhIGZvbGxvdy11cCBwYXRjaC4gVGhpcyBwYXRjaCBkb2VzIG5vdCBhZmZlY3Qg
YW55IHRlc3QgYmVoYXZpb3VyLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclBhdGguY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUGF0aDo6bGF5b3V0KTogUmVuYW1lIGhhc1JlbGF0
aXZlVmFsdWVzIHRvIGhhc1JlbGF0aXZlTGVuZ3Rocy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyU1ZHUm9vdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdSb290OjpsYXlvdXQp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1Jvb3Q6OmNhbGNWaWV3cG9ydCk6
IERpdHRvLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lcjo6Y2FsY1Zp
ZXdwb3J0KTogRGl0dG8KKyAgICAgICAgKiByZW5kZXJpbmcvU1ZHUmVuZGVyU3VwcG9ydC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJlbik6IERp
dHRvLgorICAgICAgICAqIHN2Zy9TVkdDaXJjbGVFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNWR0NpcmNsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOiBDYWxsIHVwZGF0ZVJl
bGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCkgaWYgYW55IGF0dHJpYnV0ZSB3aGljaCBtYXkgY29u
dGFpbiByZWxhdGl2ZSBsZW5ndGhzIGNoYW5nZXMuCisgICAgICAgIChXZWJDb3JlOjpTVkdDaXJj
bGVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKTogRGl0dG8uIFNhbWUgZm9yIGFsbCBv
dGhlciBTVkcqRWxlbWVudHMgYmVsb3cuCisgICAgICAgICogc3ZnL1NWR0NpcmNsZUVsZW1lbnQu
aDoKKyAgICAgICAgKiBzdmcvU1ZHRWxsaXBzZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U1ZHRWxsaXBzZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6U1ZHRWxsaXBzZUVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAg
ICAqIHN2Zy9TVkdFbGxpcHNlRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdGaWx0ZXJFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZpbHRlckVsZW1lbnQ6OnN2Z0F0dHJpYnV0
ZUNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRmlsdGVyRWxlbWVudDo6c2VsZkhhc1Jl
bGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR0ZpbHRlckVsZW1lbnQuaDoKKyAgICAg
ICAgKiBzdmcvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAo
V2ViQ29yZTo6U1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMp
OgorICAgICAgICAqIHN2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oOgorICAgICAgICAqIHN2
Zy9TVkdJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHSW1hZ2VFbGVtZW50
OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ltYWdlRWxlbWVu
dDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR0ltYWdlRWxlbWVu
dC5oOgorICAgICAgICAqIHN2Zy9TVkdMaW5lRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdMaW5lRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdMaW5lRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3Zn
L1NWR0xpbmVFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0xpbmVhckdyYWRpZW50RWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQ6OnN2Z0F0
dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHTGluZWFyR3JhZGllbnRFbGVt
ZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcvU1ZHTGluZWFyR3Jh
ZGllbnRFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR01hcmtlckVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHTWFya2VyRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTVkdNYXJrZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhz
KToKKyAgICAgICAgKiBzdmcvU1ZHTWFya2VyRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdN
YXNrRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdNYXNrRWxlbWVudDo6c3ZnQXR0
cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdNYXNrRWxlbWVudDo6c2VsZkhh
c1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR01hc2tFbGVtZW50Lmg6CisgICAg
ICAgICogc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1Bh
dHRlcm5FbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNW
R1BhdHRlcm5FbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcv
U1ZHUGF0dGVybkVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1JhZGlhbEdyYWRpZW50RWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdSYWRpYWxHcmFkaWVudEVs
ZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAgICAqIHN2Zy9TVkdSYWRpYWxH
cmFkaWVudEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHUmVjdEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHUmVjdEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHUmVjdEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgor
ICAgICAgICAqIHN2Zy9TVkdSZWN0RWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdTVkdFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNo
YW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZl
TGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR1NWR0VsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcv
U1ZHU3R5bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50
OjppbnNlcnRlZEludG9Eb2N1bWVudCk6IENhbGwgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3Jt
YXRpb24oKS4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OnJlbW92ZWRGcm9t
RG9jdW1lbnQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OnVw
ZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKTogTm90IGltcGxlbWVudGVkIHNvIGZhci4g
V2lsbCBsYW5kIGluIGEgZm9sbG93LXVwIHBhdGNoLCB0b2dldGhlciB3aXRoIHRoZSByZW5kZXIg
dHJlZSBjaGFuZ2VzLgorICAgICAgICAqIHN2Zy9TVkdTdHlsZWRFbGVtZW50Lmg6CisgICAgICAg
IChXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50OjpoYXNSZWxhdGl2ZUxlbmd0aHMpOiBEZXZpcnR1
YWxpemVkLiBGb3Igbm93LCBqdXN0IGNhbGwgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIC0gdGhp
cyB3aWxsIGNoYW5nZSBpbiBhIGZvbGxvdy11cCBwYXRjaC4KKyAgICAgICAgKFdlYkNvcmU6OlNW
R1N0eWxlZEVsZW1lbnQ6OnVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOiBS
ZW5hbWVkIGZyb20gaGFzUmVsYXRpdmVWYWx1ZXMoKS4KKyAgICAgICAgKiBzdmcvU1ZHU3ltYm9s
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdTeW1ib2xFbGVtZW50OjpzdmdBdHRy
aWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1N5bWJvbEVsZW1lbnQ6OnNlbGZI
YXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAgICAqIHN2Zy9TVkdTeW1ib2xFbGVtZW50Lmg6Cisg
ICAgICAgICogc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdUZXh0Q29udGVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAg
ICAqIHN2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVGV4dFBh
dGhFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1RleHRQYXRoRWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdUZXh0UGF0aEVsZW1lbnQ6
Omluc2VydGVkSW50b0RvY3VtZW50KTogQ2FsbCByaWdodCBiYXNlIGNsYXNzJyBtZXRob2QuIFNr
aXBwZWQgb25lIGluIHRoZSBoaWVyYWNoeSBiZWZvcmUuCisgICAgICAgIChXZWJDb3JlOjpTVkdU
ZXh0UGF0aEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAgICAqIHN2Zy9T
VkdUZXh0UGF0aEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50Ojpz
dmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6Omxpc3RDb250YWluc1JlbGF0
aXZlVmFsdWUpOiBOZXcgaGVscGVyIGZ1bnRpb24gdGhhdCBjaGVja3Mgd2hldGVyIGEgU1ZHTGVu
Z3RoTGlzdCBjb250YWlucyByZWxhdGl2ZSBsZW5ndGhzLgorICAgICAgICAoV2ViQ29yZTo6U1ZH
VGV4dFBvc2l0aW9uaW5nRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAg
ICogc3ZnL1NWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVXNl
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50OjppbnNlcnRlZElu
dG9Eb2N1bWVudCk6IENhbGwgcmlnaHQgYmFzZSBjbGFzcycgbWV0aG9kLiBTa2lwcGVkIG9uIGlu
IHRoZSBoaWVyYWNoeSBiZWZvcmUuCisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50Ojpy
ZW1vdmVkRnJvbURvY3VtZW50KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVt
ZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1VzZUVsZW1l
bnQ6OmJ1aWxkU2hhZG93QW5kSW5zdGFuY2VUcmVlKTogQ2FsbCB1cGRhdGVSZWxhdGl2ZUxlbmd0
aHNJbmZvcm1hdGlvbigpIGFmdGVyIGJ1aWxkaW5nIHRoZSBzaGFkb3cgdHJlZS4KKyAgICAgICAg
KFdlYkNvcmU6OlNWR1VzZUVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOiBTYW1lIGFz
IGFsbCBvdGhlciBtZXRob2RzLCBleGNlcHQgdGhhdCBpdCBpbmNsdWRlcyB0aGUgc2hhZG93IHRy
ZWUgcm9vdCBlbGVtZW50LgorICAgICAgICAqIHN2Zy9TVkdVc2VFbGVtZW50Lmg6CisKIDIwMTAt
MDctMDMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBFcmljIFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCShyZXZpc2lv
biA2MjIzOCkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xMDQsNyArMTA0LDcgQEAgdm9pZCBSZW5kZXJQYXRoOjpsYXlvdXQoKQogICAgIC8v
IGFzIHRoZSB2aWV3cG9ydCBzaXplIG1heSBoYXZlIGNoYW5nZWQuIEl0IHdvdWxkIGJlIG5pY2Ug
dG8gb3B0aW1pemUgdGhpcyB0byBkZXRlY3QgdGhlc2UgY2hhbmdlcywgYW5kIG9ubHkKICAgICAv
LyB1cGRhdGUgd2hlbiBuZWVkZWQsIGV2ZW4gd2hlbiB1c2luZyByZWxhdGl2ZSB2YWx1ZXMuCiAg
ICAgYm9vbCBuZWVkc1BhdGhVcGRhdGUgPSBtX25lZWRzUGF0aFVwZGF0ZTsKLSAgICBpZiAoIW5l
ZWRzUGF0aFVwZGF0ZSAmJiBlbGVtZW50LT5oYXNSZWxhdGl2ZVZhbHVlcygpKQorICAgIGlmICgh
bmVlZHNQYXRoVXBkYXRlICYmIGVsZW1lbnQtPmhhc1JlbGF0aXZlTGVuZ3RocygpKQogICAgICAg
ICBuZWVkc1BhdGhVcGRhdGUgPSB0cnVlOwogCiAgICAgaWYgKG5lZWRzUGF0aFVwZGF0ZSkgewpJ
bmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAJKHJldmlzaW9uIDYyMjQ0KQorKysg
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEx
OSw3ICsxMTksNyBAQCB2b2lkIFJlbmRlclNWR1Jvb3Q6OmxheW91dCgpCiAgICAgLy8gUmVuZGVy
U1ZHUm9vdCBuZWVkcyB0byB0YWtlIHNwZWNpYWwgY2FyZSB0byBwcm9wYWdhdGUgd2luZG93IHNp
emUgY2hhbmdlcyB0byB0aGUgY2hpbGRyZW4sCiAgICAgLy8gaWYgdGhlIG91dGVybW9zdCA8c3Zn
PiBpcyB1c2luZyByZWxhdGl2ZSB4L3kvd2lkdGgvaGVpZ2h0IHZhbHVlcy4gSGVuY2UgdGhlIGFk
ZGl0b25hbCBwYXJhbWV0ZXJzLgogICAgIFNWR1NWR0VsZW1lbnQqIHN2ZyA9IHN0YXRpY19jYXN0
PFNWR1NWR0VsZW1lbnQqPihub2RlKCkpOwotICAgIFNWR1JlbmRlclN1cHBvcnQ6OmxheW91dENo
aWxkcmVuKHRoaXMsIG5lZWRzTGF5b3V0IHx8IChzdmctPmhhc1JlbGF0aXZlVmFsdWVzKCkgJiYg
b2xkU2l6ZSAhPSBzaXplKCkpKTsKKyAgICBTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJl
bih0aGlzLCBuZWVkc0xheW91dCB8fCAoc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSAmJiBvbGRT
aXplICE9IHNpemUoKSkpOwogICAgIHJlcGFpbnRlci5yZXBhaW50QWZ0ZXJMYXlvdXQoKTsKIAog
ICAgIHZpZXcoKS0+ZW5hYmxlTGF5b3V0U3RhdGUoKTsKQEAgLTE5Nyw3ICsxOTcsNyBAQCB2b2lk
IFJlbmRlclNWR1Jvb3Q6OmNhbGNWaWV3cG9ydCgpCiB7CiAgICAgU1ZHU1ZHRWxlbWVudCogc3Zn
ID0gc3RhdGljX2Nhc3Q8U1ZHU1ZHRWxlbWVudCo+KG5vZGUoKSk7CiAKLSAgICBpZiAoIXNlbGZO
ZWVkc0xheW91dCgpICYmICFzdmctPmhhc1JlbGF0aXZlVmFsdWVzKCkpCisgICAgaWYgKCFzZWxm
TmVlZHNMYXlvdXQoKSAmJiAhc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgaWYgKCFzdmctPmhhc1NldENvbnRhaW5lclNpemUoKSkgewpJbmRleDogV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHVmlld3BvcnRDb250YWluZXIuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmNwcAkocmV2
aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdWaWV3cG9ydENvbnRh
aW5lci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDcgKzQ5LDcgQEAgdm9pZCBSZW5kZXJTVkdW
aWV3cG9ydENvbnRhaW5lcjo6Y2FsY1ZpZQogICAgIGlmIChzdmdlbGVtLT5oYXNUYWdOYW1lKFNW
R05hbWVzOjpzdmdUYWcpKSB7CiAgICAgICAgIFNWR1NWR0VsZW1lbnQqIHN2ZyA9IHN0YXRpY19j
YXN0PFNWR1NWR0VsZW1lbnQqPihub2RlKCkpOwogCi0gICAgICAgIGlmICghc2VsZk5lZWRzTGF5
b3V0KCkgJiYgIXN2Zy0+aGFzUmVsYXRpdmVWYWx1ZXMoKSkKKyAgICAgICAgaWYgKCFzZWxmTmVl
ZHNMYXlvdXQoKSAmJiAhc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSkKICAgICAgICAgICAgIHJl
dHVybjsKIAogICAgICAgICBmbG9hdCB4ID0gc3ZnLT54KCkudmFsdWUoc3ZnKTsKSW5kZXg6IFdl
YkNvcmUvcmVuZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCShyZXZpc2lvbiA2MjI0NCkKKysrIFdl
YkNvcmUvcmVuZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NDYsNyArMjQ2LDcgQEAgdm9pZCBTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJlbihSZQog
ICAgICAgICBpZiAoIW5lZWRzTGF5b3V0KSB7CiAgICAgICAgICAgICBpZiAoU1ZHRWxlbWVudCog
ZWxlbWVudCA9IGNoaWxkLT5ub2RlKCktPmlzU1ZHRWxlbWVudCgpID8gc3RhdGljX2Nhc3Q8U1ZH
RWxlbWVudCo+KGNoaWxkLT5ub2RlKCkpIDogMCkgewogICAgICAgICAgICAgICAgIGlmIChlbGVt
ZW50LT5pc1N0eWxlZCgpKQotICAgICAgICAgICAgICAgICAgICBuZWVkc0xheW91dCA9IHN0YXRp
Y19jYXN0PFNWR1N0eWxlZEVsZW1lbnQqPihlbGVtZW50KS0+aGFzUmVsYXRpdmVWYWx1ZXMoKTsK
KyAgICAgICAgICAgICAgICAgICAgbmVlZHNMYXlvdXQgPSBzdGF0aWNfY2FzdDxTVkdTdHlsZWRF
bGVtZW50Kj4oZWxlbWVudCktPmhhc1JlbGF0aXZlTGVuZ3RocygpOwogICAgICAgICAgICAgfQog
ICAgICAgICB9CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3
MSkKKysrIFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC03MSw2ICs3MSwxMyBAQCB2b2lkIFNWR0NpcmNsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
CiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc0xlbmd0aEF0dHJpYnV0ZSA9IGF0dHJOYW1lID09
IFNWR05hbWVzOjpjeEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OmN5QXR0cgorICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFt
ZSA9PSBTVkdOYW1lczo6ckF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAg
ICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRo
KiByZW5kZXJlciA9IHN0YXRpY19jYXN0PFJlbmRlclBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsK
ICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1cm47CkBAIC04MSw5ICs4OCw3IEBAIHZv
aWQgU1ZHQ2lyY2xlRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmcKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6Y3hBdHRyCi0gICAgICAgIHx8
IGF0dHJOYW1lID09IFNWR05hbWVzOjpjeUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZH
TmFtZXM6OnJBdHRyKSB7CisgICAgaWYgKGlzTGVuZ3RoQXR0cmlidXRlKSB7CiAgICAgICAgIHJl
bmRlcmVyLT5zZXROZWVkc1BhdGhVcGRhdGUoKTsKICAgICAgICAgcmVuZGVyZXItPnNldE5lZWRz
TGF5b3V0KHRydWUpOwogICAgICAgICByZXR1cm47CkBAIC0xMjIsOSArMTI3LDExIEBAIFBhdGgg
U1ZHQ2lyY2xlRWxlbWVudDo6dG9QYXRoRGF0YSgpIGNvbnMKICAgICByZXR1cm4gUGF0aDo6Y3Jl
YXRlQ2lyY2xlKEZsb2F0UG9pbnQoY3goKS52YWx1ZSh0aGlzKSwgY3koKS52YWx1ZSh0aGlzKSks
IHIoKS52YWx1ZSh0aGlzKSk7CiB9CiAKLWJvb2wgU1ZHQ2lyY2xlRWxlbWVudDo6aGFzUmVsYXRp
dmVWYWx1ZXMoKSBjb25zdAorYm9vbCBTVkdDaXJjbGVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVM
ZW5ndGhzKCkgY29uc3QKIHsKLSAgICByZXR1cm4gKGN4KCkuaXNSZWxhdGl2ZSgpIHx8IGN5KCku
aXNSZWxhdGl2ZSgpIHx8IHIoKS5pc1JlbGF0aXZlKCkpOworICAgIHJldHVybiBjeCgpLmlzUmVs
YXRpdmUoKQorICAgICAgICB8fCBjeSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByKCkuaXNS
ZWxhdGl2ZSgpOwogfQogIAogfQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaAkocmV2aXNpb24g
NjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdDaXJjbGVFbGVtZW50LmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ1LDEwICs0NSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICB2aXJ0dWFs
IFBhdGggdG9QYXRoRGF0YSgpIGNvbnN0OwogCi0gICAgcHJvdGVjdGVkOgotICAgICAgICB2aXJ0
dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKLQogICAgIHByaXZhdGU6CisgICAg
ICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAg
ICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdDaXJjbGVFbGVtZW50LCBTVkdOYW1lczo6
Y3hBdHRyLCBTVkdMZW5ndGgsIEN4LCBjeCkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdDaXJjbGVFbGVtZW50LCBTVkdOYW1lczo6Y3lBdHRyLCBTVkdMZW5ndGgsIEN5LCBj
eSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdDaXJjbGVFbGVtZW50LCBT
VkdOYW1lczo6ckF0dHIsIFNWR0xlbmd0aCwgUiwgcikKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0Vs
bGlwc2VFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxl
bWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Niw2ICs3NiwxNCBAQCB2b2lkIFNWR0VsbGlwc2VF
bGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVs
ZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc0xlbmd0
aEF0dHJpYnV0ZSA9IGF0dHJOYW1lID09IFNWR05hbWVzOjpjeEF0dHIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmN5QXR0cgorICAgICAgICAgICAg
ICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhBdHRyCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyeUF0dHI7CisKKyAgICBp
ZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9y
bWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRoKiByZW5kZXJlciA9IHN0YXRpY19jYXN0PFJlbmRl
clBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICBy
ZXR1cm47CkBAIC04NiwxMCArOTQsNyBAQCB2b2lkIFNWR0VsbGlwc2VFbGVtZW50OjpzdmdBdHRy
aWJ1dGVDaGFuCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OmN4QXR0cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6Y3lBdHRy
Ci0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyeEF0dHIKLSAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnJ5QXR0cikgeworICAgIGlmIChpc0xlbmd0aEF0dHJpYnV0ZSkg
ewogICAgICAgICByZW5kZXJlci0+c2V0TmVlZHNQYXRoVXBkYXRlKCk7CiAgICAgICAgIHJlbmRl
cmVyLT5zZXROZWVkc0xheW91dCh0cnVlKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTMyLDEwICsx
MzcsMTIgQEAgUGF0aCBTVkdFbGxpcHNlRWxlbWVudDo6dG9QYXRoRGF0YSgpIGNvbgogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcngoKS52YWx1ZSh0aGlzKSwgcnko
KS52YWx1ZSh0aGlzKSk7CiB9CiAgCi1ib29sIFNWR0VsbGlwc2VFbGVtZW50OjpoYXNSZWxhdGl2
ZVZhbHVlcygpIGNvbnN0Citib29sIFNWR0VsbGlwc2VFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVM
ZW5ndGhzKCkgY29uc3QKIHsKLSAgICByZXR1cm4gKGN4KCkuaXNSZWxhdGl2ZSgpIHx8IGN5KCku
aXNSZWxhdGl2ZSgpIHx8Ci0gICAgICAgICAgICByeCgpLmlzUmVsYXRpdmUoKSB8fCByeSgpLmlz
UmVsYXRpdmUoKSk7CisgICAgcmV0dXJuIGN4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGN5
KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHJ4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8
IHJ5KCkuaXNSZWxhdGl2ZSgpOwogfQogCiB9CkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdFbGxpcHNl
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVtZW50LmgJ
KHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtNDUsMTAgKzQ1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAg
ICAgIHZpcnR1YWwgUGF0aCB0b1BhdGhEYXRhKCkgY29uc3Q7CiAKLSAgICBwcm90ZWN0ZWQ6Ci0g
ICAgICAgIHZpcnR1YWwgYm9vbCBoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0OwotCiAgICAgcHJp
dmF0ZToKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25z
dDsKKwogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0VsbGlwc2VFbGVtZW50
LCBTVkdOYW1lczo6Y3hBdHRyLCBTVkdMZW5ndGgsIEN4LCBjeCkKICAgICAgICAgREVDTEFSRV9B
TklNQVRFRF9QUk9QRVJUWShTVkdFbGxpcHNlRWxlbWVudCwgU1ZHTmFtZXM6OmN5QXR0ciwgU1ZH
TGVuZ3RoLCBDeSwgY3kpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRWxs
aXBzZUVsZW1lbnQsIFNWR05hbWVzOjpyeEF0dHIsIFNWR0xlbmd0aCwgUngsIHJ4KQpJbmRleDog
V2ViQ29yZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvU1ZHRmlsdGVyRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcv
U1ZHRmlsdGVyRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNSw2ICsxMDUsMzAgQEAg
dm9pZCBTVkdGaWx0ZXJFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYgogICAgIH0KIH0KIAordm9p
ZCBTVkdGaWx0ZXJFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5h
bWUmIGF0dHJOYW1lKQoreworICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoYXR0ck5hbWUpOworCisgICAgYm9vbCBpbnZhbGlkYXRlQ2xpZW50cyA9IGZhbHNlOworICAg
IGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnlBdHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0
dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIpIHsKKyAgICAg
ICAgaW52YWxpZGF0ZUNsaWVudHMgPSB0cnVlOworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0
aHNJbmZvcm1hdGlvbigpOworICAgIH0KKworICAgIGlmIChpbnZhbGlkYXRlQ2xpZW50cworICAg
ICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6ZmlsdGVyVW5pdHNBdHRyCisgICAgICAgIHx8
IGF0dHJOYW1lID09IFNWR05hbWVzOjpwcmltaXRpdmVVbml0c0F0dHIKKyAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OmZpbHRlclJlc0F0dHIKKyAgICAgICAgfHwgU1ZHVVJJUmVmZXJl
bmNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdMYW5nU3BhY2U6
OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8IFNWR0V4dGVybmFsUmVzb3Vy
Y2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8IFNWR1N0
eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQorICAgICAgICBpbnZhbGlk
YXRlUmVzb3VyY2VDbGllbnRzKCk7Cit9CisKIHZvaWQgU1ZHRmlsdGVyRWxlbWVudDo6c3luY2hy
b25pemVQcm9wZXJ0eShjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKIHsKICAgICBTVkdT
dHlsZWRFbGVtZW50OjpzeW5jaHJvbml6ZVByb3BlcnR5KGF0dHJOYW1lKTsKQEAgLTE2NSw2ICsx
ODksMTUgQEAgUmVuZGVyT2JqZWN0KiBTVkdGaWx0ZXJFbGVtZW50OjpjcmVhdGVSZQogewogICAg
IHJldHVybiBuZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlcih0aGlzKTsKIH0KKwor
Ym9vbCBTVkdGaWx0ZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sK
KyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCkuaXNSZWxhdGl2ZSgp
CisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhlaWdodCgpLmlz
UmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0ZpbHRl
ckVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJFbGVtZW50LmgJ
KHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00NywxMSArNDcsMTQgQEAgcHVibGljOgogICAgIEZsb2F0UmVjdCBmaWx0
ZXJCb3VuZGluZ0JveChjb25zdCBGbG9hdFJlY3QmKSBjb25zdDsKIAogICAgIHZpcnR1YWwgdm9p
ZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqKTsKKyAgICB2aXJ0dWFsIHZvaWQgc3Zn
QXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJik7CiAgICAgdmlydHVhbCB2b2lk
IHN5bmNocm9uaXplUHJvcGVydHkoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCiAgICAgdmlydHVh
bCBSZW5kZXJPYmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiwgUmVuZGVyU3R5bGUq
KTsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3Rocygp
IGNvbnN0OworCiAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdGaWx0ZXJFbGVtZW50
LCBTVkdOYW1lczo6ZmlsdGVyVW5pdHNBdHRyLCBpbnQsIEZpbHRlclVuaXRzLCBmaWx0ZXJVbml0
cykKICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0ZpbHRlckVsZW1lbnQsIFNWR05h
bWVzOjpwcmltaXRpdmVVbml0c0F0dHIsIGludCwgUHJpbWl0aXZlVW5pdHMsIHByaW1pdGl2ZVVu
aXRzKQogICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRmlsdGVyRWxlbWVudCwgU1ZH
TmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdGb3Jl
aWduT2JqZWN0RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHRm9yZWln
bk9iamVjdEVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR0Zv
cmVpZ25PYmplY3RFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzYsNiArNzYsMTQgQEAg
dm9pZCBTVkdGb3JlaWduT2JqZWN0RWxlbWVudDo6c3ZnQXR0cmlidQogewogICAgIFNWR1N0eWxl
ZFRyYW5zZm9ybWFibGVFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAor
ICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUgPSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRy
CisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0
aEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OmhlaWdodEF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0
ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJPYmplY3QqIHJlbmRl
cmVyID0gdGhpcy0+cmVuZGVyZXIoKTsKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1
cm47CkBAIC04NiwxMCArOTQsNyBAQCB2b2lkIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpzdmdB
dHRyaWJ1CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0ck5hbWUgPT0gU1ZH
TmFtZXM6OnhBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cgotICAg
ICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhBdHRyCi0gICAgICAgIHx8IGF0dHJO
YW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyCisgICAgaWYgKGlzTGVuZ3RoQXR0cmlidXRlCiAg
ICAgICAgIHx8IFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQogICAgICAgICB8
fCBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCiAgICAgICAgIHx8IFNW
R0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQpA
QCAtMTM5LDYgKzE0NCwxNCBAQCBib29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpjaGlsZFNo
b3VsCiAgICAgcmV0dXJuIFN0eWxlZEVsZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIo
Y2hpbGQpOwogfQogCitib29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpzZWxmSGFzUmVsYXRp
dmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAg
ICB8fCB5KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisg
ICAgICAgIHx8IGhlaWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6
IFdlYkNvcmUvc3ZnL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9zdmcvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuaAkocmV2aXNpb24gNjIxNzEpCisrKyBX
ZWJDb3JlL3N2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00
OCw2ICs0OCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCBSZW5kZXJP
YmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiBhcmVuYSwgUmVuZGVyU3R5bGUqIHN0
eWxlKTsKIAogICAgIHByaXZhdGU6CisgICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRp
dmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShT
VkdGb3JlaWduT2JqZWN0RWxlbWVudCwgU1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgp
CiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRm9yZWlnbk9iamVjdEVsZW1l
bnQsIFNWR05hbWVzOjp5QXR0ciwgU1ZHTGVuZ3RoLCBZLCB5KQogICAgICAgICBERUNMQVJFX0FO
SU1BVEVEX1BST1BFUlRZKFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50LCBTVkdOYW1lczo6d2lkdGhB
dHRyLCBTVkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0ltYWdl
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNw
cAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC05MSw2ICs5MSwxNCBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlCiAgICAgaWYgKFNWR1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0
ZShhdHRyTmFtZSkpCiAgICAgICAgIG1faW1hZ2VMb2FkZXIudXBkYXRlRnJvbUVsZW1lbnRJZ25v
cmluZ1ByZXZpb3VzRXJyb3IoKTsKIAorICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUgPSBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyCisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0
dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
fHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhB
dHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisK
ICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKTsKICAgICBpZiAo
IXJlbmRlcmVyKQogICAgICAgICByZXR1cm47CkBAIC0xMDEsMTAgKzEwOSw3IEBAIHZvaWQgU1ZH
SW1hZ2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2UKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAotICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKLSAgICAgICAgfHwgYXR0ck5h
bWUgPT0gU1ZHTmFtZXM6OnlBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3
aWR0aEF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIKKyAg
ICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUKICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OnByZXNlcnZlQXNwZWN0UmF0aW9BdHRyCiAgICAgICAgIHx8IFNWR1Rlc3RzOjppc0tub3duQXR0
cmlidXRlKGF0dHJOYW1lKQogICAgICAgICB8fCBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1
dGUoYXR0ck5hbWUpCkBAIC0xNDMsMTAgKzE0OCwxMiBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6
c3luY2hyb25pemVQcm9wZXJ0CiAgICAgICAgIHN5bmNocm9uaXplSHJlZigpOwogfQogCi1ib29s
IFNWR0ltYWdlRWxlbWVudDo6aGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdAorYm9vbCBTVkdJbWFn
ZUVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiAo
eCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgpLmlzUmVsYXRpdmUoKSB8fAotICAgICAgICAgICAg
eSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQoKS5pc1JlbGF0aXZlKCkpOworICAgIHJldHVybiB4
KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwg
d2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgaGVpZ2h0KCkuaXNSZWxhdGl2ZSgpOwog
fQogCiBSZW5kZXJPYmplY3QqIFNWR0ltYWdlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUmVuZGVy
QXJlbmEqIGFyZW5hLCBSZW5kZXJTdHlsZSopCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVs
ZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAkocmV2
aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAkod29ya2luZyBj
b3B5KQpAQCAtNTksOSArNTksOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICBwcm90ZWN0
ZWQ6CiAgICAgICAgIHZpcnR1YWwgYm9vbCBoYXZlTG9hZGVkUmVxdWlyZWRSZXNvdXJjZXMoKTsK
LSAgICAgICAgdmlydHVhbCBib29sIGhhc1JlbGF0aXZlVmFsdWVzKCkgY29uc3Q7CiAKICAgICBw
cml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNv
bnN0OwogICAgICAgICB2aXJ0dWFsIHZvaWQgd2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsK
IAogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0ltYWdlRWxlbWVudCwgU1ZH
TmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdMaW5l
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuY3Bw
CShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNzIsNiArNzIsMTQgQEAgdm9pZCBTVkdMaW5lRWxlbWVudDo6c3ZnQXR0
cmlidXRlQ2hhbmdlZAogewogICAgIFNWR1N0eWxlZFRyYW5zZm9ybWFibGVFbGVtZW50OjpzdmdB
dHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAorICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUg
PSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eDFBdHRyCisgICAgICAgICAgICAgICAgICAgICAgICAg
IHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5MUF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OngyQXR0cgorICAgICAgICAgICAgICAgICAgICAg
ICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eTJBdHRyOworCisgICAgaWYgKGlzTGVuZ3Ro
QXR0cmlidXRlKQorICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbigpOwor
CiAgICAgUmVuZGVyUGF0aCogcmVuZGVyZXIgPSBzdGF0aWNfY2FzdDxSZW5kZXJQYXRoKj4odGhp
cy0+cmVuZGVyZXIoKSk7CiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuOwpAQCAt
ODIsMTAgKzkwLDcgQEAgdm9pZCBTVkdMaW5lRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZAog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4
MUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnkxQXR0cgotICAgICAgICB8
fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eDJBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNW
R05hbWVzOjp5MkF0dHIpIHsKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpIHsKICAgICAgICAg
cmVuZGVyZXItPnNldE5lZWRzUGF0aFVwZGF0ZSgpOwogICAgICAgICByZW5kZXJlci0+c2V0TmVl
ZHNMYXlvdXQodHJ1ZSk7CiAgICAgICAgIHJldHVybjsKQEAgLTEyOCwxMCArMTMzLDEyIEBAIFBh
dGggU1ZHTGluZUVsZW1lbnQ6OnRvUGF0aERhdGEoKSBjb25zdAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEZsb2F0UG9pbnQoeDIoKS52YWx1ZSh0aGlzKSwgeTIoKS52YWx1ZSh0aGlzKSkp
OwogfQogCi1ib29sIFNWR0xpbmVFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0Citi
b29sIFNWR0xpbmVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKIHsKLSAg
ICByZXR1cm4gKHgxKCkuaXNSZWxhdGl2ZSgpIHx8IHkxKCkuaXNSZWxhdGl2ZSgpIHx8Ci0gICAg
ICAgICAgICB4MigpLmlzUmVsYXRpdmUoKSB8fCB5MigpLmlzUmVsYXRpdmUoKSk7CisgICAgcmV0
dXJuIHgxKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkxKCkuaXNSZWxhdGl2ZSgpCisgICAg
ICAgIHx8IHgyKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkyKCkuaXNSZWxhdGl2ZSgpOwog
fQogCiB9CkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29y
ZS9zdmcvU1ZHTGluZUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDksMTAgKzQ5LDkgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c01hcmtl
cnMoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAKLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZp
cnR1YWwgYm9vbCBoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0OwotCiAgICAgcHJpdmF0ZToKKyAg
ICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdDsKKwogICAg
ICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0xpbmVFbGVtZW50LCBTVkdOYW1lczo6
eDFBdHRyLCBTVkdMZW5ndGgsIFgxLCB4MSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdMaW5lRWxlbWVudCwgU1ZHTmFtZXM6OnkxQXR0ciwgU1ZHTGVuZ3RoLCBZMSwgeTEp
CiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTGluZUVsZW1lbnQsIFNWR05h
bWVzOjp4MkF0dHIsIFNWR0xlbmd0aCwgWDIsIHgyKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHTGlu
ZWFyR3JhZGllbnRFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdMaW5l
YXJHcmFkaWVudEVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NW
R0xpbmVhckdyYWRpZW50RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc0LDggKzc0LDEw
IEBAIHZvaWQgU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50OjpzdmdBdHRyaWIKICAgICBpZiAoYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OngxQXR0cgogICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1l
czo6eTFBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp4MkF0dHIKLSAgICAg
ICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnkyQXR0cikKKyAgICAgICAgfHwgYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OnkyQXR0cikgeworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZv
cm1hdGlvbigpOwogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CisgICAgfQog
fQogCiB2b2lkIFNWR0xpbmVhckdyYWRpZW50RWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShj
b25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKQEAgLTE3Niw2ICsxNzgsMTQgQEAgdm9pZCBT
VkdMaW5lYXJHcmFkaWVudEVsZW1lbnQ6OmNhbGN1bGF0ZQogICAgIH0KIH0KIAorYm9vbCBTVkdM
aW5lYXJHcmFkaWVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAorewor
ICAgIHJldHVybiB4MSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5MSgpLmlzUmVsYXRpdmUo
KQorICAgICAgICB8fCB4MigpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5MigpLmlzUmVsYXRp
dmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5kZXg6IFdlYkNvcmUvc3Zn
L1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NW
R0xpbmVhckdyYWRpZW50RWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3Zn
L1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCw4
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBjYWxjdWxhdGVTdGFydEVuZFBv
aW50cyhjb25zdCBMaW5lYXJHcmFkaWVudEF0dHJpYnV0ZXMmLCBGbG9hdFBvaW50JiBzdGFydFBv
aW50LCBGbG9hdFBvaW50JiBlbmRQb2ludCk7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0
dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xB
UkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LCBTVkdOYW1lczo6
eDFBdHRyLCBTVkdMZW5ndGgsIFgxLCB4MSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQsIFNWR05hbWVzOjp5MUF0dHIsIFNWR0xlbmd0
aCwgWTEsIHkxKQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0xpbmVhckdy
YWRpZW50RWxlbWVudCwgU1ZHTmFtZXM6OngyQXR0ciwgU1ZHTGVuZ3RoLCBYMiwgeDIpCkluZGV4
OiBXZWJDb3JlL3N2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3N2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2
Zy9TVkdNYXJrZXJFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA0LDEzICsxMDQsMjIg
QEAgdm9pZCBTVkdNYXJrZXJFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZwogewogICAgIFNWR1N0
eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCi0gICAgaWYgKGF0
dHJOYW1lID09IFNWR05hbWVzOjptYXJrZXJVbml0c0F0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6OnJlZlhBdHRyIHx8Ci0gICAgICAgIGF0dHJOYW1lID09IFNWR05hbWVzOjpyZWZZQXR0ciB8
fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6bWFya2VyV2lkdGhBdHRyIHx8Ci0gICAgICAgIGF0dHJO
YW1lID09IFNWR05hbWVzOjptYXJrZXJIZWlnaHRBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVz
OjpvcmllbnRBdHRyIHx8Ci0gICAgICAgIFNWR0xhbmdTcGFjZTo6aXNLbm93bkF0dHJpYnV0ZShh
dHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZDo6aXNLbm93
bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHRml0VG9WaWV3Qm94Ojppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKSkKKyAgICBib29sIGludmFsaWRhdGVDbGllbnRzID0gZmFsc2U7
CisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjpyZWZYQXR0cgorICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6cmVmWUF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6Om1hcmtlcldpZHRoQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6bWFy
a2VySGVpZ2h0QXR0cikgeworICAgICAgICBpbnZhbGlkYXRlQ2xpZW50cyA9IHRydWU7CisgICAg
ICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisgICAgfQorCisgICAgaWYg
KGludmFsaWRhdGVDbGllbnRzCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXJr
ZXJVbml0c0F0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6Om9yaWVudEF0dHIK
KyAgICAgICAgfHwgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAg
ICAgICB8fCBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkOjppc0tub3duQXR0cmlidXRlKGF0
dHJOYW1lKQorICAgICAgICB8fCBTVkdGaXRUb1ZpZXdCb3g6OmlzS25vd25BdHRyaWJ1dGUoYXR0
ck5hbWUpCisgICAgICAgIHx8IFNWR1N0eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0
ck5hbWUpKQogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CiB9CiAKQEAgLTE4
Miw2ICsxOTEsMTQgQEAgUmVuZGVyT2JqZWN0KiBTVkdNYXJrZXJFbGVtZW50OjpjcmVhdGVSZQog
ICAgIHJldHVybiBuZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZU1hcmtlcih0aGlzKTsKIH0K
IAorYm9vbCBTVkdNYXJrZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gcmVmWCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByZWZZKCkuaXNS
ZWxhdGl2ZSgpCisgICAgICAgIHx8IG1hcmtlcldpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAg
IHx8IG1hcmtlckhlaWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6
IFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2
Zy9TVkdNYXJrZXJFbGVtZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZH
TWFya2VyRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02OSw2ICs2OSw4IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBS
ZW5kZXJTdHlsZSopOwogCiBwcml2YXRlOgorICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRp
dmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR01h
cmtlckVsZW1lbnQsIFNWR05hbWVzOjpyZWZYQXR0ciwgU1ZHTGVuZ3RoLCBSZWZYLCByZWZYKQog
ICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTWFya2VyRWxlbWVudCwgU1ZHTmFtZXM6
OnJlZllBdHRyLCBTVkdMZW5ndGgsIFJlZlksIHJlZlkpCiAgICAgREVDTEFSRV9BTklNQVRFRF9Q
Uk9QRVJUWShTVkdNYXJrZXJFbGVtZW50LCBTVkdOYW1lczo6bWFya2VyV2lkdGhBdHRyLCBTVkdM
ZW5ndGgsIE1hcmtlcldpZHRoLCBtYXJrZXJXaWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR01h
c2tFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVudC5j
cHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC05NiwxNCArOTYsMjMgQEAgdm9pZCBTVkdNYXNrRWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZAogewogICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNo
YW5nZWQoYXR0ck5hbWUpOwogCi0gICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrVW5p
dHNBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrQ29udGVudFVuaXRzQXR0ciB8fAot
ICAgICAgICBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6OnlBdHRyIHx8Ci0gICAgICAgIGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIgfHwg
YXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIgfHwKLSAgICAgICAgU1ZHVVJJUmVmZXJl
bmNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdUZXN0czo6aXNL
bm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHTGFuZ1NwYWNlOjppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVp
cmVkOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdTdHlsZWRFbGVt
ZW50Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkKKyAgICBib29sIGludmFsaWRhdGVDbGll
bnRzID0gZmFsc2U7CisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgorICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eUF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OndpZHRoQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVp
Z2h0QXR0cikgeworICAgICAgICBpbnZhbGlkYXRlQ2xpZW50cyA9IHRydWU7CisgICAgICAgIHVw
ZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisgICAgfQorCisgICAgaWYgKGludmFs
aWRhdGVDbGllbnRzCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrVW5pdHNB
dHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrQ29udGVudFVuaXRzQXR0
cgorICAgICAgICB8fCBTVkdVUklSZWZlcmVuY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
CisgICAgICAgIHx8IFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAg
ICB8fCBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8
IFNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
CisgICAgICAgIHx8IFNWR1N0eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
KQogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CiB9CiAKQEAgLTE2NSw2ICsx
NzQsMTQgQEAgUmVuZGVyT2JqZWN0KiBTVkdNYXNrRWxlbWVudDo6Y3JlYXRlUmVuZAogICAgIHJl
dHVybiBuZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZU1hc2tlcih0aGlzKTsKIH0KIAorYm9v
bCBTVkdNYXNrRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAg
cmV0dXJuIHgoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgeSgpLmlzUmVsYXRpdmUoKQorICAg
ICAgICB8fCB3aWR0aCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCBoZWlnaHQoKS5pc1JlbGF0
aXZlKCk7Cit9CisKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShTVkcpCkluZGV4OiBXZWJDb3JlL3N2
Zy9TVkdNYXNrRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR01hc2tFbGVt
ZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuaAko
d29ya2luZyBjb3B5KQpAQCAtNTEsNiArNTEsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5kZXJlcihSZW5kZXJBcmVuYSosIFJl
bmRlclN0eWxlKik7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJvb2wgc2VsZkhh
c1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJP
UEVSVFkoU1ZHTWFza0VsZW1lbnQsIFNWR05hbWVzOjptYXNrVW5pdHNBdHRyLCBpbnQsIE1hc2tV
bml0cywgbWFza1VuaXRzKQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR01h
c2tFbGVtZW50LCBTVkdOYW1lczo6bWFza0NvbnRlbnRVbml0c0F0dHIsIGludCwgTWFza0NvbnRl
bnRVbml0cywgbWFza0NvbnRlbnRVbml0cykKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdNYXNrRWxlbWVudCwgU1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCklu
ZGV4OiBXZWJDb3JlL3N2Zy9TVkdQYXR0ZXJuRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9zdmcvU1ZHUGF0dGVybkVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNv
cmUvc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTIwLDEzICsx
MjAsMTkgQEAgdm9pZCBTVkdQYXR0ZXJuRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbgogewogICAg
IFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCi0gICAg
aWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjpwYXR0ZXJuVW5pdHNBdHRyCi0gICAgICAgIHx8IGF0
dHJOYW1lID09IFNWR05hbWVzOjpwYXR0ZXJuQ29udGVudFVuaXRzQXR0cgotICAgICAgICB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6cGF0dGVyblRyYW5zZm9ybUF0dHIKLSAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnhBdHRyCisgICAgYm9vbCBpbnZhbGlkYXRlQ2xpZW50cyA9IGZh
bHNlOworICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKICAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVz
Ojp3aWR0aEF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIK
KyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIpIHsKKyAgICAgICAg
aW52YWxpZGF0ZUNsaWVudHMgPSB0cnVlOworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJ
bmZvcm1hdGlvbigpOworICAgIH0KKworICAgIGlmIChpbnZhbGlkYXRlQ2xpZW50cworICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cGF0dGVyblVuaXRzQXR0cgorICAgICAgICB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6cGF0dGVybkNvbnRlbnRVbml0c0F0dHIKKyAgICAgICAgfHwg
YXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnBhdHRlcm5UcmFuc2Zvcm1BdHRyCiAgICAgICAgIHx8IFNW
R1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkKICAgICAgICAgfHwgU1ZH
VGVzdHM6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCiAgICAgICAgIHx8IFNWR0xhbmdTcGFj
ZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkKQEAgLTIzOSw2ICsyNDUsMTQgQEAgUGF0dGVy
bkF0dHJpYnV0ZXMgU1ZHUGF0dGVybkVsZW1lbnQ6OmNvbAogICAgIHJldHVybiBhdHRyaWJ1dGVz
OwogfQogCitib29sIFNWR1BhdHRlcm5FbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCkuaXNS
ZWxhdGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhl
aWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5k
ZXg6IFdlYkNvcmUvc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9zdmcvU1ZHUGF0dGVybkVsZW1lbnQuaAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2
Zy9TVkdQYXR0ZXJuRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC01OCw2ICs1OCw4IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgUGF0dGVybkF0dHJpYnV0ZXMgY29sbGVjdFBhdHRl
cm5Qcm9wZXJ0aWVzKCkgY29uc3Q7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJv
b2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xBUkVfQU5J
TUFURURfUFJPUEVSVFkoU1ZHUGF0dGVybkVsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVu
Z3RoLCBYLCB4KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1BhdHRlcm5F
bGVtZW50LCBTVkdOYW1lczo6eUF0dHIsIFNWR0xlbmd0aCwgWSwgeSkKICAgICAgICAgREVDTEFS
RV9BTklNQVRFRF9QUk9QRVJUWShTVkdQYXR0ZXJuRWxlbWVudCwgU1ZHTmFtZXM6OndpZHRoQXR0
ciwgU1ZHTGVuZ3RoLCBXaWR0aCwgd2lkdGgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdSYWRpYWxH
cmFkaWVudEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1JhZGlhbEdy
YWRpZW50RWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHUmFk
aWFsR3JhZGllbnRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtODEsOCArODEsMTAgQEAg
dm9pZCBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQ6OnN2Z0F0dHJpYgogICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6Y3lBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVz
OjpmeEF0dHIKICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmZ5QXR0cgotICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6ckF0dHIpCisgICAgICAgIHx8IGF0dHJOYW1lID09
IFNWR05hbWVzOjpyQXR0cikgeworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1h
dGlvbigpOwogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CisgICAgfQogfQog
CiB2b2lkIFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShjb25z
dCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKQEAgLTIxNCw2ICsyMTYsMTUgQEAgdm9pZCBTVkdS
YWRpYWxHcmFkaWVudEVsZW1lbnQ6OmNhbGN1bGF0ZQogICAgIH0KIH0KIAorYm9vbCBTVkdSYWRp
YWxHcmFkaWVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAoreworICAg
IHJldHVybiBjeSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCBjeSgpLmlzUmVsYXRpdmUoKQor
ICAgICAgICB8fCByKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGZ4KCkuaXNSZWxhdGl2ZSgp
CisgICAgICAgIHx8IGZ5KCkuaXNSZWxhdGl2ZSgpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFC
TEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgJKHJldmlz
aW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICB2b2lkIGNhbGN1bGF0ZUZvY2FsQ2VudGVyUG9pbnRzQW5kUmFkaXVzKGNvbnN0IFJhZGlhbEdy
YWRpZW50QXR0cmlidXRlcyYsIEZsb2F0UG9pbnQmIGZvY2FsUG9pbnQsIEZsb2F0UG9pbnQmIGNl
bnRlclBvaW50LCBmbG9hdCYgcmFkaXVzKTsKIAogICAgIHByaXZhdGU6CisgICAgICAgIHZpcnR1
YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVDTEFS
RV9BTklNQVRFRF9QUk9QRVJUWShTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQsIFNWR05hbWVzOjpj
eEF0dHIsIFNWR0xlbmd0aCwgQ3gsIGN4KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BF
UlRZKFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudCwgU1ZHTmFtZXM6OmN5QXR0ciwgU1ZHTGVuZ3Ro
LCBDeSwgY3kpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHUmFkaWFsR3Jh
ZGllbnRFbGVtZW50LCBTVkdOYW1lczo6ckF0dHIsIFNWR0xlbmd0aCwgUiwgcikKSW5kZXg6IFdl
YkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9T
VkdSZWN0RWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHUmVj
dEVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04NSw2ICs4NSwxNiBAQCB2b2lkIFNWR1Jl
Y3RFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3Jt
YWJsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBp
c0xlbmd0aEF0dHJpYnV0ZSA9IGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgorICAgICAgICAg
ICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eUF0dHIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0cgorICAg
ICAgICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0
cgorICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhB
dHRyCisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpy
eUF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0
aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRoKiByZW5kZXJlciA9IHN0
YXRpY19jYXN0PFJlbmRlclBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsKICAgICBpZiAoIXJlbmRl
cmVyKQogICAgICAgICByZXR1cm47CkBAIC05NSwxMiArMTA1LDcgQEAgdm9pZCBTVkdSZWN0RWxl
bWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAg
aWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBT
VkdOYW1lczo6eUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0
cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cgotICAgICAgICB8
fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNW
R05hbWVzOjpyeUF0dHIpIHsKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpIHsKICAgICAgICAg
cmVuZGVyZXItPnNldE5lZWRzUGF0aFVwZGF0ZSgpOwogICAgICAgICByZW5kZXJlci0+c2V0TmVl
ZHNMYXlvdXQodHJ1ZSk7CiAgICAgICAgIHJldHVybjsKQEAgLTE1OCwxMSArMTYzLDE0IEBAIFBh
dGggU1ZHUmVjdEVsZW1lbnQ6OnRvUGF0aERhdGEoKSBjb25zdAogICAgIHJldHVybiBQYXRoOjpj
cmVhdGVSZWN0YW5nbGUocmVjdCk7CiB9CiAKLWJvb2wgU1ZHUmVjdEVsZW1lbnQ6Omhhc1JlbGF0
aXZlVmFsdWVzKCkgY29uc3QKK2Jvb2wgU1ZHUmVjdEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxl
bmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiAoeCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgp
LmlzUmVsYXRpdmUoKSB8fAotICAgICAgICAgICAgeSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQo
KS5pc1JlbGF0aXZlKCkgfHwKLSAgICAgICAgICAgIHJ4KCkuaXNSZWxhdGl2ZSgpIHx8IHJ5KCku
aXNSZWxhdGl2ZSgpKTsKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5
KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAg
IHx8IGhlaWdodCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByeCgpLmlzUmVsYXRpdmUoKQor
ICAgICAgICB8fCByeSgpLmlzUmVsYXRpdmUoKTsKIH0KIAogfQpJbmRleDogV2ViQ29yZS9zdmcv
U1ZHUmVjdEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdSZWN0RWxlbWVu
dC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTQ1LDEwICs0NSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAg
ICAgICB2aXJ0dWFsIFBhdGggdG9QYXRoRGF0YSgpIGNvbnN0OwogCi0gICAgcHJvdGVjdGVkOgot
ICAgICAgICB2aXJ0dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKLQogICAgIHBy
aXZhdGU6CisgICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29u
c3Q7CisKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdSZWN0RWxlbWVudCwg
U1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFU
RURfUFJPUEVSVFkoU1ZHUmVjdEVsZW1lbnQsIFNWR05hbWVzOjp5QXR0ciwgU1ZHTGVuZ3RoLCBZ
LCB5KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1JlY3RFbGVtZW50LCBT
VkdOYW1lczo6d2lkdGhBdHRyLCBTVkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNv
cmUvc3ZnL1NWR1NWR0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1NW
R0VsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1NWR0VsZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTQsMjEgKzI5NCwzMiBAQCB2b2lkIFNWR1NWR0Vs
ZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoCiAgICAgLy8gVGh1cyB0aGUgQ1NTIGxlbmd0aCB2
YWx1ZSBmb3Igd2lkdGggaXMgbm90IHVwZGF0ZWQsIGFuZCB3aWR0aCgpIGNhbGNXaWR0aCgpCiAg
ICAgLy8gY2FsY3VsYXRpb25zIG9uIFJlbmRlclNWR1Jvb3Qgd2lsbCBiZSB3cm9uZy4KICAgICAv
LyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjUzODcKLSAgICBpZiAo
YXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0cikKKyAgICBib29sIHVwZGF0ZVJlbGF0aXZl
TGVuZ3RocyA9IGZhbHNlOworICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhBdHRy
KSB7CiAgICAgICAgIHVwZGF0ZUNTU0ZvckF0dHJpYnV0ZSh0aGlzLCBhdHRyTmFtZSwgQ1NTUHJv
cGVydHlXaWR0aCwgd2lkdGhCYXNlVmFsdWUoKSk7Ci0gICAgZWxzZSBpZiAoYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OmhlaWdodEF0dHIpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3RocyA9IHRy
dWU7CisgICAgfSBlbHNlIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cikgewog
ICAgICAgICB1cGRhdGVDU1NGb3JBdHRyaWJ1dGUodGhpcywgYXR0ck5hbWUsIENTU1Byb3BlcnR5
SGVpZ2h0LCBoZWlnaHRCYXNlVmFsdWUoKSk7CisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Ro
cyA9IHRydWU7CisgICAgfQorCisgICAgaWYgKHVwZGF0ZVJlbGF0aXZlTGVuZ3RocworICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnlBdHRyCisgICAgICAgIHx8IFNWR0ZpdFRvVmlld0JveDo6aXNLbm93bkF0dHJp
YnV0ZShhdHRyTmFtZSkpIHsKKyAgICAgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzID0gdHJ1ZTsK
KyAgICAgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKKyAgICB9CiAKICAg
ICBpZiAoIXJlbmRlcmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChhdHRyTmFtZSA9
PSBTVkdOYW1lczo6eEF0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyIHx8Ci0gICAg
ICAgIFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdM
YW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpIHx8Ci0gICAgICAgIFNWR0V4dGVy
bmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpIHx8Ci0gICAg
ICAgIFNWR0ZpdFRvVmlld0JveDo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAg
ICAgU1ZHWm9vbUFuZFBhbjo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAg
U1ZHU3R5bGVkTG9jYXRhYmxlRWxlbWVudDo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkpCisg
ICAgaWYgKHVwZGF0ZVJlbGF0aXZlTGVuZ3RocworICAgICAgICB8fCBTVkdUZXN0czo6aXNLbm93
bkF0dHJpYnV0ZShhdHRyTmFtZSkKKyAgICAgICAgfHwgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0
cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVk
Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdab29tQW5kUGFuOjpp
c0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdTdHlsZWRMb2NhdGFibGVF
bGVtZW50Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkKICAgICAgICAgcmVuZGVyZXIoKS0+
c2V0TmVlZHNMYXlvdXQodHJ1ZSk7CiB9CiAKQEAgLTUxMCwxMCArNTIxLDEzIEBAIHZvaWQgU1ZH
U1ZHRWxlbWVudDo6c2V0Q3VycmVudFRpbWUoZmxvYXQKICAgICAvLyBGSVhNRTogSW1wbGVtZW50
IG1lLCBidWcgMTIwNzMKIH0KIAotYm9vbCBTVkdTVkdFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVl
cygpIGNvbnN0Citib29sIFNWR1NWR0VsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBj
b25zdAogewotICAgIHJldHVybiAoeCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgpLmlzUmVsYXRp
dmUoKSB8fAotICAgICAgICAgICAgeSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQoKS5pc1JlbGF0
aXZlKCkpOworICAgIHJldHVybiB4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkoKS5pc1Jl
bGF0aXZlKCkKKyAgICAgICAgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgaGVp
Z2h0KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhhc0F0dHJpYnV0ZShTVkdOYW1lczo6dmll
d0JveEF0dHIpOwogfQogCiBib29sIFNWR1NWR0VsZW1lbnQ6OmlzT3V0ZXJtb3N0U1ZHKCkgY29u
c3QKQEAgLTU4MSw1ICs1OTUsMyBAQCB2b2lkIFNWR1NWR0VsZW1lbnQ6OmRvY3VtZW50RGlkQmVj
b21lQWN0CiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQotCi0vLyB2aW06dHM9NDpub2V0Cklu
ZGV4OiBXZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvU1ZHU1ZHRWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1NW
R0VsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMTI4LDkgKzEyOCwxMCBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIHZvaWQgaW5oZXJpdFZpZXdBdHRyaWJ1dGVzKFNWR1ZpZXdFbGVt
ZW50Kik7CiAKICAgICAgICAgYm9vbCBpc091dGVybW9zdFNWRygpIGNvbnN0OwotICAgICAgICB2
aXJ0dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKIAogICAgIHByaXZhdGU6Cisg
ICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAg
ICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6
eEF0dHIsIFNWR0xlbmd0aCwgWCwgeCkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJU
WShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6eUF0dHIsIFNWR0xlbmd0aCwgWSwgeSkKICAgICAg
ICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6d2lk
dGhBdHRyLCBTVkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1N0
eWxlZEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1l
bnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTUsNiArMjk1LDE4IEBAIHZvaWQgU1ZHU3R5bGVkRWxl
bWVudDo6aW52YWxpZGF0ZVJlc291cmMKICAgICAgICAgb2JqZWN0LT50b1JlbmRlclNWR1Jlc291
cmNlQ29udGFpbmVyKCktPmludmFsaWRhdGVDbGllbnRzKCk7CiB9CiAKK3ZvaWQgU1ZHU3R5bGVk
RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKQoreworICAgIFNWR0VsZW1lbnQ6Omluc2Vy
dGVkSW50b0RvY3VtZW50KCk7CisgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24o
KTsKK30KKwordm9pZCBTVkdTdHlsZWRFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50KCkKK3sK
KyAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbihmYWxzZSwgdGhpcyk7CisgICAg
U1ZHRWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpOworfQorCiB2b2lkIFNWR1N0eWxlZEVs
ZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3Jl
Q2hhbmdlLCBOb2RlKiBhZnRlckNoYW5nZSwgaW50IGNoaWxkQ291bnREZWx0YSkKIHsKICAgICBT
VkdFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoY2hhbmdlZEJ5UGFyc2VyLCBiZWZvcmVDaGFuZ2Us
IGFmdGVyQ2hhbmdlLCBjaGlsZENvdW50RGVsdGEpOwpAQCAtMzU0LDYgKzM2NiwxMSBAQCBBZmZp
bmVUcmFuc2Zvcm0gU1ZHU3R5bGVkRWxlbWVudDo6bG9jYWxDCiAgICAgcmV0dXJuIEFmZmluZVRy
YW5zZm9ybSgpOwogfQogCit2b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OnVwZGF0ZVJlbGF0aXZlTGVu
Z3Roc0luZm9ybWF0aW9uKGJvb2wsIFNWR1N0eWxlZEVsZW1lbnQqKQoreworCS8vIEZJWE1FOiBU
aGUgYWN0dWFsIGNvZGUgd2lsbCBsYW5kIGluIGEgZm9sbG93LXVwIHBhdGNoLgorfQorCiB9CiAK
ICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHU3R5bGVkRWxlbWVu
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQuaAkocmV2aXNp
b24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdTdHlsZWRFbGVtZW50LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJTVkdFbGVtZW50LmgiCiAjaW5jbHVkZSAi
U1ZHTG9jYXRhYmxlLmgiCiAjaW5jbHVkZSAiU1ZHU3R5bGFibGUuaCIKKyNpbmNsdWRlIDx3dGYv
SGFzaFNldC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTM5LDcgKzQwLDkgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIHRpdGxlKCkgY29uc3Q7
CiAKLSAgICAgICAgdmlydHVhbCBib29sIGhhc1JlbGF0aXZlVmFsdWVzKCkgY29uc3QgeyByZXR1
cm4gZmFsc2U7IH0KKyAgICAgICAgLy8gRklYTUU6IFRoZSBhY3R1YWwgY29kZSB3aWxsIGxhbmQg
aW4gYSBmb2xsb3ctdXAgcGF0Y2guCisgICAgICAgIGJvb2wgaGFzUmVsYXRpdmVMZW5ndGhzKCkg
Y29uc3QgeyByZXR1cm4gc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpOyB9CisKICAgICAgICAgdmly
dHVhbCBib29sIGlzU3R5bGVkKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogICAgICAgICB2aXJ0
dWFsIGJvb2wgc3VwcG9ydHNNYXJrZXJzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIApAQCAt
NTUsNiArNTgsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBz
dmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKTsKICAgICAgICAgdmlydHVh
bCB2b2lkIHN5bmNocm9uaXplUHJvcGVydHkoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCisgICAg
ICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVudCgpOworICAgICAgICB2aXJ0dWFs
IHZvaWQgcmVtb3ZlZEZyb21Eb2N1bWVudCgpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgY2hpbGRy
ZW5DaGFuZ2VkKGJvb2wgY2hhbmdlZEJ5UGFyc2VyID0gZmFsc2UsIE5vZGUqIGJlZm9yZUNoYW5n
ZSA9IDAsIE5vZGUqIGFmdGVyQ2hhbmdlID0gMCwgaW50IGNoaWxkQ291bnREZWx0YSA9IDApOwog
CiAgICAgICAgIC8vIENlbnRyYWxpemVkIHBsYWNlIHRvIGZvcmNlIGEgbWFudWFsIHN0eWxlIHJl
c29sdXRpb24uIEhhY2t5IGJ1dCBuZWVkZWQgZm9yIG5vdy4KQEAgLTcwLDYgKzc1LDEwIEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIHByb3RlY3RlZDogCiAgICAgICAgIHN0YXRpYyBpbnQg
Y3NzUHJvcGVydHlJZEZvclNWR0F0dHJpYnV0ZU5hbWUoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwor
ICAgICAgICB2b2lkIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCkgeyB1cGRhdGVS
ZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbihzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCksIHRoaXMp
OyB9CisgICAgICAgIHZvaWQgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oYm9vbCBo
YXNSZWxhdGl2ZUxlbmd0aHMsIFNWR1N0eWxlZEVsZW1lbnQqKTsKKworICAgICAgICB2aXJ0dWFs
IGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAK
ICAgICBwcml2YXRlOgogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1N0eWxl
ZEVsZW1lbnQsIEhUTUxOYW1lczo6Y2xhc3NBdHRyLCBTdHJpbmcsIENsYXNzTmFtZSwgY2xhc3NO
YW1lKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysg
V2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUxLDYg
KzUxLDE0IEBAIHZvaWQgU1ZHU3ltYm9sRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWIKICAgICBT
VkdTdHlsZWRFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShhdHRyKTsKIH0KIAordm9pZCBT
VkdTeW1ib2xFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUm
IGF0dHJOYW1lKQoreworICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQo
YXR0ck5hbWUpOworCisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp2aWV3Qm94QXR0cikK
KyAgICAgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKK30KKwogdm9pZCBT
VkdTeW1ib2xFbGVtZW50OjpzeW5jaHJvbml6ZVByb3BlcnR5KGNvbnN0IFF1YWxpZmllZE5hbWUm
IGF0dHJOYW1lKQogewogICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN5bmNocm9uaXplUHJvcGVydHko
YXR0ck5hbWUpOwpAQCAtNzYsNiArODQsMTEgQEAgdm9pZCBTVkdTeW1ib2xFbGVtZW50OjpzeW5j
aHJvbml6ZVByb3BlcgogICAgIH0gCiB9CiAKK2Jvb2wgU1ZHU3ltYm9sRWxlbWVudDo6c2VsZkhh
c1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAgcmV0dXJuIGhhc0F0dHJpYnV0ZShTVkdO
YW1lczo6dmlld0JveEF0dHIpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRl
eDogV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
c3ZnL1NWR1N5bWJvbEVsZW1lbnQuaAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9T
VkdTeW1ib2xFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM4LDEwICszOCwxMyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgflNWR1N5bWJvbEVsZW1lbnQoKTsKIAog
ICAgICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKik7Cisg
ICAgICAgIHZpcnR1YWwgdm9pZCBzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5h
bWUmKTsKICAgICAgICAgdmlydHVhbCB2b2lkIHN5bmNocm9uaXplUHJvcGVydHkoY29uc3QgUXVh
bGlmaWVkTmFtZSYpOwogICAgICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChSZW5k
ZXJTdHlsZSopIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0
dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIC8vIFNW
R0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdTeW1ib2xFbGVtZW50LCBTVkdOYW1lczo6ZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJl
ZEF0dHIsIGJvb2wsIEV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQsIGV4dGVybmFsUmVzb3VyY2Vz
UmVxdWlyZWQpCiAgCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5jcHAJKHJl
dmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHVGV4dENvbnRlbnRFbGVtZW50LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjE3LDYgKzIxNywxMSBAQCBib29sIFNWR1RleHRDb250ZW50RWxl
bWVudDo6aXNLbm93bkF0dHJpCiAgICAgICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKSk7CiB9CiAKK2Jvb2wgU1ZHVGV4dENvbnRlbnRFbGVtZW50Ojpz
ZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gdGV4dExlbmd0aCgp
LmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5kZXg6IFdl
YkNvcmUvc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
c3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUv
c3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02Myw2ICs2Myw5
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBib29sIGlzS25vd25BdHRyaWJ1dGUo
Y29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCisgICAgcHJvdGVjdGVkOgorICAgICAgICB2aXJ0dWFs
IGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgcHJpdmF0ZToKICAg
ICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0Q29udGVudEVsZW1lbnQsIFNW
R05hbWVzOjp0ZXh0TGVuZ3RoQXR0ciwgU1ZHTGVuZ3RoLCBUZXh0TGVuZ3RoLCB0ZXh0TGVuZ3Ro
KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRDb250ZW50RWxlbWVu
dCwgU1ZHTmFtZXM6Omxlbmd0aEFkanVzdEF0dHIsIGludCwgTGVuZ3RoQWRqdXN0LCBsZW5ndGhB
ZGp1c3QpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdUZXh0UGF0aEVsZW1lbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQYXRoRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcx
KQorKysgV2ViQ29yZS9zdmcvU1ZHVGV4dFBhdGhFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjksNiArNjksMjIgQEAgdm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0
cgogICAgIH0KIH0KIAordm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0ck5hbWUpCit7CisgICAgU1ZHVGV4dENvbnRlbnRF
bGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKKworICAgIGlmIChhdHRyTmFt
ZSA9PSBTVkdOYW1lczo6c3RhcnRPZmZzZXRBdHRyKQorICAgICAgICB1cGRhdGVSZWxhdGl2ZUxl
bmd0aHNJbmZvcm1hdGlvbigpOworCisgICAgaWYgKCFyZW5kZXJlcigpKQorICAgICAgICByZXR1
cm47CisKKyAgICBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnN0YXJ0T2Zmc2V0QXR0cgorICAg
ICAgICB8fCBTVkdUZXh0Q29udGVudEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
CisgICAgICAgIHx8IFNWR1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkp
CisgICAgICAgIHJlbmRlcmVyKCktPnNldE5lZWRzTGF5b3V0KHRydWUpOworfQorCiB2b2lkIFNW
R1RleHRQYXRoRWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShjb25zdCBRdWFsaWZpZWROYW1l
JiBhdHRyTmFtZSkKIHsKICAgICBTVkdUZXh0Q29udGVudEVsZW1lbnQ6OnN5bmNocm9uaXplUHJv
cGVydHkoYXR0ck5hbWUpOwpAQCAtMTEwLDcgKzEyNiw3IEBAIGJvb2wgU1ZHVGV4dFBhdGhFbGVt
ZW50OjpjaGlsZFNob3VsZENyZWEKIAogdm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6Omluc2VydGVk
SW50b0RvY3VtZW50KCkKIHsKLSAgICBTVkdFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgp
OworICAgIFNWR1RleHRDb250ZW50RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKTsKIAog
ICAgIFN0cmluZyBpZCA9IFNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KGhyZWYoKSk7CiAgICAg
RWxlbWVudCogdGFyZ2V0RWxlbWVudCA9IG93bmVyRG9jdW1lbnQoKS0+Z2V0RWxlbWVudEJ5SWQo
aWQpOwpAQCAtMTIwLDYgKzEzNiwxMiBAQCB2b2lkIFNWR1RleHRQYXRoRWxlbWVudDo6aW5zZXJ0
ZWRJbnRvRG9jCiAgICAgfQogfQogCitib29sIFNWR1RleHRQYXRoRWxlbWVudDo6c2VsZkhhc1Jl
bGF0aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAgcmV0dXJuIHN0YXJ0T2Zmc2V0KCkuaXNSZWxh
dGl2ZSgpCisgICAgICAgIHx8IFNWR1RleHRDb250ZW50RWxlbWVudDo6c2VsZkhhc1JlbGF0aXZl
TGVuZ3RocygpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2ViQ29y
ZS9zdmcvU1ZHVGV4dFBhdGhFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZH
VGV4dFBhdGhFbGVtZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHVGV4
dFBhdGhFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDEyICs1NywxNSBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVudCgp
OwogCiAgICAgICAgIHZpcnR1YWwgdm9pZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUq
KTsKKyAgICAgICAgdmlydHVhbCB2b2lkIHN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlm
aWVkTmFtZSYpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgc3luY2hyb25pemVQcm9wZXJ0eShjb25z
dCBRdWFsaWZpZWROYW1lJik7CiAgICAgICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVS
ZW5kZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7CiAKICAgICAgICAgYm9vbCBjaGls
ZFNob3VsZENyZWF0ZVJlbmRlcmVyKE5vZGUqKSBjb25zdDsKIAogICAgIHByaXZhdGU6CisgICAg
ICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAg
ICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0UGF0aEVsZW1lbnQsIFNWR05hbWVz
OjpzdGFydE9mZnNldEF0dHIsIFNWR0xlbmd0aCwgU3RhcnRPZmZzZXQsIHN0YXJ0T2Zmc2V0KQog
ICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRQYXRoRWxlbWVudCwgU1ZH
TmFtZXM6Om1ldGhvZEF0dHIsIGludCwgTWV0aG9kLCBtZXRob2QpCiAgICAgICAgIERFQ0xBUkVf
QU5JTUFURURfUFJPUEVSVFkoU1ZHVGV4dFBhdGhFbGVtZW50LCBTVkdOYW1lczo6c3BhY2luZ0F0
dHIsIGludCwgU3BhY2luZywgc3BhY2luZykKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1RleHRQb3Np
dGlvbmluZ0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQb3Np
dGlvbmluZ0VsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1Rl
eHRQb3NpdGlvbmluZ0VsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NSw2ICs2NSwxMiBA
QCB2b2lkIFNWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQ6OnN2Z0F0dHJpCiB7CiAgICAgU1ZHVGV4
dENvbnRlbnRFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAorICAgIGlm
IChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZH
TmFtZXM6OnlBdHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpkeEF0dHIKKyAg
ICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmR5QXR0cikKKyAgICAgICAgdXBkYXRlUmVs
YXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKKwogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAg
ICAgcmV0dXJuOwogCkBAIC0xMDcsNiArMTEzLDM5IEBAIGJvb2wgU1ZHVGV4dFBvc2l0aW9uaW5n
RWxlbWVudDo6aXNLbm93bkEKICAgICAgICAgICAgIFNWR1RleHRDb250ZW50RWxlbWVudDo6aXNL
bm93bkF0dHJpYnV0ZShhdHRyTmFtZSkpOwogfQogCitzdGF0aWMgaW5saW5lIGJvb2wgbGlzdENv
bnRhaW5zUmVsYXRpdmVWYWx1ZShTVkdMZW5ndGhMaXN0KiBsaXN0KQoreworICAgIGlmICghbGlz
dCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7Cisg
ICAgaW50IGxlbmd0aCA9IGxpc3QtPm51bWJlck9mSXRlbXMoKTsKKyAgICBmb3IgKGludCBpID0g
MDsgaSA8IGxlbmd0aDsgKytpKSB7CisgICAgICAgIFNWR0xlbmd0aCBsZW5ndGgobGlzdC0+Z2V0
SXRlbShpLCBlYykpOworICAgICAgICBBU1NFUlQoIWVjKTsKKworICAgICAgICBpZiAobGVuZ3Ro
LmlzUmVsYXRpdmUoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIHJl
dHVybiBmYWxzZTsKK30KKworYm9vbCBTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50OjpzZWxmSGFz
UmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICBpZiAoU1ZHVGV4dENvbnRlbnRFbGVtZW50
OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkpCisgICAgICAgIHJldHVybiB0cnVlOworICAgIGlm
IChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKHgoKSkpCisgICAgICAgIHJldHVybiB0cnVlOwor
ICAgIGlmIChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKHkoKSkpCisgICAgICAgIHJldHVybiB0
cnVlOworICAgIGlmIChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKGR4KCkpKQorICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKyAgICBpZiAobGlzdENvbnRhaW5zUmVsYXRpdmVWYWx1ZShkeSgpKSkKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIGZhbHNlOworfQorCiB9CiAKICNlbmRpZiAv
LyBFTkFCTEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVu
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQu
aAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdUZXh0UG9zaXRpb25pbmdFbGVt
ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogICAgICAgICBib29sIGlzS25vd25BdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwog
CiAgICAgcHJpdmF0ZToKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0
aHMoKSBjb25zdDsKKwogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRQ
b3NpdGlvbmluZ0VsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVuZ3RoTGlzdCosIFgsIHgp
CiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHVGV4dFBvc2l0aW9uaW5nRWxl
bWVudCwgU1ZHTmFtZXM6OnlBdHRyLCBTVkdMZW5ndGhMaXN0KiwgWSwgeSkKICAgICAgICAgREVD
TEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LCBTVkdOYW1l
czo6ZHhBdHRyLCBTVkdMZW5ndGhMaXN0KiwgRHgsIGR4KQpJbmRleDogV2ViQ29yZS9zdmcvU1ZH
VXNlRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5j
cHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIFNWR1VzZUVsZW1lbnQ6OnBhcnNl
TWFwcGVkQXR0cmlidXRlCiB2b2lkIFNWR1VzZUVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50
KCkKIHsKICAgICAvLyBUaGlzIGZ1bmN0aW9ucyBleGlzdHMgdG8gYXNzdXJlIGFzc3VtcHRpb25z
IG1hZGUgaW4gdGhlIGNvZGUgcmVnYXJkaW5nIFNWR0VsZW1lbnRJbnN0YW5jZSBjcmVhdGlvbi9k
ZXN0cnVjdGlvbiBhcmUgc2F0aXNmaWVkLgotICAgIFNWR0VsZW1lbnQ6Omluc2VydGVkSW50b0Rv
Y3VtZW50KCk7CisgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6Omluc2VydGVkSW50
b0RvY3VtZW50KCk7CiAgICAgQVNTRVJUKCFtX3RhcmdldEVsZW1lbnRJbnN0YW5jZSk7CiAgICAg
QVNTRVJUKCFtX2lzUGVuZGluZ1Jlc291cmNlKTsKIH0KQEAgLTEyOCwxMyArMTI4LDE5IEBAIHZv
aWQgU1ZHVXNlRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQKIHZvaWQgU1ZHVXNlRWxlbWVu
dDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpCiB7CiAgICAgbV90YXJnZXRFbGVtZW50SW5zdGFuY2Ug
PSAwOwotICAgIFNWR0VsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKTsKKyAgICBTVkdTdHls
ZWRUcmFuc2Zvcm1hYmxlRWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpOwogfQogCiB2b2lk
IFNWR1VzZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYg
YXR0ck5hbWUpCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OnN2Z0F0dHJp
YnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc1hZQXR0cmlidXRlID0gYXR0ck5h
bWUgPT0gU1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cjsKKyAg
ICBib29sIGlzV2lkdGhIZWlnaHRBdHRyaWJ1dGUgPSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lk
dGhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyOworCisgICAgaWYgKGlz
WFlBdHRyaWJ1dGUgfHwgaXNXaWR0aEhlaWdodEF0dHJpYnV0ZSkKKyAgICAgICAgdXBkYXRlUmVs
YXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKKwogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAg
ICAgcmV0dXJuOwogCkBAIC0xNDksMTIgKzE1NSwxMiBAQCB2b2lkIFNWR1VzZUVsZW1lbnQ6OnN2
Z0F0dHJpYnV0ZUNoYW5nZWQoCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cikg
eworICAgIGlmIChpc1hZQXR0cmlidXRlKSB7CiAgICAgICAgIHVwZGF0ZUNvbnRhaW5lck9mZnNl
dHMoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChhdHRyTmFtZSA9PSBTVkdO
YW1lczo6d2lkdGhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyKSB7Cisg
ICAgaWYgKGlzV2lkdGhIZWlnaHRBdHRyaWJ1dGUpIHsKICAgICAgICAgdXBkYXRlQ29udGFpbmVy
U2l6ZXMoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTU1Miw2ICs1NTgsOSBAQCB2b2lk
IFNWR1VzZUVsZW1lbnQ6OmJ1aWxkU2hhZG93QW5kSW5zdGFuCiAgICAgLy8gVXBkYXRlIGNvbnRh
aW5lciBvZmZzZXQvc2l6ZQogICAgIHVwZGF0ZUNvbnRhaW5lck9mZnNldHMoKTsKICAgICB1cGRh
dGVDb250YWluZXJTaXplcygpOworCisgICAgLy8gVXBkYXRlIHJlbGF0aXZlIGxlbmd0aCBpbmZv
cm1hdGlvbgorICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CiB9CiAKIFJl
bmRlck9iamVjdCogU1ZHVXNlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqIGFy
ZW5hLCBSZW5kZXJTdHlsZSopCkBAIC05NzksOSArOTg4LDIyIEBAIHZvaWQgU1ZHVXNlRWxlbWVu
dDo6dHJhbnNmZXJVc2VBdHRyaWJ1dGUKICAgICBBU1NFUlQoIWVjKTsKIH0KIAotYm9vbCBTVkdV
c2VFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0Citib29sIFNWR1VzZUVsZW1lbnQ6
OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiB4KCkuaXNSZWxh
dGl2ZSgpIHx8IHkoKS5pc1JlbGF0aXZlKCkgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkgfHwgaGVp
Z2h0KCkuaXNSZWxhdGl2ZSgpOworICAgIGlmICh4KCkuaXNSZWxhdGl2ZSgpCisgICAgIHx8IHko
KS5pc1JlbGF0aXZlKCkKKyAgICAgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgfHwgaGVp
Z2h0KCkuaXNSZWxhdGl2ZSgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIGlmICghbV90
YXJnZXRFbGVtZW50SW5zdGFuY2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIFNWR0Vs
ZW1lbnQqIGVsZW1lbnQgPSBtX3RhcmdldEVsZW1lbnRJbnN0YW5jZS0+Y29ycmVzcG9uZGluZ0Vs
ZW1lbnQoKTsKKyAgICBpZiAoIWVsZW1lbnQgfHwgIWVsZW1lbnQtPmlzU3R5bGVkKCkpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdTdHlsZWRFbGVt
ZW50Kj4oZWxlbWVudCktPmhhc1JlbGF0aXZlTGVuZ3RocygpOwogfQogCiB9CkluZGV4OiBXZWJD
b3JlL3N2Zy9TVkdVc2VFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHVXNl
RWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtNzQsNyArNzQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIHZvaWQgYnVpbGRTaGFkb3dBbmRJbnN0YW5jZVRyZWUoU1ZHU2hhZG93VHJlZVJvb3RF
bGVtZW50Kik7CiAKICAgICBwcml2YXRlOgotICAgICAgICB2aXJ0dWFsIGJvb2wgaGFzUmVsYXRp
dmVWYWx1ZXMoKSBjb25zdDsKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxl
bmd0aHMoKSBjb25zdDsKIAogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1Vz
ZUVsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVuZ3RoLCBYLCB4KQogICAgICAgICBERUNM
QVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1VzZUVsZW1lbnQsIFNWR05hbWVzOjp5QXR0ciwgU1ZH
TGVuZ3RoLCBZLCB5KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60444</attachid>
            <date>2010-07-03 01:41:28 -0700</date>
            <delta_ts>2010-07-05 07:23:27 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>FirstPatch.diff</filename>
            <type>text/plain</type>
            <size>54794</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MjQ0MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTEzIEBACisyMDEwLTA3LTAzICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVy
bWFubkByaW0uY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIExvZ2ljIHRvIHRyYWNrIHdoZXRoZXIgZWxlbWVudHMgYXJlIHVzaW5nIHJlbGF0aXZl
IGxlbmd0aHMgaXMgaW5jb21wbGV0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDE1NjYKKworICAgICAgICBBZGQgbG9naWMgdG8gYWxsIFNWRyBlbGVt
ZW50cyB3aGljaCBjcmVhdGUgcmVuZGVyZXMgdG8gZXhwb3NlIGEgbWV0aG9kCisgICAgICAgICJi
b29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSIsIHRoYXQgcmV0dXJucyB3aGV0aGVyIHRoZSBl
bGVtZW50IHVzZXMgcmVsYXRpdmUKKyAgICAgICAgbGVuZ3RocyAoZWcuIDxyZWN0IHg9IjUwJSIu
Li4pLiBUaGlzIHdpbGwgYmUgdXNlZCBzb29uIHRvIGF2b2lkIHJlbGF5b3V0cyBvZgorICAgICAg
ICBjb250YWluZXIgY2hpbGRyZW4sIHdoZW4gdGhlIGJvdW5kcyBoYXZlIG5vdCBjaGFuZ2VkLgor
CisgICAgICAgIEEgbmV3IG1ldGhvZCBTVkdTdHlsZWRFbGVtZW50Ojp1cGRhdGVSZWxhdGl2ZUxl
bmd0aHNJbmZvcm1hdGlvbigpIGlzIGFkZGVkLAorICAgICAgICB3aGljaCBpcyBjYWxsZWQgZnJv
bSB0aGUgdmFyaW91cyBzdmdBdHRyaWJ1dGVDaGFuZ2VkKCkgbWV0aG9kcyBhbmQgaW5zZXJ0ZWRJ
bnRvRG9jdW1lbnQvcmVtb3ZlZEZyb21Eb2N1bWVudC4KKyAgICAgICAgSXQgd2lsbCBiZSBpbXBs
ZW1lbnRlZCBpbiBhIGZvbGxvdy11cCBwYXRjaC4gVGhpcyBwYXRjaCBkb2VzIG5vdCBhZmZlY3Qg
YW55IHRlc3QgYmVoYXZpb3VyLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclBhdGguY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUGF0aDo6bGF5b3V0KTogUmVuYW1lIGhhc1JlbGF0
aXZlVmFsdWVzIHRvIGhhc1JlbGF0aXZlTGVuZ3Rocy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyU1ZHUm9vdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdSb290OjpsYXlvdXQp
OiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1Jvb3Q6OmNhbGNWaWV3cG9ydCk6
IERpdHRvLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lcjo6Y2FsY1Zp
ZXdwb3J0KTogRGl0dG8KKyAgICAgICAgKiByZW5kZXJpbmcvU1ZHUmVuZGVyU3VwcG9ydC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJlbik6IERp
dHRvLgorICAgICAgICAqIHN2Zy9TVkdDaXJjbGVFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNWR0NpcmNsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOiBDYWxsIHVwZGF0ZVJl
bGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCkgaWYgYW55IGF0dHJpYnV0ZSB3aGljaCBtYXkgY29u
dGFpbiByZWxhdGl2ZSBsZW5ndGhzIGNoYW5nZXMuCisgICAgICAgIChXZWJDb3JlOjpTVkdDaXJj
bGVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKTogRGl0dG8uIFNhbWUgZm9yIGFsbCBv
dGhlciBTVkcqRWxlbWVudHMgYmVsb3cuCisgICAgICAgICogc3ZnL1NWR0NpcmNsZUVsZW1lbnQu
aDoKKyAgICAgICAgKiBzdmcvU1ZHRWxsaXBzZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U1ZHRWxsaXBzZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6U1ZHRWxsaXBzZUVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAg
ICAqIHN2Zy9TVkdFbGxpcHNlRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdGaWx0ZXJFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZpbHRlckVsZW1lbnQ6OnN2Z0F0dHJpYnV0
ZUNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRmlsdGVyRWxlbWVudDo6c2VsZkhhc1Jl
bGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR0ZpbHRlckVsZW1lbnQuaDoKKyAgICAg
ICAgKiBzdmcvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAo
V2ViQ29yZTo6U1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMp
OgorICAgICAgICAqIHN2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oOgorICAgICAgICAqIHN2
Zy9TVkdJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHSW1hZ2VFbGVtZW50
OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ltYWdlRWxlbWVu
dDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR0ltYWdlRWxlbWVu
dC5oOgorICAgICAgICAqIHN2Zy9TVkdMaW5lRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdMaW5lRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdMaW5lRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3Zn
L1NWR0xpbmVFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0xpbmVhckdyYWRpZW50RWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQ6OnN2Z0F0
dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHTGluZWFyR3JhZGllbnRFbGVt
ZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcvU1ZHTGluZWFyR3Jh
ZGllbnRFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR01hcmtlckVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHTWFya2VyRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTVkdNYXJrZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhz
KToKKyAgICAgICAgKiBzdmcvU1ZHTWFya2VyRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdN
YXNrRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdNYXNrRWxlbWVudDo6c3ZnQXR0
cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdNYXNrRWxlbWVudDo6c2VsZkhh
c1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR01hc2tFbGVtZW50Lmg6CisgICAg
ICAgICogc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1Bh
dHRlcm5FbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNW
R1BhdHRlcm5FbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcv
U1ZHUGF0dGVybkVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1JhZGlhbEdyYWRpZW50RWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdSYWRpYWxHcmFkaWVudEVs
ZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAgICAqIHN2Zy9TVkdSYWRpYWxH
cmFkaWVudEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHUmVjdEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHUmVjdEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHUmVjdEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgor
ICAgICAgICAqIHN2Zy9TVkdSZWN0RWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdTVkdFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNo
YW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZHRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZl
TGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR1NWR0VsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcv
U1ZHU3R5bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50
OjppbnNlcnRlZEludG9Eb2N1bWVudCk6IENhbGwgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3Jt
YXRpb24oKS4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OnJlbW92ZWRGcm9t
RG9jdW1lbnQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OnVw
ZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKTogTm90IGltcGxlbWVudGVkIHNvIGZhci4g
V2lsbCBsYW5kIGluIGEgZm9sbG93LXVwIHBhdGNoLCB0b2dldGhlciB3aXRoIHRoZSByZW5kZXIg
dHJlZSBjaGFuZ2VzLgorICAgICAgICAqIHN2Zy9TVkdTdHlsZWRFbGVtZW50Lmg6CisgICAgICAg
IChXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50OjpoYXNSZWxhdGl2ZUxlbmd0aHMpOiBEZXZpcnR1
YWxpemVkLiBGb3Igbm93LCBqdXN0IGNhbGwgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIC0gdGhp
cyB3aWxsIGNoYW5nZSBpbiBhIGZvbGxvdy11cCBwYXRjaC4KKyAgICAgICAgKFdlYkNvcmU6OlNW
R1N0eWxlZEVsZW1lbnQ6OnVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOiBS
ZW5hbWVkIGZyb20gaGFzUmVsYXRpdmVWYWx1ZXMoKS4KKyAgICAgICAgKiBzdmcvU1ZHU3ltYm9s
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdTeW1ib2xFbGVtZW50OjpzdmdBdHRy
aWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1N5bWJvbEVsZW1lbnQ6OnNlbGZI
YXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAgICAqIHN2Zy9TVkdTeW1ib2xFbGVtZW50Lmg6Cisg
ICAgICAgICogc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdUZXh0Q29udGVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAg
ICAqIHN2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVGV4dFBh
dGhFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1RleHRQYXRoRWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdUZXh0UGF0aEVsZW1lbnQ6
Omluc2VydGVkSW50b0RvY3VtZW50KTogQ2FsbCByaWdodCBiYXNlIGNsYXNzJyBtZXRob2QuIFNr
aXBwZWQgb25lIGluIHRoZSBoaWVyYWNoeSBiZWZvcmUuCisgICAgICAgIChXZWJDb3JlOjpTVkdU
ZXh0UGF0aEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAgICAqIHN2Zy9T
VkdUZXh0UGF0aEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50Ojpz
dmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6Omxpc3RDb250YWluc1JlbGF0
aXZlVmFsdWUpOiBOZXcgaGVscGVyIGZ1bnRpb24gdGhhdCBjaGVja3Mgd2hldGVyIGEgU1ZHTGVu
Z3RoTGlzdCBjb250YWlucyByZWxhdGl2ZSBsZW5ndGhzLgorICAgICAgICAoV2ViQ29yZTo6U1ZH
VGV4dFBvc2l0aW9uaW5nRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAg
ICogc3ZnL1NWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVXNl
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50OjppbnNlcnRlZElu
dG9Eb2N1bWVudCk6IENhbGwgcmlnaHQgYmFzZSBjbGFzcycgbWV0aG9kLiBTa2lwcGVkIG9uIGlu
IHRoZSBoaWVyYWNoeSBiZWZvcmUuCisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50Ojpy
ZW1vdmVkRnJvbURvY3VtZW50KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVt
ZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1VzZUVsZW1l
bnQ6OmJ1aWxkU2hhZG93QW5kSW5zdGFuY2VUcmVlKTogQ2FsbCB1cGRhdGVSZWxhdGl2ZUxlbmd0
aHNJbmZvcm1hdGlvbigpIGFmdGVyIGJ1aWxkaW5nIHRoZSBzaGFkb3cgdHJlZS4KKyAgICAgICAg
KFdlYkNvcmU6OlNWR1VzZUVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOiBTYW1lIGFz
IGFsbCBvdGhlciBtZXRob2RzLCBleGNlcHQgdGhhdCBpdCBpbmNsdWRlcyB0aGUgc2hhZG93IHRy
ZWUgcm9vdCBlbGVtZW50LgorICAgICAgICAqIHN2Zy9TVkdVc2VFbGVtZW50Lmg6CisKIDIwMTAt
MDctMDMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBFcmljIFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCShyZXZpc2lv
biA2MjIzOCkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xMDQsNyArMTA0LDcgQEAgdm9pZCBSZW5kZXJQYXRoOjpsYXlvdXQoKQogICAgIC8v
IGFzIHRoZSB2aWV3cG9ydCBzaXplIG1heSBoYXZlIGNoYW5nZWQuIEl0IHdvdWxkIGJlIG5pY2Ug
dG8gb3B0aW1pemUgdGhpcyB0byBkZXRlY3QgdGhlc2UgY2hhbmdlcywgYW5kIG9ubHkKICAgICAv
LyB1cGRhdGUgd2hlbiBuZWVkZWQsIGV2ZW4gd2hlbiB1c2luZyByZWxhdGl2ZSB2YWx1ZXMuCiAg
ICAgYm9vbCBuZWVkc1BhdGhVcGRhdGUgPSBtX25lZWRzUGF0aFVwZGF0ZTsKLSAgICBpZiAoIW5l
ZWRzUGF0aFVwZGF0ZSAmJiBlbGVtZW50LT5oYXNSZWxhdGl2ZVZhbHVlcygpKQorICAgIGlmICgh
bmVlZHNQYXRoVXBkYXRlICYmIGVsZW1lbnQtPmhhc1JlbGF0aXZlTGVuZ3RocygpKQogICAgICAg
ICBuZWVkc1BhdGhVcGRhdGUgPSB0cnVlOwogCiAgICAgaWYgKG5lZWRzUGF0aFVwZGF0ZSkgewpJ
bmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAJKHJldmlzaW9uIDYyMjQ0KQorKysg
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEx
OSw3ICsxMTksNyBAQCB2b2lkIFJlbmRlclNWR1Jvb3Q6OmxheW91dCgpCiAgICAgLy8gUmVuZGVy
U1ZHUm9vdCBuZWVkcyB0byB0YWtlIHNwZWNpYWwgY2FyZSB0byBwcm9wYWdhdGUgd2luZG93IHNp
emUgY2hhbmdlcyB0byB0aGUgY2hpbGRyZW4sCiAgICAgLy8gaWYgdGhlIG91dGVybW9zdCA8c3Zn
PiBpcyB1c2luZyByZWxhdGl2ZSB4L3kvd2lkdGgvaGVpZ2h0IHZhbHVlcy4gSGVuY2UgdGhlIGFk
ZGl0b25hbCBwYXJhbWV0ZXJzLgogICAgIFNWR1NWR0VsZW1lbnQqIHN2ZyA9IHN0YXRpY19jYXN0
PFNWR1NWR0VsZW1lbnQqPihub2RlKCkpOwotICAgIFNWR1JlbmRlclN1cHBvcnQ6OmxheW91dENo
aWxkcmVuKHRoaXMsIG5lZWRzTGF5b3V0IHx8IChzdmctPmhhc1JlbGF0aXZlVmFsdWVzKCkgJiYg
b2xkU2l6ZSAhPSBzaXplKCkpKTsKKyAgICBTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJl
bih0aGlzLCBuZWVkc0xheW91dCB8fCAoc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSAmJiBvbGRT
aXplICE9IHNpemUoKSkpOwogICAgIHJlcGFpbnRlci5yZXBhaW50QWZ0ZXJMYXlvdXQoKTsKIAog
ICAgIHZpZXcoKS0+ZW5hYmxlTGF5b3V0U3RhdGUoKTsKQEAgLTE5Nyw3ICsxOTcsNyBAQCB2b2lk
IFJlbmRlclNWR1Jvb3Q6OmNhbGNWaWV3cG9ydCgpCiB7CiAgICAgU1ZHU1ZHRWxlbWVudCogc3Zn
ID0gc3RhdGljX2Nhc3Q8U1ZHU1ZHRWxlbWVudCo+KG5vZGUoKSk7CiAKLSAgICBpZiAoIXNlbGZO
ZWVkc0xheW91dCgpICYmICFzdmctPmhhc1JlbGF0aXZlVmFsdWVzKCkpCisgICAgaWYgKCFzZWxm
TmVlZHNMYXlvdXQoKSAmJiAhc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgaWYgKCFzdmctPmhhc1NldENvbnRhaW5lclNpemUoKSkgewpJbmRleDogV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHVmlld3BvcnRDb250YWluZXIuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmNwcAkocmV2
aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdWaWV3cG9ydENvbnRh
aW5lci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDcgKzQ5LDcgQEAgdm9pZCBSZW5kZXJTVkdW
aWV3cG9ydENvbnRhaW5lcjo6Y2FsY1ZpZQogICAgIGlmIChzdmdlbGVtLT5oYXNUYWdOYW1lKFNW
R05hbWVzOjpzdmdUYWcpKSB7CiAgICAgICAgIFNWR1NWR0VsZW1lbnQqIHN2ZyA9IHN0YXRpY19j
YXN0PFNWR1NWR0VsZW1lbnQqPihub2RlKCkpOwogCi0gICAgICAgIGlmICghc2VsZk5lZWRzTGF5
b3V0KCkgJiYgIXN2Zy0+aGFzUmVsYXRpdmVWYWx1ZXMoKSkKKyAgICAgICAgaWYgKCFzZWxmTmVl
ZHNMYXlvdXQoKSAmJiAhc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSkKICAgICAgICAgICAgIHJl
dHVybjsKIAogICAgICAgICBmbG9hdCB4ID0gc3ZnLT54KCkudmFsdWUoc3ZnKTsKSW5kZXg6IFdl
YkNvcmUvcmVuZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCShyZXZpc2lvbiA2MjI0NCkKKysrIFdl
YkNvcmUvcmVuZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NDYsNyArMjQ2LDcgQEAgdm9pZCBTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJlbihSZQog
ICAgICAgICBpZiAoIW5lZWRzTGF5b3V0KSB7CiAgICAgICAgICAgICBpZiAoU1ZHRWxlbWVudCog
ZWxlbWVudCA9IGNoaWxkLT5ub2RlKCktPmlzU1ZHRWxlbWVudCgpID8gc3RhdGljX2Nhc3Q8U1ZH
RWxlbWVudCo+KGNoaWxkLT5ub2RlKCkpIDogMCkgewogICAgICAgICAgICAgICAgIGlmIChlbGVt
ZW50LT5pc1N0eWxlZCgpKQotICAgICAgICAgICAgICAgICAgICBuZWVkc0xheW91dCA9IHN0YXRp
Y19jYXN0PFNWR1N0eWxlZEVsZW1lbnQqPihlbGVtZW50KS0+aGFzUmVsYXRpdmVWYWx1ZXMoKTsK
KyAgICAgICAgICAgICAgICAgICAgbmVlZHNMYXlvdXQgPSBzdGF0aWNfY2FzdDxTVkdTdHlsZWRF
bGVtZW50Kj4oZWxlbWVudCktPmhhc1JlbGF0aXZlTGVuZ3RocygpOwogICAgICAgICAgICAgfQog
ICAgICAgICB9CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3
MSkKKysrIFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC03MSw2ICs3MSwxMyBAQCB2b2lkIFNWR0NpcmNsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
CiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc0xlbmd0aEF0dHJpYnV0ZSA9IGF0dHJOYW1lID09
IFNWR05hbWVzOjpjeEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OmN5QXR0cgorICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFt
ZSA9PSBTVkdOYW1lczo6ckF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAg
ICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRo
KiByZW5kZXJlciA9IHN0YXRpY19jYXN0PFJlbmRlclBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsK
ICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1cm47CkBAIC04MSw5ICs4OCw3IEBAIHZv
aWQgU1ZHQ2lyY2xlRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmcKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6Y3hBdHRyCi0gICAgICAgIHx8
IGF0dHJOYW1lID09IFNWR05hbWVzOjpjeUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZH
TmFtZXM6OnJBdHRyKSB7CisgICAgaWYgKGlzTGVuZ3RoQXR0cmlidXRlKSB7CiAgICAgICAgIHJl
bmRlcmVyLT5zZXROZWVkc1BhdGhVcGRhdGUoKTsKICAgICAgICAgcmVuZGVyZXItPnNldE5lZWRz
TGF5b3V0KHRydWUpOwogICAgICAgICByZXR1cm47CkBAIC0xMjIsOSArMTI3LDExIEBAIFBhdGgg
U1ZHQ2lyY2xlRWxlbWVudDo6dG9QYXRoRGF0YSgpIGNvbnMKICAgICByZXR1cm4gUGF0aDo6Y3Jl
YXRlQ2lyY2xlKEZsb2F0UG9pbnQoY3goKS52YWx1ZSh0aGlzKSwgY3koKS52YWx1ZSh0aGlzKSks
IHIoKS52YWx1ZSh0aGlzKSk7CiB9CiAKLWJvb2wgU1ZHQ2lyY2xlRWxlbWVudDo6aGFzUmVsYXRp
dmVWYWx1ZXMoKSBjb25zdAorYm9vbCBTVkdDaXJjbGVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVM
ZW5ndGhzKCkgY29uc3QKIHsKLSAgICByZXR1cm4gKGN4KCkuaXNSZWxhdGl2ZSgpIHx8IGN5KCku
aXNSZWxhdGl2ZSgpIHx8IHIoKS5pc1JlbGF0aXZlKCkpOworICAgIHJldHVybiBjeCgpLmlzUmVs
YXRpdmUoKQorICAgICAgICB8fCBjeSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByKCkuaXNS
ZWxhdGl2ZSgpOwogfQogIAogfQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaAkocmV2aXNpb24g
NjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdDaXJjbGVFbGVtZW50LmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ1LDEwICs0NSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICB2aXJ0dWFs
IFBhdGggdG9QYXRoRGF0YSgpIGNvbnN0OwogCi0gICAgcHJvdGVjdGVkOgotICAgICAgICB2aXJ0
dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKLQogICAgIHByaXZhdGU6CisgICAg
ICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAg
ICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdDaXJjbGVFbGVtZW50LCBTVkdOYW1lczo6
Y3hBdHRyLCBTVkdMZW5ndGgsIEN4LCBjeCkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdDaXJjbGVFbGVtZW50LCBTVkdOYW1lczo6Y3lBdHRyLCBTVkdMZW5ndGgsIEN5LCBj
eSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdDaXJjbGVFbGVtZW50LCBT
VkdOYW1lczo6ckF0dHIsIFNWR0xlbmd0aCwgUiwgcikKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0Vs
bGlwc2VFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxl
bWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Niw2ICs3NiwxNCBAQCB2b2lkIFNWR0VsbGlwc2VF
bGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVs
ZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc0xlbmd0
aEF0dHJpYnV0ZSA9IGF0dHJOYW1lID09IFNWR05hbWVzOjpjeEF0dHIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmN5QXR0cgorICAgICAgICAgICAg
ICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhBdHRyCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyeUF0dHI7CisKKyAgICBp
ZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9y
bWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRoKiByZW5kZXJlciA9IHN0YXRpY19jYXN0PFJlbmRl
clBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICBy
ZXR1cm47CkBAIC04NiwxMCArOTQsNyBAQCB2b2lkIFNWR0VsbGlwc2VFbGVtZW50OjpzdmdBdHRy
aWJ1dGVDaGFuCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OmN4QXR0cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6Y3lBdHRy
Ci0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyeEF0dHIKLSAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnJ5QXR0cikgeworICAgIGlmIChpc0xlbmd0aEF0dHJpYnV0ZSkg
ewogICAgICAgICByZW5kZXJlci0+c2V0TmVlZHNQYXRoVXBkYXRlKCk7CiAgICAgICAgIHJlbmRl
cmVyLT5zZXROZWVkc0xheW91dCh0cnVlKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTMyLDEwICsx
MzcsMTIgQEAgUGF0aCBTVkdFbGxpcHNlRWxlbWVudDo6dG9QYXRoRGF0YSgpIGNvbgogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcngoKS52YWx1ZSh0aGlzKSwgcnko
KS52YWx1ZSh0aGlzKSk7CiB9CiAgCi1ib29sIFNWR0VsbGlwc2VFbGVtZW50OjpoYXNSZWxhdGl2
ZVZhbHVlcygpIGNvbnN0Citib29sIFNWR0VsbGlwc2VFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVM
ZW5ndGhzKCkgY29uc3QKIHsKLSAgICByZXR1cm4gKGN4KCkuaXNSZWxhdGl2ZSgpIHx8IGN5KCku
aXNSZWxhdGl2ZSgpIHx8Ci0gICAgICAgICAgICByeCgpLmlzUmVsYXRpdmUoKSB8fCByeSgpLmlz
UmVsYXRpdmUoKSk7CisgICAgcmV0dXJuIGN4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGN5
KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHJ4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8
IHJ5KCkuaXNSZWxhdGl2ZSgpOwogfQogCiB9CkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdFbGxpcHNl
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVtZW50LmgJ
KHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtNDUsMTAgKzQ1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAg
ICAgIHZpcnR1YWwgUGF0aCB0b1BhdGhEYXRhKCkgY29uc3Q7CiAKLSAgICBwcm90ZWN0ZWQ6Ci0g
ICAgICAgIHZpcnR1YWwgYm9vbCBoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0OwotCiAgICAgcHJp
dmF0ZToKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25z
dDsKKwogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0VsbGlwc2VFbGVtZW50
LCBTVkdOYW1lczo6Y3hBdHRyLCBTVkdMZW5ndGgsIEN4LCBjeCkKICAgICAgICAgREVDTEFSRV9B
TklNQVRFRF9QUk9QRVJUWShTVkdFbGxpcHNlRWxlbWVudCwgU1ZHTmFtZXM6OmN5QXR0ciwgU1ZH
TGVuZ3RoLCBDeSwgY3kpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRWxs
aXBzZUVsZW1lbnQsIFNWR05hbWVzOjpyeEF0dHIsIFNWR0xlbmd0aCwgUngsIHJ4KQpJbmRleDog
V2ViQ29yZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvU1ZHRmlsdGVyRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcv
U1ZHRmlsdGVyRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNSw2ICsxMDUsMzAgQEAg
dm9pZCBTVkdGaWx0ZXJFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYgogICAgIH0KIH0KIAordm9p
ZCBTVkdGaWx0ZXJFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5h
bWUmIGF0dHJOYW1lKQoreworICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoYXR0ck5hbWUpOworCisgICAgYm9vbCBpbnZhbGlkYXRlQ2xpZW50cyA9IGZhbHNlOworICAg
IGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnlBdHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0
dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIpIHsKKyAgICAg
ICAgaW52YWxpZGF0ZUNsaWVudHMgPSB0cnVlOworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0
aHNJbmZvcm1hdGlvbigpOworICAgIH0KKworICAgIGlmIChpbnZhbGlkYXRlQ2xpZW50cworICAg
ICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6ZmlsdGVyVW5pdHNBdHRyCisgICAgICAgIHx8
IGF0dHJOYW1lID09IFNWR05hbWVzOjpwcmltaXRpdmVVbml0c0F0dHIKKyAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OmZpbHRlclJlc0F0dHIKKyAgICAgICAgfHwgU1ZHVVJJUmVmZXJl
bmNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdMYW5nU3BhY2U6
OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8IFNWR0V4dGVybmFsUmVzb3Vy
Y2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8IFNWR1N0
eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQorICAgICAgICBpbnZhbGlk
YXRlUmVzb3VyY2VDbGllbnRzKCk7Cit9CisKIHZvaWQgU1ZHRmlsdGVyRWxlbWVudDo6c3luY2hy
b25pemVQcm9wZXJ0eShjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKIHsKICAgICBTVkdT
dHlsZWRFbGVtZW50OjpzeW5jaHJvbml6ZVByb3BlcnR5KGF0dHJOYW1lKTsKQEAgLTE2NSw2ICsx
ODksMTUgQEAgUmVuZGVyT2JqZWN0KiBTVkdGaWx0ZXJFbGVtZW50OjpjcmVhdGVSZQogewogICAg
IHJldHVybiBuZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlcih0aGlzKTsKIH0KKwor
Ym9vbCBTVkdGaWx0ZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sK
KyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCkuaXNSZWxhdGl2ZSgp
CisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhlaWdodCgpLmlz
UmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0ZpbHRl
ckVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJFbGVtZW50LmgJ
KHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00NywxMSArNDcsMTQgQEAgcHVibGljOgogICAgIEZsb2F0UmVjdCBmaWx0
ZXJCb3VuZGluZ0JveChjb25zdCBGbG9hdFJlY3QmKSBjb25zdDsKIAogICAgIHZpcnR1YWwgdm9p
ZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqKTsKKyAgICB2aXJ0dWFsIHZvaWQgc3Zn
QXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJik7CiAgICAgdmlydHVhbCB2b2lk
IHN5bmNocm9uaXplUHJvcGVydHkoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCiAgICAgdmlydHVh
bCBSZW5kZXJPYmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiwgUmVuZGVyU3R5bGUq
KTsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3Rocygp
IGNvbnN0OworCiAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdGaWx0ZXJFbGVtZW50
LCBTVkdOYW1lczo6ZmlsdGVyVW5pdHNBdHRyLCBpbnQsIEZpbHRlclVuaXRzLCBmaWx0ZXJVbml0
cykKICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0ZpbHRlckVsZW1lbnQsIFNWR05h
bWVzOjpwcmltaXRpdmVVbml0c0F0dHIsIGludCwgUHJpbWl0aXZlVW5pdHMsIHByaW1pdGl2ZVVu
aXRzKQogICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRmlsdGVyRWxlbWVudCwgU1ZH
TmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdGb3Jl
aWduT2JqZWN0RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHRm9yZWln
bk9iamVjdEVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR0Zv
cmVpZ25PYmplY3RFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzYsNiArNzYsMTQgQEAg
dm9pZCBTVkdGb3JlaWduT2JqZWN0RWxlbWVudDo6c3ZnQXR0cmlidQogewogICAgIFNWR1N0eWxl
ZFRyYW5zZm9ybWFibGVFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAor
ICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUgPSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRy
CisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0
aEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OmhlaWdodEF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0
ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJPYmplY3QqIHJlbmRl
cmVyID0gdGhpcy0+cmVuZGVyZXIoKTsKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1
cm47CkBAIC04NiwxMCArOTQsNyBAQCB2b2lkIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpzdmdB
dHRyaWJ1CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0ck5hbWUgPT0gU1ZH
TmFtZXM6OnhBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cgotICAg
ICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhBdHRyCi0gICAgICAgIHx8IGF0dHJO
YW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyCisgICAgaWYgKGlzTGVuZ3RoQXR0cmlidXRlCiAg
ICAgICAgIHx8IFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQogICAgICAgICB8
fCBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCiAgICAgICAgIHx8IFNW
R0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQpA
QCAtMTM5LDYgKzE0NCwxNCBAQCBib29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpjaGlsZFNo
b3VsCiAgICAgcmV0dXJuIFN0eWxlZEVsZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIo
Y2hpbGQpOwogfQogCitib29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpzZWxmSGFzUmVsYXRp
dmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAg
ICB8fCB5KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisg
ICAgICAgIHx8IGhlaWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6
IFdlYkNvcmUvc3ZnL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9zdmcvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuaAkocmV2aXNpb24gNjIxNzEpCisrKyBX
ZWJDb3JlL3N2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00
OCw2ICs0OCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCBSZW5kZXJP
YmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiBhcmVuYSwgUmVuZGVyU3R5bGUqIHN0
eWxlKTsKIAogICAgIHByaXZhdGU6CisgICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRp
dmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShT
VkdGb3JlaWduT2JqZWN0RWxlbWVudCwgU1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgp
CiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRm9yZWlnbk9iamVjdEVsZW1l
bnQsIFNWR05hbWVzOjp5QXR0ciwgU1ZHTGVuZ3RoLCBZLCB5KQogICAgICAgICBERUNMQVJFX0FO
SU1BVEVEX1BST1BFUlRZKFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50LCBTVkdOYW1lczo6d2lkdGhB
dHRyLCBTVkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0ltYWdl
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNw
cAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC05MSw2ICs5MSwxNCBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlCiAgICAgaWYgKFNWR1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0
ZShhdHRyTmFtZSkpCiAgICAgICAgIG1faW1hZ2VMb2FkZXIudXBkYXRlRnJvbUVsZW1lbnRJZ25v
cmluZ1ByZXZpb3VzRXJyb3IoKTsKIAorICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUgPSBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyCisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0
dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
fHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhB
dHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisK
ICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKTsKICAgICBpZiAo
IXJlbmRlcmVyKQogICAgICAgICByZXR1cm47CkBAIC0xMDEsMTAgKzEwOSw3IEBAIHZvaWQgU1ZH
SW1hZ2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2UKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAotICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKLSAgICAgICAgfHwgYXR0ck5h
bWUgPT0gU1ZHTmFtZXM6OnlBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3
aWR0aEF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIKKyAg
ICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUKICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OnByZXNlcnZlQXNwZWN0UmF0aW9BdHRyCiAgICAgICAgIHx8IFNWR1Rlc3RzOjppc0tub3duQXR0
cmlidXRlKGF0dHJOYW1lKQogICAgICAgICB8fCBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1
dGUoYXR0ck5hbWUpCkBAIC0xNDMsMTAgKzE0OCwxMiBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6
c3luY2hyb25pemVQcm9wZXJ0CiAgICAgICAgIHN5bmNocm9uaXplSHJlZigpOwogfQogCi1ib29s
IFNWR0ltYWdlRWxlbWVudDo6aGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdAorYm9vbCBTVkdJbWFn
ZUVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiAo
eCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgpLmlzUmVsYXRpdmUoKSB8fAotICAgICAgICAgICAg
eSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQoKS5pc1JlbGF0aXZlKCkpOworICAgIHJldHVybiB4
KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwg
d2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgaGVpZ2h0KCkuaXNSZWxhdGl2ZSgpOwog
fQogCiBSZW5kZXJPYmplY3QqIFNWR0ltYWdlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUmVuZGVy
QXJlbmEqIGFyZW5hLCBSZW5kZXJTdHlsZSopCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVs
ZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAkocmV2
aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAkod29ya2luZyBj
b3B5KQpAQCAtNTksOSArNTksOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICBwcm90ZWN0
ZWQ6CiAgICAgICAgIHZpcnR1YWwgYm9vbCBoYXZlTG9hZGVkUmVxdWlyZWRSZXNvdXJjZXMoKTsK
LSAgICAgICAgdmlydHVhbCBib29sIGhhc1JlbGF0aXZlVmFsdWVzKCkgY29uc3Q7CiAKICAgICBw
cml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNv
bnN0OwogICAgICAgICB2aXJ0dWFsIHZvaWQgd2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsK
IAogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0ltYWdlRWxlbWVudCwgU1ZH
TmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdMaW5l
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuY3Bw
CShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNzIsNiArNzIsMTQgQEAgdm9pZCBTVkdMaW5lRWxlbWVudDo6c3ZnQXR0
cmlidXRlQ2hhbmdlZAogewogICAgIFNWR1N0eWxlZFRyYW5zZm9ybWFibGVFbGVtZW50OjpzdmdB
dHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAorICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUg
PSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eDFBdHRyCisgICAgICAgICAgICAgICAgICAgICAgICAg
IHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5MUF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OngyQXR0cgorICAgICAgICAgICAgICAgICAgICAg
ICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eTJBdHRyOworCisgICAgaWYgKGlzTGVuZ3Ro
QXR0cmlidXRlKQorICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbigpOwor
CiAgICAgUmVuZGVyUGF0aCogcmVuZGVyZXIgPSBzdGF0aWNfY2FzdDxSZW5kZXJQYXRoKj4odGhp
cy0+cmVuZGVyZXIoKSk7CiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuOwpAQCAt
ODIsMTAgKzkwLDcgQEAgdm9pZCBTVkdMaW5lRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZAog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4
MUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnkxQXR0cgotICAgICAgICB8
fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eDJBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNW
R05hbWVzOjp5MkF0dHIpIHsKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpIHsKICAgICAgICAg
cmVuZGVyZXItPnNldE5lZWRzUGF0aFVwZGF0ZSgpOwogICAgICAgICByZW5kZXJlci0+c2V0TmVl
ZHNMYXlvdXQodHJ1ZSk7CiAgICAgICAgIHJldHVybjsKQEAgLTEyOCwxMCArMTMzLDEyIEBAIFBh
dGggU1ZHTGluZUVsZW1lbnQ6OnRvUGF0aERhdGEoKSBjb25zdAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEZsb2F0UG9pbnQoeDIoKS52YWx1ZSh0aGlzKSwgeTIoKS52YWx1ZSh0aGlzKSkp
OwogfQogCi1ib29sIFNWR0xpbmVFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0Citi
b29sIFNWR0xpbmVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKIHsKLSAg
ICByZXR1cm4gKHgxKCkuaXNSZWxhdGl2ZSgpIHx8IHkxKCkuaXNSZWxhdGl2ZSgpIHx8Ci0gICAg
ICAgICAgICB4MigpLmlzUmVsYXRpdmUoKSB8fCB5MigpLmlzUmVsYXRpdmUoKSk7CisgICAgcmV0
dXJuIHgxKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkxKCkuaXNSZWxhdGl2ZSgpCisgICAg
ICAgIHx8IHgyKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkyKCkuaXNSZWxhdGl2ZSgpOwog
fQogCiB9CkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29y
ZS9zdmcvU1ZHTGluZUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDksMTAgKzQ5LDkgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c01hcmtl
cnMoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAKLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZp
cnR1YWwgYm9vbCBoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0OwotCiAgICAgcHJpdmF0ZToKKyAg
ICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdDsKKwogICAg
ICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0xpbmVFbGVtZW50LCBTVkdOYW1lczo6
eDFBdHRyLCBTVkdMZW5ndGgsIFgxLCB4MSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdMaW5lRWxlbWVudCwgU1ZHTmFtZXM6OnkxQXR0ciwgU1ZHTGVuZ3RoLCBZMSwgeTEp
CiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTGluZUVsZW1lbnQsIFNWR05h
bWVzOjp4MkF0dHIsIFNWR0xlbmd0aCwgWDIsIHgyKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHTGlu
ZWFyR3JhZGllbnRFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdMaW5l
YXJHcmFkaWVudEVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NW
R0xpbmVhckdyYWRpZW50RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc0LDggKzc0LDEw
IEBAIHZvaWQgU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50OjpzdmdBdHRyaWIKICAgICBpZiAoYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OngxQXR0cgogICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1l
czo6eTFBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp4MkF0dHIKLSAgICAg
ICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnkyQXR0cikKKyAgICAgICAgfHwgYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OnkyQXR0cikgeworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZv
cm1hdGlvbigpOwogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CisgICAgfQog
fQogCiB2b2lkIFNWR0xpbmVhckdyYWRpZW50RWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShj
b25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKQEAgLTE3Niw2ICsxNzgsMTQgQEAgdm9pZCBT
VkdMaW5lYXJHcmFkaWVudEVsZW1lbnQ6OmNhbGN1bGF0ZQogICAgIH0KIH0KIAorYm9vbCBTVkdM
aW5lYXJHcmFkaWVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAorewor
ICAgIHJldHVybiB4MSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5MSgpLmlzUmVsYXRpdmUo
KQorICAgICAgICB8fCB4MigpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5MigpLmlzUmVsYXRp
dmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5kZXg6IFdlYkNvcmUvc3Zn
L1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NW
R0xpbmVhckdyYWRpZW50RWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3Zn
L1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCw4
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBjYWxjdWxhdGVTdGFydEVuZFBv
aW50cyhjb25zdCBMaW5lYXJHcmFkaWVudEF0dHJpYnV0ZXMmLCBGbG9hdFBvaW50JiBzdGFydFBv
aW50LCBGbG9hdFBvaW50JiBlbmRQb2ludCk7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0
dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xB
UkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LCBTVkdOYW1lczo6
eDFBdHRyLCBTVkdMZW5ndGgsIFgxLCB4MSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQsIFNWR05hbWVzOjp5MUF0dHIsIFNWR0xlbmd0
aCwgWTEsIHkxKQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0xpbmVhckdy
YWRpZW50RWxlbWVudCwgU1ZHTmFtZXM6OngyQXR0ciwgU1ZHTGVuZ3RoLCBYMiwgeDIpCkluZGV4
OiBXZWJDb3JlL3N2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3N2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2
Zy9TVkdNYXJrZXJFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA0LDEzICsxMDQsMjIg
QEAgdm9pZCBTVkdNYXJrZXJFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZwogewogICAgIFNWR1N0
eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCi0gICAgaWYgKGF0
dHJOYW1lID09IFNWR05hbWVzOjptYXJrZXJVbml0c0F0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6OnJlZlhBdHRyIHx8Ci0gICAgICAgIGF0dHJOYW1lID09IFNWR05hbWVzOjpyZWZZQXR0ciB8
fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6bWFya2VyV2lkdGhBdHRyIHx8Ci0gICAgICAgIGF0dHJO
YW1lID09IFNWR05hbWVzOjptYXJrZXJIZWlnaHRBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVz
OjpvcmllbnRBdHRyIHx8Ci0gICAgICAgIFNWR0xhbmdTcGFjZTo6aXNLbm93bkF0dHJpYnV0ZShh
dHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZDo6aXNLbm93
bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHRml0VG9WaWV3Qm94Ojppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKSkKKyAgICBib29sIGludmFsaWRhdGVDbGllbnRzID0gZmFsc2U7
CisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjpyZWZYQXR0cgorICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6cmVmWUF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6Om1hcmtlcldpZHRoQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6bWFy
a2VySGVpZ2h0QXR0cikgeworICAgICAgICBpbnZhbGlkYXRlQ2xpZW50cyA9IHRydWU7CisgICAg
ICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisgICAgfQorCisgICAgaWYg
KGludmFsaWRhdGVDbGllbnRzCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXJr
ZXJVbml0c0F0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6Om9yaWVudEF0dHIK
KyAgICAgICAgfHwgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAg
ICAgICB8fCBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkOjppc0tub3duQXR0cmlidXRlKGF0
dHJOYW1lKQorICAgICAgICB8fCBTVkdGaXRUb1ZpZXdCb3g6OmlzS25vd25BdHRyaWJ1dGUoYXR0
ck5hbWUpCisgICAgICAgIHx8IFNWR1N0eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0
ck5hbWUpKQogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CiB9CiAKQEAgLTE4
Miw2ICsxOTEsMTQgQEAgUmVuZGVyT2JqZWN0KiBTVkdNYXJrZXJFbGVtZW50OjpjcmVhdGVSZQog
ICAgIHJldHVybiBuZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZU1hcmtlcih0aGlzKTsKIH0K
IAorYm9vbCBTVkdNYXJrZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gcmVmWCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByZWZZKCkuaXNS
ZWxhdGl2ZSgpCisgICAgICAgIHx8IG1hcmtlcldpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAg
IHx8IG1hcmtlckhlaWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6
IFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2
Zy9TVkdNYXJrZXJFbGVtZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZH
TWFya2VyRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02OSw2ICs2OSw4IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBS
ZW5kZXJTdHlsZSopOwogCiBwcml2YXRlOgorICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRp
dmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR01h
cmtlckVsZW1lbnQsIFNWR05hbWVzOjpyZWZYQXR0ciwgU1ZHTGVuZ3RoLCBSZWZYLCByZWZYKQog
ICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTWFya2VyRWxlbWVudCwgU1ZHTmFtZXM6
OnJlZllBdHRyLCBTVkdMZW5ndGgsIFJlZlksIHJlZlkpCiAgICAgREVDTEFSRV9BTklNQVRFRF9Q
Uk9QRVJUWShTVkdNYXJrZXJFbGVtZW50LCBTVkdOYW1lczo6bWFya2VyV2lkdGhBdHRyLCBTVkdM
ZW5ndGgsIE1hcmtlcldpZHRoLCBtYXJrZXJXaWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR01h
c2tFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVudC5j
cHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC05NiwxNCArOTYsMjMgQEAgdm9pZCBTVkdNYXNrRWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZAogewogICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNo
YW5nZWQoYXR0ck5hbWUpOwogCi0gICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrVW5p
dHNBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrQ29udGVudFVuaXRzQXR0ciB8fAot
ICAgICAgICBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6OnlBdHRyIHx8Ci0gICAgICAgIGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIgfHwg
YXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIgfHwKLSAgICAgICAgU1ZHVVJJUmVmZXJl
bmNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdUZXN0czo6aXNL
bm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHTGFuZ1NwYWNlOjppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVp
cmVkOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdTdHlsZWRFbGVt
ZW50Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkKKyAgICBib29sIGludmFsaWRhdGVDbGll
bnRzID0gZmFsc2U7CisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgorICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eUF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OndpZHRoQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVp
Z2h0QXR0cikgeworICAgICAgICBpbnZhbGlkYXRlQ2xpZW50cyA9IHRydWU7CisgICAgICAgIHVw
ZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisgICAgfQorCisgICAgaWYgKGludmFs
aWRhdGVDbGllbnRzCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrVW5pdHNB
dHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrQ29udGVudFVuaXRzQXR0
cgorICAgICAgICB8fCBTVkdVUklSZWZlcmVuY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
CisgICAgICAgIHx8IFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAg
ICB8fCBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8
IFNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
CisgICAgICAgIHx8IFNWR1N0eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUp
KQogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CiB9CiAKQEAgLTE2NSw2ICsx
NzQsMTQgQEAgUmVuZGVyT2JqZWN0KiBTVkdNYXNrRWxlbWVudDo6Y3JlYXRlUmVuZAogICAgIHJl
dHVybiBuZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZU1hc2tlcih0aGlzKTsKIH0KIAorYm9v
bCBTVkdNYXNrRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAg
cmV0dXJuIHgoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgeSgpLmlzUmVsYXRpdmUoKQorICAg
ICAgICB8fCB3aWR0aCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCBoZWlnaHQoKS5pc1JlbGF0
aXZlKCk7Cit9CisKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShTVkcpCkluZGV4OiBXZWJDb3JlL3N2
Zy9TVkdNYXNrRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR01hc2tFbGVt
ZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuaAko
d29ya2luZyBjb3B5KQpAQCAtNTEsNiArNTEsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5kZXJlcihSZW5kZXJBcmVuYSosIFJl
bmRlclN0eWxlKik7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJvb2wgc2VsZkhh
c1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJP
UEVSVFkoU1ZHTWFza0VsZW1lbnQsIFNWR05hbWVzOjptYXNrVW5pdHNBdHRyLCBpbnQsIE1hc2tV
bml0cywgbWFza1VuaXRzKQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR01h
c2tFbGVtZW50LCBTVkdOYW1lczo6bWFza0NvbnRlbnRVbml0c0F0dHIsIGludCwgTWFza0NvbnRl
bnRVbml0cywgbWFza0NvbnRlbnRVbml0cykKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9Q
RVJUWShTVkdNYXNrRWxlbWVudCwgU1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCklu
ZGV4OiBXZWJDb3JlL3N2Zy9TVkdQYXR0ZXJuRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9zdmcvU1ZHUGF0dGVybkVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNv
cmUvc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTIwLDEzICsx
MjAsMTkgQEAgdm9pZCBTVkdQYXR0ZXJuRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbgogewogICAg
IFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCi0gICAg
aWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjpwYXR0ZXJuVW5pdHNBdHRyCi0gICAgICAgIHx8IGF0
dHJOYW1lID09IFNWR05hbWVzOjpwYXR0ZXJuQ29udGVudFVuaXRzQXR0cgotICAgICAgICB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6cGF0dGVyblRyYW5zZm9ybUF0dHIKLSAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnhBdHRyCisgICAgYm9vbCBpbnZhbGlkYXRlQ2xpZW50cyA9IGZh
bHNlOworICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKICAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVz
Ojp3aWR0aEF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIK
KyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIpIHsKKyAgICAgICAg
aW52YWxpZGF0ZUNsaWVudHMgPSB0cnVlOworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJ
bmZvcm1hdGlvbigpOworICAgIH0KKworICAgIGlmIChpbnZhbGlkYXRlQ2xpZW50cworICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cGF0dGVyblVuaXRzQXR0cgorICAgICAgICB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6cGF0dGVybkNvbnRlbnRVbml0c0F0dHIKKyAgICAgICAgfHwg
YXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnBhdHRlcm5UcmFuc2Zvcm1BdHRyCiAgICAgICAgIHx8IFNW
R1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkKICAgICAgICAgfHwgU1ZH
VGVzdHM6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCiAgICAgICAgIHx8IFNWR0xhbmdTcGFj
ZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkKQEAgLTIzOSw2ICsyNDUsMTQgQEAgUGF0dGVy
bkF0dHJpYnV0ZXMgU1ZHUGF0dGVybkVsZW1lbnQ6OmNvbAogICAgIHJldHVybiBhdHRyaWJ1dGVz
OwogfQogCitib29sIFNWR1BhdHRlcm5FbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCkuaXNS
ZWxhdGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhl
aWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5k
ZXg6IFdlYkNvcmUvc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9zdmcvU1ZHUGF0dGVybkVsZW1lbnQuaAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2
Zy9TVkdQYXR0ZXJuRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC01OCw2ICs1OCw4IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgUGF0dGVybkF0dHJpYnV0ZXMgY29sbGVjdFBhdHRl
cm5Qcm9wZXJ0aWVzKCkgY29uc3Q7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJv
b2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xBUkVfQU5J
TUFURURfUFJPUEVSVFkoU1ZHUGF0dGVybkVsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVu
Z3RoLCBYLCB4KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1BhdHRlcm5F
bGVtZW50LCBTVkdOYW1lczo6eUF0dHIsIFNWR0xlbmd0aCwgWSwgeSkKICAgICAgICAgREVDTEFS
RV9BTklNQVRFRF9QUk9QRVJUWShTVkdQYXR0ZXJuRWxlbWVudCwgU1ZHTmFtZXM6OndpZHRoQXR0
ciwgU1ZHTGVuZ3RoLCBXaWR0aCwgd2lkdGgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdSYWRpYWxH
cmFkaWVudEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1JhZGlhbEdy
YWRpZW50RWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHUmFk
aWFsR3JhZGllbnRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtODEsOCArODEsMTAgQEAg
dm9pZCBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQ6OnN2Z0F0dHJpYgogICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6Y3lBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVz
OjpmeEF0dHIKICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmZ5QXR0cgotICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6ckF0dHIpCisgICAgICAgIHx8IGF0dHJOYW1lID09
IFNWR05hbWVzOjpyQXR0cikgeworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1h
dGlvbigpOwogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CisgICAgfQogfQog
CiB2b2lkIFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShjb25z
dCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKQEAgLTIxNCw2ICsyMTYsMTUgQEAgdm9pZCBTVkdS
YWRpYWxHcmFkaWVudEVsZW1lbnQ6OmNhbGN1bGF0ZQogICAgIH0KIH0KIAorYm9vbCBTVkdSYWRp
YWxHcmFkaWVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAoreworICAg
IHJldHVybiBjeSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCBjeSgpLmlzUmVsYXRpdmUoKQor
ICAgICAgICB8fCByKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGZ4KCkuaXNSZWxhdGl2ZSgp
CisgICAgICAgIHx8IGZ5KCkuaXNSZWxhdGl2ZSgpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFC
TEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgJKHJldmlz
aW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICB2b2lkIGNhbGN1bGF0ZUZvY2FsQ2VudGVyUG9pbnRzQW5kUmFkaXVzKGNvbnN0IFJhZGlhbEdy
YWRpZW50QXR0cmlidXRlcyYsIEZsb2F0UG9pbnQmIGZvY2FsUG9pbnQsIEZsb2F0UG9pbnQmIGNl
bnRlclBvaW50LCBmbG9hdCYgcmFkaXVzKTsKIAogICAgIHByaXZhdGU6CisgICAgICAgIHZpcnR1
YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVDTEFS
RV9BTklNQVRFRF9QUk9QRVJUWShTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQsIFNWR05hbWVzOjpj
eEF0dHIsIFNWR0xlbmd0aCwgQ3gsIGN4KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BF
UlRZKFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudCwgU1ZHTmFtZXM6OmN5QXR0ciwgU1ZHTGVuZ3Ro
LCBDeSwgY3kpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHUmFkaWFsR3Jh
ZGllbnRFbGVtZW50LCBTVkdOYW1lczo6ckF0dHIsIFNWR0xlbmd0aCwgUiwgcikKSW5kZXg6IFdl
YkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9T
VkdSZWN0RWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHUmVj
dEVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04NSw2ICs4NSwxNiBAQCB2b2lkIFNWR1Jl
Y3RFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3Jt
YWJsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBp
c0xlbmd0aEF0dHJpYnV0ZSA9IGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgorICAgICAgICAg
ICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eUF0dHIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0cgorICAg
ICAgICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0
cgorICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhB
dHRyCisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpy
eUF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0
aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRoKiByZW5kZXJlciA9IHN0
YXRpY19jYXN0PFJlbmRlclBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsKICAgICBpZiAoIXJlbmRl
cmVyKQogICAgICAgICByZXR1cm47CkBAIC05NSwxMiArMTA1LDcgQEAgdm9pZCBTVkdSZWN0RWxl
bWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAg
aWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBT
VkdOYW1lczo6eUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0
cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cgotICAgICAgICB8
fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNW
R05hbWVzOjpyeUF0dHIpIHsKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpIHsKICAgICAgICAg
cmVuZGVyZXItPnNldE5lZWRzUGF0aFVwZGF0ZSgpOwogICAgICAgICByZW5kZXJlci0+c2V0TmVl
ZHNMYXlvdXQodHJ1ZSk7CiAgICAgICAgIHJldHVybjsKQEAgLTE1OCwxMSArMTYzLDE0IEBAIFBh
dGggU1ZHUmVjdEVsZW1lbnQ6OnRvUGF0aERhdGEoKSBjb25zdAogICAgIHJldHVybiBQYXRoOjpj
cmVhdGVSZWN0YW5nbGUocmVjdCk7CiB9CiAKLWJvb2wgU1ZHUmVjdEVsZW1lbnQ6Omhhc1JlbGF0
aXZlVmFsdWVzKCkgY29uc3QKK2Jvb2wgU1ZHUmVjdEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxl
bmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiAoeCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgp
LmlzUmVsYXRpdmUoKSB8fAotICAgICAgICAgICAgeSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQo
KS5pc1JlbGF0aXZlKCkgfHwKLSAgICAgICAgICAgIHJ4KCkuaXNSZWxhdGl2ZSgpIHx8IHJ5KCku
aXNSZWxhdGl2ZSgpKTsKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5
KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAg
IHx8IGhlaWdodCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByeCgpLmlzUmVsYXRpdmUoKQor
ICAgICAgICB8fCByeSgpLmlzUmVsYXRpdmUoKTsKIH0KIAogfQpJbmRleDogV2ViQ29yZS9zdmcv
U1ZHUmVjdEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdSZWN0RWxlbWVu
dC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTQ1LDEwICs0NSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAg
ICAgICB2aXJ0dWFsIFBhdGggdG9QYXRoRGF0YSgpIGNvbnN0OwogCi0gICAgcHJvdGVjdGVkOgot
ICAgICAgICB2aXJ0dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKLQogICAgIHBy
aXZhdGU6CisgICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29u
c3Q7CisKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdSZWN0RWxlbWVudCwg
U1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFU
RURfUFJPUEVSVFkoU1ZHUmVjdEVsZW1lbnQsIFNWR05hbWVzOjp5QXR0ciwgU1ZHTGVuZ3RoLCBZ
LCB5KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1JlY3RFbGVtZW50LCBT
VkdOYW1lczo6d2lkdGhBdHRyLCBTVkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNv
cmUvc3ZnL1NWR1NWR0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1NW
R0VsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1NWR0VsZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTQsMjEgKzI5NCwzMiBAQCB2b2lkIFNWR1NWR0Vs
ZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoCiAgICAgLy8gVGh1cyB0aGUgQ1NTIGxlbmd0aCB2
YWx1ZSBmb3Igd2lkdGggaXMgbm90IHVwZGF0ZWQsIGFuZCB3aWR0aCgpIGNhbGNXaWR0aCgpCiAg
ICAgLy8gY2FsY3VsYXRpb25zIG9uIFJlbmRlclNWR1Jvb3Qgd2lsbCBiZSB3cm9uZy4KICAgICAv
LyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjUzODcKLSAgICBpZiAo
YXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0cikKKyAgICBib29sIHVwZGF0ZVJlbGF0aXZl
TGVuZ3RocyA9IGZhbHNlOworICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhBdHRy
KSB7CiAgICAgICAgIHVwZGF0ZUNTU0ZvckF0dHJpYnV0ZSh0aGlzLCBhdHRyTmFtZSwgQ1NTUHJv
cGVydHlXaWR0aCwgd2lkdGhCYXNlVmFsdWUoKSk7Ci0gICAgZWxzZSBpZiAoYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OmhlaWdodEF0dHIpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3RocyA9IHRy
dWU7CisgICAgfSBlbHNlIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cikgewog
ICAgICAgICB1cGRhdGVDU1NGb3JBdHRyaWJ1dGUodGhpcywgYXR0ck5hbWUsIENTU1Byb3BlcnR5
SGVpZ2h0LCBoZWlnaHRCYXNlVmFsdWUoKSk7CisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Ro
cyA9IHRydWU7CisgICAgfQorCisgICAgaWYgKHVwZGF0ZVJlbGF0aXZlTGVuZ3RocworICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnlBdHRyCisgICAgICAgIHx8IFNWR0ZpdFRvVmlld0JveDo6aXNLbm93bkF0dHJp
YnV0ZShhdHRyTmFtZSkpIHsKKyAgICAgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzID0gdHJ1ZTsK
KyAgICAgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKKyAgICB9CiAKICAg
ICBpZiAoIXJlbmRlcmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChhdHRyTmFtZSA9
PSBTVkdOYW1lczo6eEF0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyIHx8Ci0gICAg
ICAgIFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdM
YW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpIHx8Ci0gICAgICAgIFNWR0V4dGVy
bmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpIHx8Ci0gICAg
ICAgIFNWR0ZpdFRvVmlld0JveDo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAg
ICAgU1ZHWm9vbUFuZFBhbjo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAg
U1ZHU3R5bGVkTG9jYXRhYmxlRWxlbWVudDo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkpCisg
ICAgaWYgKHVwZGF0ZVJlbGF0aXZlTGVuZ3RocworICAgICAgICB8fCBTVkdUZXN0czo6aXNLbm93
bkF0dHJpYnV0ZShhdHRyTmFtZSkKKyAgICAgICAgfHwgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0
cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVk
Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdab29tQW5kUGFuOjpp
c0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdTdHlsZWRMb2NhdGFibGVF
bGVtZW50Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkKICAgICAgICAgcmVuZGVyZXIoKS0+
c2V0TmVlZHNMYXlvdXQodHJ1ZSk7CiB9CiAKQEAgLTUxMCwxMCArNTIxLDEzIEBAIHZvaWQgU1ZH
U1ZHRWxlbWVudDo6c2V0Q3VycmVudFRpbWUoZmxvYXQKICAgICAvLyBGSVhNRTogSW1wbGVtZW50
IG1lLCBidWcgMTIwNzMKIH0KIAotYm9vbCBTVkdTVkdFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVl
cygpIGNvbnN0Citib29sIFNWR1NWR0VsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBj
b25zdAogewotICAgIHJldHVybiAoeCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgpLmlzUmVsYXRp
dmUoKSB8fAotICAgICAgICAgICAgeSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQoKS5pc1JlbGF0
aXZlKCkpOworICAgIHJldHVybiB4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkoKS5pc1Jl
bGF0aXZlKCkKKyAgICAgICAgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgaGVp
Z2h0KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhhc0F0dHJpYnV0ZShTVkdOYW1lczo6dmll
d0JveEF0dHIpOwogfQogCiBib29sIFNWR1NWR0VsZW1lbnQ6OmlzT3V0ZXJtb3N0U1ZHKCkgY29u
c3QKQEAgLTU4MSw1ICs1OTUsMyBAQCB2b2lkIFNWR1NWR0VsZW1lbnQ6OmRvY3VtZW50RGlkQmVj
b21lQWN0CiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQotCi0vLyB2aW06dHM9NDpub2V0Cklu
ZGV4OiBXZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvU1ZHU1ZHRWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1NW
R0VsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMTI4LDkgKzEyOCwxMCBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIHZvaWQgaW5oZXJpdFZpZXdBdHRyaWJ1dGVzKFNWR1ZpZXdFbGVt
ZW50Kik7CiAKICAgICAgICAgYm9vbCBpc091dGVybW9zdFNWRygpIGNvbnN0OwotICAgICAgICB2
aXJ0dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKIAogICAgIHByaXZhdGU6Cisg
ICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAg
ICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6
eEF0dHIsIFNWR0xlbmd0aCwgWCwgeCkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJU
WShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6eUF0dHIsIFNWR0xlbmd0aCwgWSwgeSkKICAgICAg
ICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6d2lk
dGhBdHRyLCBTVkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1N0
eWxlZEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1l
bnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOTUsNiArMjk1LDE4IEBAIHZvaWQgU1ZHU3R5bGVkRWxl
bWVudDo6aW52YWxpZGF0ZVJlc291cmMKICAgICAgICAgb2JqZWN0LT50b1JlbmRlclNWR1Jlc291
cmNlQ29udGFpbmVyKCktPmludmFsaWRhdGVDbGllbnRzKCk7CiB9CiAKK3ZvaWQgU1ZHU3R5bGVk
RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKQoreworICAgIFNWR0VsZW1lbnQ6Omluc2Vy
dGVkSW50b0RvY3VtZW50KCk7CisgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24o
KTsKK30KKwordm9pZCBTVkdTdHlsZWRFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50KCkKK3sK
KyAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbihmYWxzZSwgdGhpcyk7CisgICAg
U1ZHRWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpOworfQorCiB2b2lkIFNWR1N0eWxlZEVs
ZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3Jl
Q2hhbmdlLCBOb2RlKiBhZnRlckNoYW5nZSwgaW50IGNoaWxkQ291bnREZWx0YSkKIHsKICAgICBT
VkdFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoY2hhbmdlZEJ5UGFyc2VyLCBiZWZvcmVDaGFuZ2Us
IGFmdGVyQ2hhbmdlLCBjaGlsZENvdW50RGVsdGEpOwpAQCAtMzU0LDYgKzM2NiwxMSBAQCBBZmZp
bmVUcmFuc2Zvcm0gU1ZHU3R5bGVkRWxlbWVudDo6bG9jYWxDCiAgICAgcmV0dXJuIEFmZmluZVRy
YW5zZm9ybSgpOwogfQogCit2b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OnVwZGF0ZVJlbGF0aXZlTGVu
Z3Roc0luZm9ybWF0aW9uKGJvb2wsIFNWR1N0eWxlZEVsZW1lbnQqKQoreworICAgIC8vIEZJWE1F
OiBUaGUgYWN0dWFsIGNvZGUgd2lsbCBsYW5kIGluIGEgZm9sbG93LXVwIHBhdGNoLgorfQorCiB9
CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHU3R5bGVkRWxl
bWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQuaAkocmV2
aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdTdHlsZWRFbGVtZW50LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJTVkdFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiU1ZHTG9jYXRhYmxlLmgiCiAjaW5jbHVkZSAiU1ZHU3R5bGFibGUuaCIKKyNpbmNsdWRlIDx3
dGYvSGFzaFNldC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTM5LDcgKzQwLDkgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIHRpdGxlKCkgY29u
c3Q7CiAKLSAgICAgICAgdmlydHVhbCBib29sIGhhc1JlbGF0aXZlVmFsdWVzKCkgY29uc3QgeyBy
ZXR1cm4gZmFsc2U7IH0KKyAgICAgICAgLy8gRklYTUU6IFRoZSBhY3R1YWwgY29kZSB3aWxsIGxh
bmQgaW4gYSBmb2xsb3ctdXAgcGF0Y2guCisgICAgICAgIGJvb2wgaGFzUmVsYXRpdmVMZW5ndGhz
KCkgY29uc3QgeyByZXR1cm4gc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpOyB9CisKICAgICAgICAg
dmlydHVhbCBib29sIGlzU3R5bGVkKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogICAgICAgICB2
aXJ0dWFsIGJvb2wgc3VwcG9ydHNNYXJrZXJzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIApA
QCAtNTUsNiArNTgsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9p
ZCBzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKTsKICAgICAgICAgdmly
dHVhbCB2b2lkIHN5bmNocm9uaXplUHJvcGVydHkoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCisg
ICAgICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVudCgpOworICAgICAgICB2aXJ0
dWFsIHZvaWQgcmVtb3ZlZEZyb21Eb2N1bWVudCgpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgY2hp
bGRyZW5DaGFuZ2VkKGJvb2wgY2hhbmdlZEJ5UGFyc2VyID0gZmFsc2UsIE5vZGUqIGJlZm9yZUNo
YW5nZSA9IDAsIE5vZGUqIGFmdGVyQ2hhbmdlID0gMCwgaW50IGNoaWxkQ291bnREZWx0YSA9IDAp
OwogCiAgICAgICAgIC8vIENlbnRyYWxpemVkIHBsYWNlIHRvIGZvcmNlIGEgbWFudWFsIHN0eWxl
IHJlc29sdXRpb24uIEhhY2t5IGJ1dCBuZWVkZWQgZm9yIG5vdy4KQEAgLTcwLDYgKzc1LDEwIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIHByb3RlY3RlZDogCiAgICAgICAgIHN0YXRpYyBp
bnQgY3NzUHJvcGVydHlJZEZvclNWR0F0dHJpYnV0ZU5hbWUoY29uc3QgUXVhbGlmaWVkTmFtZSYp
OworICAgICAgICB2b2lkIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCkgeyB1cGRh
dGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbihzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCksIHRo
aXMpOyB9CisgICAgICAgIHZvaWQgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oYm9v
bCBoYXNSZWxhdGl2ZUxlbmd0aHMsIFNWR1N0eWxlZEVsZW1lbnQqKTsKKworICAgICAgICB2aXJ0
dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9
CiAKICAgICBwcml2YXRlOgogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1N0
eWxlZEVsZW1lbnQsIEhUTUxOYW1lczo6Y2xhc3NBdHRyLCBTdHJpbmcsIENsYXNzTmFtZSwgY2xh
c3NOYW1lKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyMTcxKQor
KysgV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUx
LDYgKzUxLDE0IEBAIHZvaWQgU1ZHU3ltYm9sRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWIKICAg
ICBTVkdTdHlsZWRFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShhdHRyKTsKIH0KIAordm9p
ZCBTVkdTeW1ib2xFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5h
bWUmIGF0dHJOYW1lKQoreworICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoYXR0ck5hbWUpOworCisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp2aWV3Qm94QXR0
cikKKyAgICAgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKK30KKwogdm9p
ZCBTVkdTeW1ib2xFbGVtZW50OjpzeW5jaHJvbml6ZVByb3BlcnR5KGNvbnN0IFF1YWxpZmllZE5h
bWUmIGF0dHJOYW1lKQogewogICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN5bmNocm9uaXplUHJvcGVy
dHkoYXR0ck5hbWUpOwpAQCAtNzYsNiArODQsMTEgQEAgdm9pZCBTVkdTeW1ib2xFbGVtZW50Ojpz
eW5jaHJvbml6ZVByb3BlcgogICAgIH0gCiB9CiAKK2Jvb2wgU1ZHU3ltYm9sRWxlbWVudDo6c2Vs
Zkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAgcmV0dXJuIGhhc0F0dHJpYnV0ZShT
VkdOYW1lczo6dmlld0JveEF0dHIpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJ
bmRleDogV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvc3ZnL1NWR1N5bWJvbEVsZW1lbnQuaAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2
Zy9TVkdTeW1ib2xFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM4LDEwICszOCwxMyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgflNWR1N5bWJvbEVsZW1lbnQoKTsK
IAogICAgICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKik7
CisgICAgICAgIHZpcnR1YWwgdm9pZCBzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmll
ZE5hbWUmKTsKICAgICAgICAgdmlydHVhbCB2b2lkIHN5bmNocm9uaXplUHJvcGVydHkoY29uc3Qg
UXVhbGlmaWVkTmFtZSYpOwogICAgICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChS
ZW5kZXJTdHlsZSopIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICBwcml2YXRlOgorICAgICAgICB2
aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIC8v
IFNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9Q
Uk9QRVJUWShTVkdTeW1ib2xFbGVtZW50LCBTVkdOYW1lczo6ZXh0ZXJuYWxSZXNvdXJjZXNSZXF1
aXJlZEF0dHIsIGJvb2wsIEV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQsIGV4dGVybmFsUmVzb3Vy
Y2VzUmVxdWlyZWQpCiAgCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5jcHAJ
KHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHVGV4dENvbnRlbnRFbGVtZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjE3LDYgKzIxNywxMSBAQCBib29sIFNWR1RleHRDb250ZW50
RWxlbWVudDo6aXNLbm93bkF0dHJpCiAgICAgICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tu
b3duQXR0cmlidXRlKGF0dHJOYW1lKSk7CiB9CiAKK2Jvb2wgU1ZHVGV4dENvbnRlbnRFbGVtZW50
OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gdGV4dExlbmd0
aCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5kZXg6
IFdlYkNvcmUvc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNv
cmUvc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02Myw2ICs2
Myw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBib29sIGlzS25vd25BdHRyaWJ1
dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCisgICAgcHJvdGVjdGVkOgorICAgICAgICB2aXJ0
dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgcHJpdmF0ZToK
ICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0Q29udGVudEVsZW1lbnQs
IFNWR05hbWVzOjp0ZXh0TGVuZ3RoQXR0ciwgU1ZHTGVuZ3RoLCBUZXh0TGVuZ3RoLCB0ZXh0TGVu
Z3RoKQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRDb250ZW50RWxl
bWVudCwgU1ZHTmFtZXM6Omxlbmd0aEFkanVzdEF0dHIsIGludCwgTGVuZ3RoQWRqdXN0LCBsZW5n
dGhBZGp1c3QpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdUZXh0UGF0aEVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQYXRoRWxlbWVudC5jcHAJKHJldmlzaW9uIDYy
MTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHVGV4dFBhdGhFbGVtZW50LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNjksNiArNjksMjIgQEAgdm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6OnBhcnNlTWFwcGVk
QXR0cgogICAgIH0KIH0KIAordm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNo
YW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0ck5hbWUpCit7CisgICAgU1ZHVGV4dENvbnRl
bnRFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKKworICAgIGlmIChhdHRy
TmFtZSA9PSBTVkdOYW1lczo6c3RhcnRPZmZzZXRBdHRyKQorICAgICAgICB1cGRhdGVSZWxhdGl2
ZUxlbmd0aHNJbmZvcm1hdGlvbigpOworCisgICAgaWYgKCFyZW5kZXJlcigpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnN0YXJ0T2Zmc2V0QXR0cgor
ICAgICAgICB8fCBTVkdUZXh0Q29udGVudEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5h
bWUpCisgICAgICAgIHx8IFNWR1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFt
ZSkpCisgICAgICAgIHJlbmRlcmVyKCktPnNldE5lZWRzTGF5b3V0KHRydWUpOworfQorCiB2b2lk
IFNWR1RleHRQYXRoRWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShjb25zdCBRdWFsaWZpZWRO
YW1lJiBhdHRyTmFtZSkKIHsKICAgICBTVkdUZXh0Q29udGVudEVsZW1lbnQ6OnN5bmNocm9uaXpl
UHJvcGVydHkoYXR0ck5hbWUpOwpAQCAtMTEwLDcgKzEyNiw3IEBAIGJvb2wgU1ZHVGV4dFBhdGhF
bGVtZW50OjpjaGlsZFNob3VsZENyZWEKIAogdm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6Omluc2Vy
dGVkSW50b0RvY3VtZW50KCkKIHsKLSAgICBTVkdFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVu
dCgpOworICAgIFNWR1RleHRDb250ZW50RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKTsK
IAogICAgIFN0cmluZyBpZCA9IFNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KGhyZWYoKSk7CiAg
ICAgRWxlbWVudCogdGFyZ2V0RWxlbWVudCA9IG93bmVyRG9jdW1lbnQoKS0+Z2V0RWxlbWVudEJ5
SWQoaWQpOwpAQCAtMTIwLDYgKzEzNiwxMiBAQCB2b2lkIFNWR1RleHRQYXRoRWxlbWVudDo6aW5z
ZXJ0ZWRJbnRvRG9jCiAgICAgfQogfQogCitib29sIFNWR1RleHRQYXRoRWxlbWVudDo6c2VsZkhh
c1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAgcmV0dXJuIHN0YXJ0T2Zmc2V0KCkuaXNS
ZWxhdGl2ZSgpCisgICAgICAgIHx8IFNWR1RleHRDb250ZW50RWxlbWVudDo6c2VsZkhhc1JlbGF0
aXZlTGVuZ3RocygpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2Vi
Q29yZS9zdmcvU1ZHVGV4dFBhdGhFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcv
U1ZHVGV4dFBhdGhFbGVtZW50LmgJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZH
VGV4dFBhdGhFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDEyICs1NywxNSBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVu
dCgpOwogCiAgICAgICAgIHZpcnR1YWwgdm9pZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1
dGUqKTsKKyAgICAgICAgdmlydHVhbCB2b2lkIHN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVh
bGlmaWVkTmFtZSYpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgc3luY2hyb25pemVQcm9wZXJ0eShj
b25zdCBRdWFsaWZpZWROYW1lJik7CiAgICAgICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVh
dGVSZW5kZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7CiAKICAgICAgICAgYm9vbCBj
aGlsZFNob3VsZENyZWF0ZVJlbmRlcmVyKE5vZGUqKSBjb25zdDsKIAogICAgIHByaXZhdGU6Cisg
ICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAg
ICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0UGF0aEVsZW1lbnQsIFNWR05h
bWVzOjpzdGFydE9mZnNldEF0dHIsIFNWR0xlbmd0aCwgU3RhcnRPZmZzZXQsIHN0YXJ0T2Zmc2V0
KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRQYXRoRWxlbWVudCwg
U1ZHTmFtZXM6Om1ldGhvZEF0dHIsIGludCwgTWV0aG9kLCBtZXRob2QpCiAgICAgICAgIERFQ0xB
UkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHVGV4dFBhdGhFbGVtZW50LCBTVkdOYW1lczo6c3BhY2lu
Z0F0dHIsIGludCwgU3BhY2luZywgc3BhY2luZykKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1RleHRQ
b3NpdGlvbmluZ0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQ
b3NpdGlvbmluZ0VsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NW
R1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NSw2ICs2NSwx
MiBAQCB2b2lkIFNWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQ6OnN2Z0F0dHJpCiB7CiAgICAgU1ZH
VGV4dENvbnRlbnRFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAorICAg
IGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnlBdHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpkeEF0dHIK
KyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmR5QXR0cikKKyAgICAgICAgdXBkYXRl
UmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKKwogICAgIGlmICghcmVuZGVyZXIoKSkKICAg
ICAgICAgcmV0dXJuOwogCkBAIC0xMDcsNiArMTEzLDM5IEBAIGJvb2wgU1ZHVGV4dFBvc2l0aW9u
aW5nRWxlbWVudDo6aXNLbm93bkEKICAgICAgICAgICAgIFNWR1RleHRDb250ZW50RWxlbWVudDo6
aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkpOwogfQogCitzdGF0aWMgaW5saW5lIGJvb2wgbGlz
dENvbnRhaW5zUmVsYXRpdmVWYWx1ZShTVkdMZW5ndGhMaXN0KiBsaXN0KQoreworICAgIGlmICgh
bGlzdCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7
CisgICAgaW50IGxlbmd0aCA9IGxpc3QtPm51bWJlck9mSXRlbXMoKTsKKyAgICBmb3IgKGludCBp
ID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7CisgICAgICAgIFNWR0xlbmd0aCBsZW5ndGgobGlzdC0+
Z2V0SXRlbShpLCBlYykpOworICAgICAgICBBU1NFUlQoIWVjKTsKKworICAgICAgICBpZiAobGVu
Z3RoLmlzUmVsYXRpdmUoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAg
IHJldHVybiBmYWxzZTsKK30KKworYm9vbCBTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50OjpzZWxm
SGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICBpZiAoU1ZHVGV4dENvbnRlbnRFbGVt
ZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkpCisgICAgICAgIHJldHVybiB0cnVlOworICAg
IGlmIChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKHgoKSkpCisgICAgICAgIHJldHVybiB0cnVl
OworICAgIGlmIChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKHkoKSkpCisgICAgICAgIHJldHVy
biB0cnVlOworICAgIGlmIChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKGR4KCkpKQorICAgICAg
ICByZXR1cm4gdHJ1ZTsKKyAgICBpZiAobGlzdENvbnRhaW5zUmVsYXRpdmVWYWx1ZShkeSgpKSkK
KyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIGZhbHNlOworfQorCiB9CiAKICNlbmRp
ZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxl
bWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQb3NpdGlvbmluZ0VsZW1l
bnQuaAkocmV2aXNpb24gNjIxNzEpCisrKyBXZWJDb3JlL3N2Zy9TVkdUZXh0UG9zaXRpb25pbmdF
bGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDggQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgICAgICBib29sIGlzS25vd25BdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYp
OwogCiAgICAgcHJpdmF0ZToKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxl
bmd0aHMoKSBjb25zdDsKKwogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1Rl
eHRQb3NpdGlvbmluZ0VsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVuZ3RoTGlzdCosIFgs
IHgpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHVGV4dFBvc2l0aW9uaW5n
RWxlbWVudCwgU1ZHTmFtZXM6OnlBdHRyLCBTVkdMZW5ndGhMaXN0KiwgWSwgeSkKICAgICAgICAg
REVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LCBTVkdO
YW1lczo6ZHhBdHRyLCBTVkdMZW5ndGhMaXN0KiwgRHgsIGR4KQpJbmRleDogV2ViQ29yZS9zdmcv
U1ZHVXNlRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVu
dC5jcHAJKHJldmlzaW9uIDYyMTcxKQorKysgV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIFNWR1VzZUVsZW1lbnQ6OnBh
cnNlTWFwcGVkQXR0cmlidXRlCiB2b2lkIFNWR1VzZUVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3Vt
ZW50KCkKIHsKICAgICAvLyBUaGlzIGZ1bmN0aW9ucyBleGlzdHMgdG8gYXNzdXJlIGFzc3VtcHRp
b25zIG1hZGUgaW4gdGhlIGNvZGUgcmVnYXJkaW5nIFNWR0VsZW1lbnRJbnN0YW5jZSBjcmVhdGlv
bi9kZXN0cnVjdGlvbiBhcmUgc2F0aXNmaWVkLgotICAgIFNWR0VsZW1lbnQ6Omluc2VydGVkSW50
b0RvY3VtZW50KCk7CisgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6Omluc2VydGVk
SW50b0RvY3VtZW50KCk7CiAgICAgQVNTRVJUKCFtX3RhcmdldEVsZW1lbnRJbnN0YW5jZSk7CiAg
ICAgQVNTRVJUKCFtX2lzUGVuZGluZ1Jlc291cmNlKTsKIH0KQEAgLTEyOCwxMyArMTI4LDE5IEBA
IHZvaWQgU1ZHVXNlRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQKIHZvaWQgU1ZHVXNlRWxl
bWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpCiB7CiAgICAgbV90YXJnZXRFbGVtZW50SW5zdGFu
Y2UgPSAwOwotICAgIFNWR0VsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKTsKKyAgICBTVkdT
dHlsZWRUcmFuc2Zvcm1hYmxlRWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpOwogfQogCiB2
b2lkIFNWR1VzZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFt
ZSYgYXR0ck5hbWUpCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OnN2Z0F0
dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc1hZQXR0cmlidXRlID0gYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cjsK
KyAgICBib29sIGlzV2lkdGhIZWlnaHRBdHRyaWJ1dGUgPSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6
d2lkdGhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyOworCisgICAgaWYg
KGlzWFlBdHRyaWJ1dGUgfHwgaXNXaWR0aEhlaWdodEF0dHJpYnV0ZSkKKyAgICAgICAgdXBkYXRl
UmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKKwogICAgIGlmICghcmVuZGVyZXIoKSkKICAg
ICAgICAgcmV0dXJuOwogCkBAIC0xNDksMTIgKzE1NSwxMiBAQCB2b2lkIFNWR1VzZUVsZW1lbnQ6
OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAo
YXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0
cikgeworICAgIGlmIChpc1hZQXR0cmlidXRlKSB7CiAgICAgICAgIHVwZGF0ZUNvbnRhaW5lck9m
ZnNldHMoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChhdHRyTmFtZSA9PSBT
VkdOYW1lczo6d2lkdGhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyKSB7
CisgICAgaWYgKGlzV2lkdGhIZWlnaHRBdHRyaWJ1dGUpIHsKICAgICAgICAgdXBkYXRlQ29udGFp
bmVyU2l6ZXMoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTU1Miw2ICs1NTgsOSBAQCB2
b2lkIFNWR1VzZUVsZW1lbnQ6OmJ1aWxkU2hhZG93QW5kSW5zdGFuCiAgICAgLy8gVXBkYXRlIGNv
bnRhaW5lciBvZmZzZXQvc2l6ZQogICAgIHVwZGF0ZUNvbnRhaW5lck9mZnNldHMoKTsKICAgICB1
cGRhdGVDb250YWluZXJTaXplcygpOworCisgICAgLy8gVXBkYXRlIHJlbGF0aXZlIGxlbmd0aCBp
bmZvcm1hdGlvbgorICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CiB9CiAK
IFJlbmRlck9iamVjdCogU1ZHVXNlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEq
IGFyZW5hLCBSZW5kZXJTdHlsZSopCkBAIC05NzksOSArOTg4LDIyIEBAIHZvaWQgU1ZHVXNlRWxl
bWVudDo6dHJhbnNmZXJVc2VBdHRyaWJ1dGUKICAgICBBU1NFUlQoIWVjKTsKIH0KIAotYm9vbCBT
VkdVc2VFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0Citib29sIFNWR1VzZUVsZW1l
bnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiB4KCkuaXNS
ZWxhdGl2ZSgpIHx8IHkoKS5pc1JlbGF0aXZlKCkgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkgfHwg
aGVpZ2h0KCkuaXNSZWxhdGl2ZSgpOworICAgIGlmICh4KCkuaXNSZWxhdGl2ZSgpCisgICAgIHx8
IHkoKS5pc1JlbGF0aXZlKCkKKyAgICAgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgfHwg
aGVpZ2h0KCkuaXNSZWxhdGl2ZSgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIGlmICgh
bV90YXJnZXRFbGVtZW50SW5zdGFuY2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIFNW
R0VsZW1lbnQqIGVsZW1lbnQgPSBtX3RhcmdldEVsZW1lbnRJbnN0YW5jZS0+Y29ycmVzcG9uZGlu
Z0VsZW1lbnQoKTsKKyAgICBpZiAoIWVsZW1lbnQgfHwgIWVsZW1lbnQtPmlzU3R5bGVkKCkpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdTdHlsZWRF
bGVtZW50Kj4oZWxlbWVudCktPmhhc1JlbGF0aXZlTGVuZ3RocygpOwogfQogCiB9CkluZGV4OiBX
ZWJDb3JlL3N2Zy9TVkdVc2VFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZH
VXNlRWxlbWVudC5oCShyZXZpc2lvbiA2MjE3MSkKKysrIFdlYkNvcmUvc3ZnL1NWR1VzZUVsZW1l
bnQuaAkod29ya2luZyBjb3B5KQpAQCAtNzQsNyArNzQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIHZvaWQgYnVpbGRTaGFkb3dBbmRJbnN0YW5jZVRyZWUoU1ZHU2hhZG93VHJlZVJv
b3RFbGVtZW50Kik7CiAKICAgICBwcml2YXRlOgotICAgICAgICB2aXJ0dWFsIGJvb2wgaGFzUmVs
YXRpdmVWYWx1ZXMoKSBjb25zdDsKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2
ZUxlbmd0aHMoKSBjb25zdDsKIAogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNW
R1VzZUVsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVuZ3RoLCBYLCB4KQogICAgICAgICBE
RUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1VzZUVsZW1lbnQsIFNWR05hbWVzOjp5QXR0ciwg
U1ZHTGVuZ3RoLCBZLCB5KQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60530</attachid>
            <date>2010-07-05 07:23:27 -0700</date>
            <delta_ts>2010-07-05 07:30:03 -0700</delta_ts>
            <desc>Updated patch v2</desc>
            <filename>NewPatch.diff</filename>
            <type>text/plain</type>
            <size>180373</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MjQ4NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTE3IEBACisyMDEwLTA3LTA1ICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVy
bWFubkByaW0uY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIExvZ2ljIHRvIHRyYWNrIHdoZXRoZXIgZWxlbWVudHMgYXJlIHVzaW5nIHJlbGF0aXZl
IGxlbmd0aHMgaXMgaW5jb21wbGV0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDE1NjYKKworICAgICAgICBBZGQgbG9naWMgdG8gYWxsIFNWRyBlbGVt
ZW50cyB3aGljaCBjcmVhdGUgcmVuZGVyZXMgdG8gZXhwb3NlIGEgbWV0aG9kCisgICAgICAgICJi
b29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSIsIHRoYXQgcmV0dXJucyB3aGV0aGVyIHRoZSBl
bGVtZW50IHVzZXMgcmVsYXRpdmUKKyAgICAgICAgbGVuZ3RocyAoZWcuIDxyZWN0IHg9IjUwJSIu
Li4pLiBUaGlzIHdpbGwgYmUgdXNlZCBzb29uIHRvIGF2b2lkIHJlbGF5b3V0cyBvZgorICAgICAg
ICBjb250YWluZXIgY2hpbGRyZW4sIHdoZW4gdGhlIGJvdW5kcyBoYXZlIG5vdCBjaGFuZ2VkLgor
CisgICAgICAgIEEgbmV3IG1ldGhvZCBTVkdTdHlsZWRFbGVtZW50Ojp1cGRhdGVSZWxhdGl2ZUxl
bmd0aHNJbmZvcm1hdGlvbigpIGlzIGFkZGVkLAorICAgICAgICB3aGljaCBpcyBjYWxsZWQgZnJv
bSB0aGUgdmFyaW91cyBzdmdBdHRyaWJ1dGVDaGFuZ2VkKCkgbWV0aG9kcyBhbmQgaW5zZXJ0ZWRJ
bnRvRG9jdW1lbnQvcmVtb3ZlZEZyb21Eb2N1bWVudC4KKyAgICAgICAgSXQgd2lsbCBiZSBpbXBs
ZW1lbnRlZCBpbiBhIGZvbGxvdy11cCBwYXRjaC4gVGhpcyBwYXRjaCBkb2VzIG5vdCBhZmZlY3Qg
YW55IHRlc3QgYmVoYXZpb3VyLgorCisgICAgICAgIFRlc3RzOiBzdmcvY3VzdG9tL3JlbGF0aXZl
LXNpemVkLWlubmVyLXN2Zy54aHRtbAorICAgICAgICAgICAgICAgc3ZnL2N1c3RvbS9yZWxhdGl2
ZS1zaXplZC11c2Utd2l0aG91dC1hdHRyaWJ1dGVzLW9uLXN5bWJvbC54aHRtbAorICAgICAgICAg
ICAgICAgc3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS5zdmcKKyAKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyUGF0aC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJQYXRoOjps
YXlvdXQpOiBSZW5hbWUgaGFzUmVsYXRpdmVWYWx1ZXMgdG8gaGFzUmVsYXRpdmVMZW5ndGhzLgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTVkdSb290LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlclNWR1Jvb3Q6OmxheW91dCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
U1ZHUm9vdDo6Y2FsY1ZpZXdwb3J0KTogRGl0dG8uCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
clNWR1ZpZXdwb3J0Q29udGFpbmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1Zp
ZXdwb3J0Q29udGFpbmVyOjpjYWxjVmlld3BvcnQpOiBEaXR0bworICAgICAgICAqIHJlbmRlcmlu
Zy9TVkdSZW5kZXJTdXBwb3J0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1JlbmRlclN1cHBv
cnQ6OmxheW91dENoaWxkcmVuKTogRGl0dG8uCisgICAgICAgICogc3ZnL1NWR0NpcmNsZUVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHQ2lyY2xlRWxlbWVudDo6c3ZnQXR0cmlidXRl
Q2hhbmdlZCk6IENhbGwgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKSBpZiBhbnkg
YXR0cmlidXRlIHdoaWNoIG1heSBjb250YWluIHJlbGF0aXZlIGxlbmd0aHMgY2hhbmdlcy4KKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0NpcmNsZUVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMp
OiBEaXR0by4gU2FtZSBmb3IgYWxsIG90aGVyIFNWRypFbGVtZW50cyBiZWxvdy4KKyAgICAgICAg
KiBzdmcvU1ZHQ2lyY2xlRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdFbGxpcHNlRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGxpcHNlRWxlbWVudDo6c3ZnQXR0cmlidXRl
Q2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGxpcHNlRWxlbWVudDo6c2VsZkhhc1Jl
bGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR0VsbGlwc2VFbGVtZW50Lmg6CisgICAg
ICAgICogc3ZnL1NWR0ZpbHRlckVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRmls
dGVyRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdG
aWx0ZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcvU1ZH
RmlsdGVyRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGb3JlaWduT2JqZWN0RWxlbWVudDo6c3ZnQXR0cmli
dXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdGb3JlaWduT2JqZWN0RWxlbWVudDo6
c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR0ZvcmVpZ25PYmplY3RF
bGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0ltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTVkdJbWFnZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAo
V2ViQ29yZTo6U1ZHSW1hZ2VFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAg
ICAgKiBzdmcvU1ZHSW1hZ2VFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0xpbmVFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0xpbmVFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFu
Z2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0xpbmVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVM
ZW5ndGhzKToKKyAgICAgICAgKiBzdmcvU1ZHTGluZUVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcv
U1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0xpbmVh
ckdyYWRpZW50RWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAg
ICAgICAqIHN2Zy9TVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZH
TWFya2VyRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdNYXJrZXJFbGVtZW50Ojpz
dmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR01hcmtlckVsZW1lbnQ6
OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMpOgorICAgICAgICAqIHN2Zy9TVkdNYXJrZXJFbGVtZW50
Lmg6CisgICAgICAgICogc3ZnL1NWR01hc2tFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlNWR01hc2tFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6
OlNWR01hc2tFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcv
U1ZHTWFza0VsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHUGF0dGVybkVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1ZHUGF0dGVybkVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQp
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHUGF0dGVybkVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxl
bmd0aHMpOgorICAgICAgICAqIHN2Zy9TVkdQYXR0ZXJuRWxlbWVudC5oOgorICAgICAgICAqIHN2
Zy9TVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmFk
aWFsR3JhZGllbnRFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNv
cmU6OlNWR1JhZGlhbEdyYWRpZW50RWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6Cisg
ICAgICAgICogc3ZnL1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9T
VkdSZWN0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdSZWN0RWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdSZWN0RWxlbWVudDo6c2Vs
Zkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR1JlY3RFbGVtZW50Lmg6Cisg
ICAgICAgICogc3ZnL1NWR1NWR0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU1ZH
RWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdTVkdF
bGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcvU1ZHU1ZHRWxl
bWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdTdHlsZWRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KTogQ2FsbCB1cGRh
dGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbigpLgorICAgICAgICAoV2ViQ29yZTo6U1ZHU3R5
bGVkRWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6U1ZHU3R5bGVkRWxlbWVudDo6dXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24pOiBO
b3QgaW1wbGVtZW50ZWQgc28gZmFyLiBXaWxsIGxhbmQgaW4gYSBmb2xsb3ctdXAgcGF0Y2gsIHRv
Z2V0aGVyIHdpdGggdGhlIHJlbmRlciB0cmVlIGNoYW5nZXMuCisgICAgICAgICogc3ZnL1NWR1N0
eWxlZEVsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6Omhhc1Jl
bGF0aXZlTGVuZ3Rocyk6IERldmlydHVhbGl6ZWQuIEZvciBub3csIGp1c3QgY2FsbCBzZWxmSGFz
UmVsYXRpdmVMZW5ndGhzKCkgLSB0aGlzIHdpbGwgY2hhbmdlIGluIGEgZm9sbG93LXVwIHBhdGNo
LgorICAgICAgICAoV2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudDo6dXBkYXRlUmVsYXRpdmVMZW5n
dGhzSW5mb3JtYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudDo6c2Vs
Zkhhc1JlbGF0aXZlTGVuZ3Rocyk6IFJlbmFtZWQgZnJvbSBoYXNSZWxhdGl2ZVZhbHVlcygpLgor
ICAgICAgICAqIHN2Zy9TVkdTeW1ib2xFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNW
R1N5bWJvbEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHU3ltYm9sRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3Zn
L1NWR1N5bWJvbEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVGV4dENvbnRlbnRFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1RleHRDb250ZW50RWxlbWVudDo6c2VsZkhhc1Jl
bGF0aXZlTGVuZ3Rocyk6CisgICAgICAgICogc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oOgor
ICAgICAgICAqIHN2Zy9TVkdUZXh0UGF0aEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHVGV4dFBhdGhFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYkNv
cmU6OlNWR1RleHRQYXRoRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQpOiBDYWxsIHJpZ2h0
IGJhc2UgY2xhc3MnIG1ldGhvZC4gU2tpcHBlZCBvbmUgaW4gdGhlIGhpZXJhY2h5IGJlZm9yZS4K
KyAgICAgICAgKFdlYkNvcmU6OlNWR1RleHRQYXRoRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVu
Z3Rocyk6CisgICAgICAgICogc3ZnL1NWR1RleHRQYXRoRWxlbWVudC5oOgorICAgICAgICAqIHN2
Zy9TVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1Rl
eHRQb3NpdGlvbmluZ0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6bGlzdENvbnRhaW5zUmVsYXRpdmVWYWx1ZSk6IE5ldyBoZWxwZXIgZnVudGlvbiB0aGF0
IGNoZWNrcyB3aGV0ZXIgYSBTVkdMZW5ndGhMaXN0IGNvbnRhaW5zIHJlbGF0aXZlIGxlbmd0aHMu
CisgICAgICAgIChXZWJDb3JlOjpTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50OjpzZWxmSGFzUmVs
YXRpdmVMZW5ndGhzKToKKyAgICAgICAgKiBzdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5o
OgorICAgICAgICAqIHN2Zy9TVkdVc2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNW
R1VzZUVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KTogQ2FsbCByaWdodCBiYXNlIGNsYXNz
JyBtZXRob2QuIFNraXBwZWQgb24gaW4gdGhlIGhpZXJhY2h5IGJlZm9yZS4KKyAgICAgICAgKFdl
YkNvcmU6OlNWR1VzZUVsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OlNWR1VzZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAg
ICAoV2ViQ29yZTo6U1ZHVXNlRWxlbWVudDo6YnVpbGRTaGFkb3dBbmRJbnN0YW5jZVRyZWUpOiBD
YWxsIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCkgYWZ0ZXIgYnVpbGRpbmcgdGhl
IHNoYWRvdyB0cmVlLgorICAgICAgICAoV2ViQ29yZTo6U1ZHVXNlRWxlbWVudDo6c2VsZkhhc1Jl
bGF0aXZlTGVuZ3Rocyk6IFNhbWUgYXMgYWxsIG90aGVyIG1ldGhvZHMsIGV4Y2VwdCB0aGF0IGl0
IGluY2x1ZGVzIHRoZSBzaGFkb3cgdHJlZSByb290IGVsZW1lbnQuCisgICAgICAgICogc3ZnL1NW
R1VzZUVsZW1lbnQuaDoKKwogMjAxMC0wNy0wNSAgTmlrb2xhcyBaaW1tZXJtYW5uICA8bnppbW1l
cm1hbm5AcmltLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEaXJrIFNjaHVsemUgLyBEYXJp
biBBZGxlci4KSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCShyZXZpc2lvbiA2MjQ4NCkK
KysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclBhdGguY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
MDQsNyArMTA0LDcgQEAgdm9pZCBSZW5kZXJQYXRoOjpsYXlvdXQoKQogICAgIC8vIGFzIHRoZSB2
aWV3cG9ydCBzaXplIG1heSBoYXZlIGNoYW5nZWQuIEl0IHdvdWxkIGJlIG5pY2UgdG8gb3B0aW1p
emUgdGhpcyB0byBkZXRlY3QgdGhlc2UgY2hhbmdlcywgYW5kIG9ubHkKICAgICAvLyB1cGRhdGUg
d2hlbiBuZWVkZWQsIGV2ZW4gd2hlbiB1c2luZyByZWxhdGl2ZSB2YWx1ZXMuCiAgICAgYm9vbCBu
ZWVkc1BhdGhVcGRhdGUgPSBtX25lZWRzUGF0aFVwZGF0ZTsKLSAgICBpZiAoIW5lZWRzUGF0aFVw
ZGF0ZSAmJiBlbGVtZW50LT5oYXNSZWxhdGl2ZVZhbHVlcygpKQorICAgIGlmICghbmVlZHNQYXRo
VXBkYXRlICYmIGVsZW1lbnQtPmhhc1JlbGF0aXZlTGVuZ3RocygpKQogICAgICAgICBuZWVkc1Bh
dGhVcGRhdGUgPSB0cnVlOwogCiAgICAgaWYgKG5lZWRzUGF0aFVwZGF0ZSkgewpJbmRleDogV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExOSw3ICsxMTks
NyBAQCB2b2lkIFJlbmRlclNWR1Jvb3Q6OmxheW91dCgpCiAgICAgLy8gUmVuZGVyU1ZHUm9vdCBu
ZWVkcyB0byB0YWtlIHNwZWNpYWwgY2FyZSB0byBwcm9wYWdhdGUgd2luZG93IHNpemUgY2hhbmdl
cyB0byB0aGUgY2hpbGRyZW4sCiAgICAgLy8gaWYgdGhlIG91dGVybW9zdCA8c3ZnPiBpcyB1c2lu
ZyByZWxhdGl2ZSB4L3kvd2lkdGgvaGVpZ2h0IHZhbHVlcy4gSGVuY2UgdGhlIGFkZGl0b25hbCBw
YXJhbWV0ZXJzLgogICAgIFNWR1NWR0VsZW1lbnQqIHN2ZyA9IHN0YXRpY19jYXN0PFNWR1NWR0Vs
ZW1lbnQqPihub2RlKCkpOwotICAgIFNWR1JlbmRlclN1cHBvcnQ6OmxheW91dENoaWxkcmVuKHRo
aXMsIG5lZWRzTGF5b3V0IHx8IChzdmctPmhhc1JlbGF0aXZlVmFsdWVzKCkgJiYgb2xkU2l6ZSAh
PSBzaXplKCkpKTsKKyAgICBTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJlbih0aGlzLCBu
ZWVkc0xheW91dCB8fCAoc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSAmJiBvbGRTaXplICE9IHNp
emUoKSkpOwogICAgIHJlcGFpbnRlci5yZXBhaW50QWZ0ZXJMYXlvdXQoKTsKIAogICAgIHZpZXco
KS0+ZW5hYmxlTGF5b3V0U3RhdGUoKTsKQEAgLTE5Nyw3ICsxOTcsNyBAQCB2b2lkIFJlbmRlclNW
R1Jvb3Q6OmNhbGNWaWV3cG9ydCgpCiB7CiAgICAgU1ZHU1ZHRWxlbWVudCogc3ZnID0gc3RhdGlj
X2Nhc3Q8U1ZHU1ZHRWxlbWVudCo+KG5vZGUoKSk7CiAKLSAgICBpZiAoIXNlbGZOZWVkc0xheW91
dCgpICYmICFzdmctPmhhc1JlbGF0aXZlVmFsdWVzKCkpCisgICAgaWYgKCFzZWxmTmVlZHNMYXlv
dXQoKSAmJiAhc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSkKICAgICAgICAgcmV0dXJuOwogCiAg
ICAgaWYgKCFzdmctPmhhc1NldENvbnRhaW5lclNpemUoKSkgewpJbmRleDogV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyU1ZHVmlld3BvcnRDb250YWluZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmNwcAkocmV2aXNpb24gNjI0
ODQpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTQ5LDcgKzQ5LDcgQEAgdm9pZCBSZW5kZXJTVkdWaWV3cG9ydENv
bnRhaW5lcjo6Y2FsY1ZpZQogICAgIGlmIChzdmdlbGVtLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpz
dmdUYWcpKSB7CiAgICAgICAgIFNWR1NWR0VsZW1lbnQqIHN2ZyA9IHN0YXRpY19jYXN0PFNWR1NW
R0VsZW1lbnQqPihub2RlKCkpOwogCi0gICAgICAgIGlmICghc2VsZk5lZWRzTGF5b3V0KCkgJiYg
IXN2Zy0+aGFzUmVsYXRpdmVWYWx1ZXMoKSkKKyAgICAgICAgaWYgKCFzZWxmTmVlZHNMYXlvdXQo
KSAmJiAhc3ZnLT5oYXNSZWxhdGl2ZUxlbmd0aHMoKSkKICAgICAgICAgICAgIHJldHVybjsKIAog
ICAgICAgICBmbG9hdCB4ID0gc3ZnLT54KCkudmFsdWUoc3ZnKTsKSW5kZXg6IFdlYkNvcmUvcmVu
ZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVy
aW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvcmVu
ZGVyaW5nL1NWR1JlbmRlclN1cHBvcnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNDEsNyArMjQx
LDcgQEAgdm9pZCBTVkdSZW5kZXJTdXBwb3J0OjpsYXlvdXRDaGlsZHJlbihSZQogICAgICAgICBp
ZiAoIW5lZWRzTGF5b3V0KSB7CiAgICAgICAgICAgICBpZiAoU1ZHRWxlbWVudCogZWxlbWVudCA9
IGNoaWxkLT5ub2RlKCktPmlzU1ZHRWxlbWVudCgpID8gc3RhdGljX2Nhc3Q8U1ZHRWxlbWVudCo+
KGNoaWxkLT5ub2RlKCkpIDogMCkgewogICAgICAgICAgICAgICAgIGlmIChlbGVtZW50LT5pc1N0
eWxlZCgpKQotICAgICAgICAgICAgICAgICAgICBuZWVkc0xheW91dCA9IHN0YXRpY19jYXN0PFNW
R1N0eWxlZEVsZW1lbnQqPihlbGVtZW50KS0+aGFzUmVsYXRpdmVWYWx1ZXMoKTsKKyAgICAgICAg
ICAgICAgICAgICAgbmVlZHNMYXlvdXQgPSBzdGF0aWNfY2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4o
ZWxlbWVudCktPmhhc1JlbGF0aXZlTGVuZ3RocygpOwogICAgICAgICAgICAgfQogICAgICAgICB9
CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdl
YkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MSw2ICs3
MSwxMyBAQCB2b2lkIFNWR0NpcmNsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nCiB7CiAgICAg
U1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5h
bWUpOwogCisgICAgYm9vbCBpc0xlbmd0aEF0dHJpYnV0ZSA9IGF0dHJOYW1lID09IFNWR05hbWVz
OjpjeEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6OmN5QXR0cgorICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdO
YW1lczo6ckF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0
ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRoKiByZW5kZXJl
ciA9IHN0YXRpY19jYXN0PFJlbmRlclBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsKICAgICBpZiAo
IXJlbmRlcmVyKQogICAgICAgICByZXR1cm47CkBAIC04MSw5ICs4OCw3IEBAIHZvaWQgU1ZHQ2ly
Y2xlRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmcKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAot
ICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6Y3hBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1l
ID09IFNWR05hbWVzOjpjeUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnJB
dHRyKSB7CisgICAgaWYgKGlzTGVuZ3RoQXR0cmlidXRlKSB7CiAgICAgICAgIHJlbmRlcmVyLT5z
ZXROZWVkc1BhdGhVcGRhdGUoKTsKICAgICAgICAgcmVuZGVyZXItPnNldE5lZWRzTGF5b3V0KHRy
dWUpOwogICAgICAgICByZXR1cm47CkBAIC0xMjIsOSArMTI3LDExIEBAIFBhdGggU1ZHQ2lyY2xl
RWxlbWVudDo6dG9QYXRoRGF0YSgpIGNvbnMKICAgICByZXR1cm4gUGF0aDo6Y3JlYXRlQ2lyY2xl
KEZsb2F0UG9pbnQoY3goKS52YWx1ZSh0aGlzKSwgY3koKS52YWx1ZSh0aGlzKSksIHIoKS52YWx1
ZSh0aGlzKSk7CiB9CiAKLWJvb2wgU1ZHQ2lyY2xlRWxlbWVudDo6aGFzUmVsYXRpdmVWYWx1ZXMo
KSBjb25zdAorYm9vbCBTVkdDaXJjbGVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkg
Y29uc3QKIHsKLSAgICByZXR1cm4gKGN4KCkuaXNSZWxhdGl2ZSgpIHx8IGN5KCkuaXNSZWxhdGl2
ZSgpIHx8IHIoKS5pc1JlbGF0aXZlKCkpOworICAgIHJldHVybiBjeCgpLmlzUmVsYXRpdmUoKQor
ICAgICAgICB8fCBjeSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByKCkuaXNSZWxhdGl2ZSgp
OwogfQogIAogfQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0NpcmNsZUVsZW1lbnQuaAkocmV2aXNpb24gNjI0ODQpCisr
KyBXZWJDb3JlL3N2Zy9TVkdDaXJjbGVFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ1LDEw
ICs0NSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICB2aXJ0dWFsIFBhdGggdG9Q
YXRoRGF0YSgpIGNvbnN0OwogCi0gICAgcHJvdGVjdGVkOgotICAgICAgICB2aXJ0dWFsIGJvb2wg
aGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKLQogICAgIHByaXZhdGU6CisgICAgICAgIHZpcnR1
YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVDTEFS
RV9BTklNQVRFRF9QUk9QRVJUWShTVkdDaXJjbGVFbGVtZW50LCBTVkdOYW1lczo6Y3hBdHRyLCBT
VkdMZW5ndGgsIEN4LCBjeCkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdD
aXJjbGVFbGVtZW50LCBTVkdOYW1lczo6Y3lBdHRyLCBTVkdMZW5ndGgsIEN5LCBjeSkKICAgICAg
ICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdDaXJjbGVFbGVtZW50LCBTVkdOYW1lczo6
ckF0dHIsIFNWR0xlbmd0aCwgUiwgcikKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVt
ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5jcHAJ
KHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC03Niw2ICs3NiwxNCBAQCB2b2lkIFNWR0VsbGlwc2VFbGVtZW50Ojpz
dmdBdHRyaWJ1dGVDaGFuCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OnN2
Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc0xlbmd0aEF0dHJpYnV0
ZSA9IGF0dHJOYW1lID09IFNWR05hbWVzOjpjeEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmN5QXR0cgorICAgICAgICAgICAgICAgICAgICAg
ICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhBdHRyCisgICAgICAgICAgICAgICAgICAg
ICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyeUF0dHI7CisKKyAgICBpZiAoaXNMZW5n
dGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7
CisKICAgICBSZW5kZXJQYXRoKiByZW5kZXJlciA9IHN0YXRpY19jYXN0PFJlbmRlclBhdGgqPih0
aGlzLT5yZW5kZXJlcigpKTsKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1cm47CkBA
IC04NiwxMCArOTQsNyBAQCB2b2lkIFNWR0VsbGlwc2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFu
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OmN4QXR0cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6Y3lBdHRyCi0gICAgICAg
IHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyeEF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnJ5QXR0cikgeworICAgIGlmIChpc0xlbmd0aEF0dHJpYnV0ZSkgewogICAgICAg
ICByZW5kZXJlci0+c2V0TmVlZHNQYXRoVXBkYXRlKCk7CiAgICAgICAgIHJlbmRlcmVyLT5zZXRO
ZWVkc0xheW91dCh0cnVlKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTMyLDEwICsxMzcsMTIgQEAg
UGF0aCBTVkdFbGxpcHNlRWxlbWVudDo6dG9QYXRoRGF0YSgpIGNvbgogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcngoKS52YWx1ZSh0aGlzKSwgcnkoKS52YWx1ZSh0
aGlzKSk7CiB9CiAgCi1ib29sIFNWR0VsbGlwc2VFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygp
IGNvbnN0Citib29sIFNWR0VsbGlwc2VFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkg
Y29uc3QKIHsKLSAgICByZXR1cm4gKGN4KCkuaXNSZWxhdGl2ZSgpIHx8IGN5KCkuaXNSZWxhdGl2
ZSgpIHx8Ci0gICAgICAgICAgICByeCgpLmlzUmVsYXRpdmUoKSB8fCByeSgpLmlzUmVsYXRpdmUo
KSk7CisgICAgcmV0dXJuIGN4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGN5KCkuaXNSZWxh
dGl2ZSgpCisgICAgICAgIHx8IHJ4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHJ5KCkuaXNS
ZWxhdGl2ZSgpOwogfQogCiB9CkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0VsbGlwc2VFbGVtZW50LmgJKHJldmlzaW9u
IDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuaAkod29ya2luZyBjb3B5
KQpAQCAtNDUsMTAgKzQ1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1
YWwgUGF0aCB0b1BhdGhEYXRhKCkgY29uc3Q7CiAKLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZp
cnR1YWwgYm9vbCBoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0OwotCiAgICAgcHJpdmF0ZToKKyAg
ICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdDsKKwogICAg
ICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0VsbGlwc2VFbGVtZW50LCBTVkdOYW1l
czo6Y3hBdHRyLCBTVkdMZW5ndGgsIEN4LCBjeCkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9Q
Uk9QRVJUWShTVkdFbGxpcHNlRWxlbWVudCwgU1ZHTmFtZXM6OmN5QXR0ciwgU1ZHTGVuZ3RoLCBD
eSwgY3kpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRWxsaXBzZUVsZW1l
bnQsIFNWR05hbWVzOjpyeEF0dHIsIFNWR0xlbmd0aCwgUngsIHJ4KQpJbmRleDogV2ViQ29yZS9z
dmcvU1ZHRmlsdGVyRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHRmls
dGVyRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVy
RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNSw2ICsxMDUsMzAgQEAgdm9pZCBTVkdG
aWx0ZXJFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYgogICAgIH0KIH0KIAordm9pZCBTVkdGaWx0
ZXJFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmIGF0dHJO
YW1lKQoreworICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5h
bWUpOworCisgICAgYm9vbCBpbnZhbGlkYXRlQ2xpZW50cyA9IGZhbHNlOworICAgIGlmIChhdHRy
TmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OnlBdHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIKKyAgICAg
ICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIpIHsKKyAgICAgICAgaW52YWxp
ZGF0ZUNsaWVudHMgPSB0cnVlOworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1h
dGlvbigpOworICAgIH0KKworICAgIGlmIChpbnZhbGlkYXRlQ2xpZW50cworICAgICAgICB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6ZmlsdGVyVW5pdHNBdHRyCisgICAgICAgIHx8IGF0dHJOYW1l
ID09IFNWR05hbWVzOjpwcmltaXRpdmVVbml0c0F0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OmZpbHRlclJlc0F0dHIKKyAgICAgICAgfHwgU1ZHVVJJUmVmZXJlbmNlOjppc0tu
b3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdMYW5nU3BhY2U6OmlzS25vd25B
dHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8IFNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWly
ZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8IFNWR1N0eWxlZEVsZW1l
bnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQorICAgICAgICBpbnZhbGlkYXRlUmVzb3Vy
Y2VDbGllbnRzKCk7Cit9CisKIHZvaWQgU1ZHRmlsdGVyRWxlbWVudDo6c3luY2hyb25pemVQcm9w
ZXJ0eShjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKIHsKICAgICBTVkdTdHlsZWRFbGVt
ZW50OjpzeW5jaHJvbml6ZVByb3BlcnR5KGF0dHJOYW1lKTsKQEAgLTE2NSw2ICsxODksMTUgQEAg
UmVuZGVyT2JqZWN0KiBTVkdGaWx0ZXJFbGVtZW50OjpjcmVhdGVSZQogewogICAgIHJldHVybiBu
ZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlcih0aGlzKTsKIH0KKworYm9vbCBTVkdG
aWx0ZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICByZXR1
cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCkuaXNSZWxhdGl2ZSgpCisgICAgICAg
IHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhlaWdodCgpLmlzUmVsYXRpdmUo
KTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0ZpbHRlckVsZW1lbnQu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJFbGVtZW50LmgJKHJldmlzaW9u
IDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5oCSh3b3JraW5nIGNvcHkp
CkBAIC00NywxMSArNDcsMTQgQEAgcHVibGljOgogICAgIEZsb2F0UmVjdCBmaWx0ZXJCb3VuZGlu
Z0JveChjb25zdCBGbG9hdFJlY3QmKSBjb25zdDsKIAogICAgIHZpcnR1YWwgdm9pZCBwYXJzZU1h
cHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqKTsKKyAgICB2aXJ0dWFsIHZvaWQgc3ZnQXR0cmlidXRl
Q2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJik7CiAgICAgdmlydHVhbCB2b2lkIHN5bmNocm9u
aXplUHJvcGVydHkoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCiAgICAgdmlydHVhbCBSZW5kZXJP
YmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiwgUmVuZGVyU3R5bGUqKTsKIAogcHJp
dmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0Owor
CiAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdGaWx0ZXJFbGVtZW50LCBTVkdOYW1l
czo6ZmlsdGVyVW5pdHNBdHRyLCBpbnQsIEZpbHRlclVuaXRzLCBmaWx0ZXJVbml0cykKICAgICBE
RUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0ZpbHRlckVsZW1lbnQsIFNWR05hbWVzOjpwcmlt
aXRpdmVVbml0c0F0dHIsIGludCwgUHJpbWl0aXZlVW5pdHMsIHByaW1pdGl2ZVVuaXRzKQogICAg
IERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRmlsdGVyRWxlbWVudCwgU1ZHTmFtZXM6OnhB
dHRyLCBTVkdMZW5ndGgsIFgsIHgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdGb3JlaWduT2JqZWN0
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHRm9yZWlnbk9iamVjdEVs
ZW1lbnQuY3BwCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR0ZvcmVpZ25PYmpl
Y3RFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzYsNiArNzYsMTQgQEAgdm9pZCBTVkdG
b3JlaWduT2JqZWN0RWxlbWVudDo6c3ZnQXR0cmlidQogewogICAgIFNWR1N0eWxlZFRyYW5zZm9y
bWFibGVFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAorICAgIGJvb2wg
aXNMZW5ndGhBdHRyaWJ1dGUgPSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyCisgICAgICAg
ICAgICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0
dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZl
TGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gdGhp
cy0+cmVuZGVyZXIoKTsKICAgICBpZiAoIXJlbmRlcmVyKQogICAgICAgICByZXR1cm47CkBAIC04
NiwxMCArOTQsNyBAQCB2b2lkIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpzdmdBdHRyaWJ1CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnhB
dHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cgotICAgICAgICB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNW
R05hbWVzOjpoZWlnaHRBdHRyCisgICAgaWYgKGlzTGVuZ3RoQXR0cmlidXRlCiAgICAgICAgIHx8
IFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQogICAgICAgICB8fCBTVkdMYW5n
U3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCiAgICAgICAgIHx8IFNWR0V4dGVybmFs
UmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQpAQCAtMTM5LDYg
KzE0NCwxNCBAQCBib29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpjaGlsZFNob3VsCiAgICAg
cmV0dXJuIFN0eWxlZEVsZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoY2hpbGQpOwog
fQogCitib29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhz
KCkgY29uc3QKK3sKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCku
aXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8
IGhlaWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUv
c3ZnL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcv
U1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuaAkocmV2aXNpb24gNjI0ODQpCisrKyBXZWJDb3JlL3N2
Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00OCw2ICs0OCw4
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCBSZW5kZXJPYmplY3QqIGNy
ZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiBhcmVuYSwgUmVuZGVyU3R5bGUqIHN0eWxlKTsKIAog
ICAgIHByaXZhdGU6CisgICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhz
KCkgY29uc3Q7CisKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdGb3JlaWdu
T2JqZWN0RWxlbWVudCwgU1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCiAgICAgICAg
IERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQsIFNWR05h
bWVzOjp5QXR0ciwgU1ZHTGVuZ3RoLCBZLCB5KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BS
T1BFUlRZKFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50LCBTVkdOYW1lczo6d2lkdGhBdHRyLCBTVkdM
ZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcAkocmV2aXNp
b24gNjI0ODQpCisrKyBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC05MSw2ICs5MSwxNCBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6c3ZnQXR0cmlidXRl
Q2hhbmdlCiAgICAgaWYgKFNWR1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFt
ZSkpCiAgICAgICAgIG1faW1hZ2VMb2FkZXIudXBkYXRlRnJvbUVsZW1lbnRJZ25vcmluZ1ByZXZp
b3VzRXJyb3IoKTsKIAorICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUgPSBhdHRyTmFtZSA9PSBT
VkdOYW1lczo6eEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnlBdHRyCisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09
IFNWR05hbWVzOjp3aWR0aEF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0ck5h
bWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHI7CisKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUp
CisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5k
ZXJPYmplY3QqIHJlbmRlcmVyID0gdGhpcy0+cmVuZGVyZXIoKTsKICAgICBpZiAoIXJlbmRlcmVy
KQogICAgICAgICByZXR1cm47CkBAIC0xMDEsMTAgKzEwOSw3IEBAIHZvaWQgU1ZHSW1hZ2VFbGVt
ZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2UKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlm
IChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZH
TmFtZXM6OnlBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIK
LSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIKKyAgICBpZiAoaXNM
ZW5ndGhBdHRyaWJ1dGUKICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnByZXNlcnZl
QXNwZWN0UmF0aW9BdHRyCiAgICAgICAgIHx8IFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0
dHJOYW1lKQogICAgICAgICB8fCBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5h
bWUpCkBAIC0xNDMsMTAgKzE0OCwxMiBAQCB2b2lkIFNWR0ltYWdlRWxlbWVudDo6c3luY2hyb25p
emVQcm9wZXJ0CiAgICAgICAgIHN5bmNocm9uaXplSHJlZigpOwogfQogCi1ib29sIFNWR0ltYWdl
RWxlbWVudDo6aGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdAorYm9vbCBTVkdJbWFnZUVsZW1lbnQ6
OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiAoeCgpLmlzUmVs
YXRpdmUoKSB8fCB3aWR0aCgpLmlzUmVsYXRpdmUoKSB8fAotICAgICAgICAgICAgeSgpLmlzUmVs
YXRpdmUoKSB8fCBoZWlnaHQoKS5pc1JlbGF0aXZlKCkpOworICAgIHJldHVybiB4KCkuaXNSZWxh
dGl2ZSgpCisgICAgICAgIHx8IHkoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgd2lkdGgoKS5p
c1JlbGF0aXZlKCkKKyAgICAgICAgfHwgaGVpZ2h0KCkuaXNSZWxhdGl2ZSgpOwogfQogCiBSZW5k
ZXJPYmplY3QqIFNWR0ltYWdlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqIGFy
ZW5hLCBSZW5kZXJTdHlsZSopCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAkocmV2aXNpb24gNjI0
ODQpCisrKyBXZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAt
NTksOSArNTksOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICBwcm90ZWN0ZWQ6CiAgICAg
ICAgIHZpcnR1YWwgYm9vbCBoYXZlTG9hZGVkUmVxdWlyZWRSZXNvdXJjZXMoKTsKLSAgICAgICAg
dmlydHVhbCBib29sIGhhc1JlbGF0aXZlVmFsdWVzKCkgY29uc3Q7CiAKICAgICBwcml2YXRlOgor
ICAgICAgICB2aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OwogICAg
ICAgICB2aXJ0dWFsIHZvaWQgd2lsbE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsKIAogICAgICAg
ICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0ltYWdlRWxlbWVudCwgU1ZHTmFtZXM6OnhB
dHRyLCBTVkdMZW5ndGgsIFgsIHgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTGluZUVsZW1lbnQuY3BwCShyZXZpc2lv
biA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR0xpbmVFbGVtZW50LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNzIsNiArNzIsMTQgQEAgdm9pZCBTVkdMaW5lRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hh
bmdlZAogewogICAgIFNWR1N0eWxlZFRyYW5zZm9ybWFibGVFbGVtZW50OjpzdmdBdHRyaWJ1dGVD
aGFuZ2VkKGF0dHJOYW1lKTsKIAorICAgIGJvb2wgaXNMZW5ndGhBdHRyaWJ1dGUgPSBhdHRyTmFt
ZSA9PSBTVkdOYW1lczo6eDFBdHRyCisgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IGF0dHJO
YW1lID09IFNWR05hbWVzOjp5MUF0dHIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OngyQXR0cgorICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6eTJBdHRyOworCisgICAgaWYgKGlzTGVuZ3RoQXR0cmlidXRl
KQorICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbigpOworCiAgICAgUmVu
ZGVyUGF0aCogcmVuZGVyZXIgPSBzdGF0aWNfY2FzdDxSZW5kZXJQYXRoKj4odGhpcy0+cmVuZGVy
ZXIoKSk7CiAgICAgaWYgKCFyZW5kZXJlcikKICAgICAgICAgcmV0dXJuOwpAQCAtODIsMTAgKzkw
LDcgQEAgdm9pZCBTVkdMaW5lRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZAogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCi0gICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4MUF0dHIKLSAg
ICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnkxQXR0cgotICAgICAgICB8fCBhdHRyTmFt
ZSA9PSBTVkdOYW1lczo6eDJBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5
MkF0dHIpIHsKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpIHsKICAgICAgICAgcmVuZGVyZXIt
PnNldE5lZWRzUGF0aFVwZGF0ZSgpOwogICAgICAgICByZW5kZXJlci0+c2V0TmVlZHNMYXlvdXQo
dHJ1ZSk7CiAgICAgICAgIHJldHVybjsKQEAgLTEyOCwxMCArMTMzLDEyIEBAIFBhdGggU1ZHTGlu
ZUVsZW1lbnQ6OnRvUGF0aERhdGEoKSBjb25zdAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEZsb2F0UG9pbnQoeDIoKS52YWx1ZSh0aGlzKSwgeTIoKS52YWx1ZSh0aGlzKSkpOwogfQogCi1i
b29sIFNWR0xpbmVFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0Citib29sIFNWR0xp
bmVFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKIHsKLSAgICByZXR1cm4g
KHgxKCkuaXNSZWxhdGl2ZSgpIHx8IHkxKCkuaXNSZWxhdGl2ZSgpIHx8Ci0gICAgICAgICAgICB4
MigpLmlzUmVsYXRpdmUoKSB8fCB5MigpLmlzUmVsYXRpdmUoKSk7CisgICAgcmV0dXJuIHgxKCku
aXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkxKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHgy
KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkyKCkuaXNSZWxhdGl2ZSgpOwogfQogCiB9Cklu
ZGV4OiBXZWJDb3JlL3N2Zy9TVkdMaW5lRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
c3ZnL1NWR0xpbmVFbGVtZW50LmgJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZH
TGluZUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDksMTAgKzQ5LDkgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c01hcmtlcnMoKSBjb25z
dCB7IHJldHVybiB0cnVlOyB9CiAKLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZpcnR1YWwgYm9v
bCBoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0OwotCiAgICAgcHJpdmF0ZToKKyAgICAgICAgdmly
dHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdDsKKwogICAgICAgICBERUNM
QVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0xpbmVFbGVtZW50LCBTVkdOYW1lczo6eDFBdHRyLCBT
VkdMZW5ndGgsIFgxLCB4MSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdM
aW5lRWxlbWVudCwgU1ZHTmFtZXM6OnkxQXR0ciwgU1ZHTGVuZ3RoLCBZMSwgeTEpCiAgICAgICAg
IERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTGluZUVsZW1lbnQsIFNWR05hbWVzOjp4MkF0
dHIsIFNWR0xlbmd0aCwgWDIsIHgyKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHTGluZWFyR3JhZGll
bnRFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdMaW5lYXJHcmFkaWVu
dEVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR0xpbmVhckdy
YWRpZW50RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc0LDggKzc0LDEwIEBAIHZvaWQg
U1ZHTGluZWFyR3JhZGllbnRFbGVtZW50OjpzdmdBdHRyaWIKICAgICBpZiAoYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OngxQXR0cgogICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eTFBdHRy
CiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp4MkF0dHIKLSAgICAgICAgfHwgYXR0
ck5hbWUgPT0gU1ZHTmFtZXM6OnkyQXR0cikKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFt
ZXM6OnkyQXR0cikgeworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbigp
OwogICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CisgICAgfQogfQogCiB2b2lk
IFNWR0xpbmVhckdyYWRpZW50RWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShjb25zdCBRdWFs
aWZpZWROYW1lJiBhdHRyTmFtZSkKQEAgLTE3Niw2ICsxNzgsMTQgQEAgdm9pZCBTVkdMaW5lYXJH
cmFkaWVudEVsZW1lbnQ6OmNhbGN1bGF0ZQogICAgIH0KIH0KIAorYm9vbCBTVkdMaW5lYXJHcmFk
aWVudEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAoreworICAgIHJldHVy
biB4MSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5MSgpLmlzUmVsYXRpdmUoKQorICAgICAg
ICB8fCB4MigpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5MigpLmlzUmVsYXRpdmUoKTsKK30K
KwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0xpbmVh
ckdyYWRpZW50RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0xpbmVhckdy
YWRpZW50RWxlbWVudC5oCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR0xpbmVh
ckdyYWRpZW50RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCw4IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBjYWxjdWxhdGVTdGFydEVuZFBvaW50cyhjb25z
dCBMaW5lYXJHcmFkaWVudEF0dHJpYnV0ZXMmLCBGbG9hdFBvaW50JiBzdGFydFBvaW50LCBGbG9h
dFBvaW50JiBlbmRQb2ludCk7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJvb2wg
c2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xBUkVfQU5JTUFU
RURfUFJPUEVSVFkoU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LCBTVkdOYW1lczo6eDFBdHRyLCBT
VkdMZW5ndGgsIFgxLCB4MSkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdM
aW5lYXJHcmFkaWVudEVsZW1lbnQsIFNWR05hbWVzOjp5MUF0dHIsIFNWR0xlbmd0aCwgWTEsIHkx
KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR0xpbmVhckdyYWRpZW50RWxl
bWVudCwgU1ZHTmFtZXM6OngyQXR0ciwgU1ZHTGVuZ3RoLCBYMiwgeDIpCkluZGV4OiBXZWJDb3Jl
L3N2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdN
YXJrZXJFbGVtZW50LmNwcAkocmV2aXNpb24gNjI0ODQpCisrKyBXZWJDb3JlL3N2Zy9TVkdNYXJr
ZXJFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA0LDEzICsxMDQsMjIgQEAgdm9pZCBT
VkdNYXJrZXJFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZwogewogICAgIFNWR1N0eWxlZEVsZW1l
bnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCi0gICAgaWYgKGF0dHJOYW1lID09
IFNWR05hbWVzOjptYXJrZXJVbml0c0F0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnJlZlhB
dHRyIHx8Ci0gICAgICAgIGF0dHJOYW1lID09IFNWR05hbWVzOjpyZWZZQXR0ciB8fCBhdHRyTmFt
ZSA9PSBTVkdOYW1lczo6bWFya2VyV2lkdGhBdHRyIHx8Ci0gICAgICAgIGF0dHJOYW1lID09IFNW
R05hbWVzOjptYXJrZXJIZWlnaHRBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpvcmllbnRB
dHRyIHx8Ci0gICAgICAgIFNWR0xhbmdTcGFjZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkg
fHwKLSAgICAgICAgU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZDo6aXNLbm93bkF0dHJpYnV0
ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHRml0VG9WaWV3Qm94Ojppc0tub3duQXR0cmlidXRl
KGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tub3duQXR0cmlidXRl
KGF0dHJOYW1lKSkKKyAgICBib29sIGludmFsaWRhdGVDbGllbnRzID0gZmFsc2U7CisgICAgaWYg
KGF0dHJOYW1lID09IFNWR05hbWVzOjpyZWZYQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9PSBT
VkdOYW1lczo6cmVmWUF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6Om1hcmtl
cldpZHRoQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6bWFya2VySGVpZ2h0
QXR0cikgeworICAgICAgICBpbnZhbGlkYXRlQ2xpZW50cyA9IHRydWU7CisgICAgICAgIHVwZGF0
ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisgICAgfQorCisgICAgaWYgKGludmFsaWRh
dGVDbGllbnRzCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXJrZXJVbml0c0F0
dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6Om9yaWVudEF0dHIKKyAgICAgICAg
fHwgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBT
VkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQor
ICAgICAgICB8fCBTVkdGaXRUb1ZpZXdCb3g6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisg
ICAgICAgIHx8IFNWR1N0eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQog
ICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CiB9CiAKQEAgLTE4Miw2ICsxOTEs
MTQgQEAgUmVuZGVyT2JqZWN0KiBTVkdNYXJrZXJFbGVtZW50OjpjcmVhdGVSZQogICAgIHJldHVy
biBuZXcgKGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZU1hcmtlcih0aGlzKTsKIH0KIAorYm9vbCBT
VkdNYXJrZXJFbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gcmVmWCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByZWZZKCkuaXNSZWxhdGl2ZSgp
CisgICAgICAgIHx8IG1hcmtlcldpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IG1hcmtl
ckhlaWdodCgpLmlzUmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUv
c3ZnL1NWR01hcmtlckVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdNYXJr
ZXJFbGVtZW50LmgJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHTWFya2VyRWxl
bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02OSw2ICs2OSw4IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBSZW5kZXJTdHls
ZSopOwogCiBwcml2YXRlOgorICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhz
KCkgY29uc3Q7CisKICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR01hcmtlckVsZW1l
bnQsIFNWR05hbWVzOjpyZWZYQXR0ciwgU1ZHTGVuZ3RoLCBSZWZYLCByZWZYKQogICAgIERFQ0xB
UkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHTWFya2VyRWxlbWVudCwgU1ZHTmFtZXM6OnJlZllBdHRy
LCBTVkdMZW5ndGgsIFJlZlksIHJlZlkpCiAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShT
VkdNYXJrZXJFbGVtZW50LCBTVkdOYW1lczo6bWFya2VyV2lkdGhBdHRyLCBTVkdMZW5ndGgsIE1h
cmtlcldpZHRoLCBtYXJrZXJXaWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR01hc2tFbGVtZW50
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVudC5jcHAJKHJldmlz
aW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC05NiwxNCArOTYsMjMgQEAgdm9pZCBTVkdNYXNrRWxlbWVudDo6c3ZnQXR0cmlidXRl
Q2hhbmdlZAogewogICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0
ck5hbWUpOwogCi0gICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrVW5pdHNBdHRyIHx8
IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrQ29udGVudFVuaXRzQXR0ciB8fAotICAgICAgICBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRy
IHx8Ci0gICAgICAgIGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0dHIgfHwgYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIgfHwKLSAgICAgICAgU1ZHVVJJUmVmZXJlbmNlOjppc0tu
b3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdUZXN0czo6aXNLbm93bkF0dHJp
YnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0cmlidXRl
KGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkOjppc0tu
b3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tu
b3duQXR0cmlidXRlKGF0dHJOYW1lKSkKKyAgICBib29sIGludmFsaWRhdGVDbGllbnRzID0gZmFs
c2U7CisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgorICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6eUF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OndpZHRoQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cikg
eworICAgICAgICBpbnZhbGlkYXRlQ2xpZW50cyA9IHRydWU7CisgICAgICAgIHVwZGF0ZVJlbGF0
aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CisgICAgfQorCisgICAgaWYgKGludmFsaWRhdGVDbGll
bnRzCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrVW5pdHNBdHRyCisgICAg
ICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrQ29udGVudFVuaXRzQXR0cgorICAgICAg
ICB8fCBTVkdVUklSZWZlcmVuY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAg
IHx8IFNWR1Rlc3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdM
YW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAgIHx8IFNWR0V4dGVy
bmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAgICAg
IHx8IFNWR1N0eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpKQogICAgICAg
ICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CiB9CiAKQEAgLTE2NSw2ICsxNzQsMTQgQEAg
UmVuZGVyT2JqZWN0KiBTVkdNYXNrRWxlbWVudDo6Y3JlYXRlUmVuZAogICAgIHJldHVybiBuZXcg
KGFyZW5hKSBSZW5kZXJTVkdSZXNvdXJjZU1hc2tlcih0aGlzKTsKIH0KIAorYm9vbCBTVkdNYXNr
RWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAgcmV0dXJuIHgo
KS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgeSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB3
aWR0aCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCBoZWlnaHQoKS5pc1JlbGF0aXZlKCk7Cit9
CisKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShTVkcpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdNYXNr
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR01hc2tFbGVtZW50LmgJKHJl
dmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuaAkod29ya2luZyBj
b3B5KQpAQCAtNTEsNiArNTEsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1
YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5kZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxl
Kik7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJvb2wgc2VsZkhhc1JlbGF0aXZl
TGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZH
TWFza0VsZW1lbnQsIFNWR05hbWVzOjptYXNrVW5pdHNBdHRyLCBpbnQsIE1hc2tVbml0cywgbWFz
a1VuaXRzKQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR01hc2tFbGVtZW50
LCBTVkdOYW1lczo6bWFza0NvbnRlbnRVbml0c0F0dHIsIGludCwgTWFza0NvbnRlbnRVbml0cywg
bWFza0NvbnRlbnRVbml0cykKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdN
YXNrRWxlbWVudCwgU1ZHTmFtZXM6OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCkluZGV4OiBXZWJD
b3JlL3N2Zy9TVkdQYXR0ZXJuRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcv
U1ZHUGF0dGVybkVsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NW
R1BhdHRlcm5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTIwLDEzICsxMjAsMTkgQEAg
dm9pZCBTVkdQYXR0ZXJuRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbgogewogICAgIFNWR1N0eWxl
ZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCi0gICAgaWYgKGF0dHJO
YW1lID09IFNWR05hbWVzOjpwYXR0ZXJuVW5pdHNBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09
IFNWR05hbWVzOjpwYXR0ZXJuQ29udGVudFVuaXRzQXR0cgotICAgICAgICB8fCBhdHRyTmFtZSA9
PSBTVkdOYW1lczo6cGF0dGVyblRyYW5zZm9ybUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnhBdHRyCisgICAgYm9vbCBpbnZhbGlkYXRlQ2xpZW50cyA9IGZhbHNlOworICAg
IGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKICAgICAgICAgfHwgYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnlBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp3aWR0aEF0
dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIKKyAgICAgICAg
fHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmhlaWdodEF0dHIpIHsKKyAgICAgICAgaW52YWxpZGF0
ZUNsaWVudHMgPSB0cnVlOworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlv
bigpOworICAgIH0KKworICAgIGlmIChpbnZhbGlkYXRlQ2xpZW50cworICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6cGF0dGVyblVuaXRzQXR0cgorICAgICAgICB8fCBhdHRyTmFtZSA9
PSBTVkdOYW1lczo6cGF0dGVybkNvbnRlbnRVbml0c0F0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OnBhdHRlcm5UcmFuc2Zvcm1BdHRyCiAgICAgICAgIHx8IFNWR1VSSVJlZmVy
ZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkKICAgICAgICAgfHwgU1ZHVGVzdHM6Omlz
S25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCiAgICAgICAgIHx8IFNWR0xhbmdTcGFjZTo6aXNLbm93
bkF0dHJpYnV0ZShhdHRyTmFtZSkKQEAgLTIzOSw2ICsyNDUsMTQgQEAgUGF0dGVybkF0dHJpYnV0
ZXMgU1ZHUGF0dGVybkVsZW1lbnQ6OmNvbAogICAgIHJldHVybiBhdHRyaWJ1dGVzOwogfQogCiti
b29sIFNWR1BhdHRlcm5FbGVtZW50OjpzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sK
KyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCkuaXNSZWxhdGl2ZSgp
CisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhlaWdodCgpLmlz
UmVsYXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5kZXg6IFdlYkNv
cmUvc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZH
UGF0dGVybkVsZW1lbnQuaAkocmV2aXNpb24gNjI0ODQpCisrKyBXZWJDb3JlL3N2Zy9TVkdQYXR0
ZXJuRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC01OCw2ICs1OCw4IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgUGF0dGVybkF0dHJpYnV0ZXMgY29sbGVjdFBhdHRlcm5Qcm9wZXJ0
aWVzKCkgY29uc3Q7CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJvb2wgc2VsZkhh
c1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJP
UEVSVFkoU1ZHUGF0dGVybkVsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVuZ3RoLCBYLCB4
KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1BhdHRlcm5FbGVtZW50LCBT
VkdOYW1lczo6eUF0dHIsIFNWR0xlbmd0aCwgWSwgeSkKICAgICAgICAgREVDTEFSRV9BTklNQVRF
RF9QUk9QRVJUWShTVkdQYXR0ZXJuRWxlbWVudCwgU1ZHTmFtZXM6OndpZHRoQXR0ciwgU1ZHTGVu
Z3RoLCBXaWR0aCwgd2lkdGgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdSYWRpYWxHcmFkaWVudEVs
ZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1JhZGlhbEdyYWRpZW50RWxl
bWVudC5jcHAJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGll
bnRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtODEsOCArODEsMTAgQEAgdm9pZCBTVkdS
YWRpYWxHcmFkaWVudEVsZW1lbnQ6OnN2Z0F0dHJpYgogICAgICAgICB8fCBhdHRyTmFtZSA9PSBT
VkdOYW1lczo6Y3lBdHRyCiAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpmeEF0dHIK
ICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmZ5QXR0cgotICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6ckF0dHIpCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVz
OjpyQXR0cikgeworICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbigpOwog
ICAgICAgICBpbnZhbGlkYXRlUmVzb3VyY2VDbGllbnRzKCk7CisgICAgfQogfQogCiB2b2lkIFNW
R1JhZGlhbEdyYWRpZW50RWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShjb25zdCBRdWFsaWZp
ZWROYW1lJiBhdHRyTmFtZSkKQEAgLTIxNCw2ICsyMTYsMTUgQEAgdm9pZCBTVkdSYWRpYWxHcmFk
aWVudEVsZW1lbnQ6OmNhbGN1bGF0ZQogICAgIH0KIH0KIAorYm9vbCBTVkdSYWRpYWxHcmFkaWVu
dEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAoreworICAgIHJldHVybiBj
eSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCBjeSgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8
fCByKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGZ4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAg
IHx8IGZ5KCkuaXNSZWxhdGl2ZSgpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJ
bmRleDogV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgJKHJldmlzaW9uIDYyNDg0
KQorKysgV2ViQ29yZS9zdmcvU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTQ0LDYgKzQ0LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIGNh
bGN1bGF0ZUZvY2FsQ2VudGVyUG9pbnRzQW5kUmFkaXVzKGNvbnN0IFJhZGlhbEdyYWRpZW50QXR0
cmlidXRlcyYsIEZsb2F0UG9pbnQmIGZvY2FsUG9pbnQsIEZsb2F0UG9pbnQmIGNlbnRlclBvaW50
LCBmbG9hdCYgcmFkaXVzKTsKIAogICAgIHByaXZhdGU6CisgICAgICAgIHZpcnR1YWwgYm9vbCBz
ZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVDTEFSRV9BTklNQVRF
RF9QUk9QRVJUWShTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQsIFNWR05hbWVzOjpjeEF0dHIsIFNW
R0xlbmd0aCwgQ3gsIGN4KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1Jh
ZGlhbEdyYWRpZW50RWxlbWVudCwgU1ZHTmFtZXM6OmN5QXR0ciwgU1ZHTGVuZ3RoLCBDeSwgY3kp
CiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHUmFkaWFsR3JhZGllbnRFbGVt
ZW50LCBTVkdOYW1lczo6ckF0dHIsIFNWR0xlbmd0aCwgUiwgcikKSW5kZXg6IFdlYkNvcmUvc3Zn
L1NWR1JlY3RFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdSZWN0RWxl
bWVudC5jcHAJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHUmVjdEVsZW1lbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC04NSw2ICs4NSwxNiBAQCB2b2lkIFNWR1JlY3RFbGVtZW50
OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1l
bnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc0xlbmd0aEF0
dHJpYnV0ZSA9IGF0dHJOYW1lID09IFNWR05hbWVzOjp4QXR0cgorICAgICAgICAgICAgICAgICAg
ICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6eUF0dHIKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0cgorICAgICAgICAgICAg
ICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cgorICAgICAg
ICAgICAgICAgICAgICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6cnhBdHRyCisgICAg
ICAgICAgICAgICAgICAgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyeUF0dHI7CisK
KyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Ro
c0luZm9ybWF0aW9uKCk7CisKICAgICBSZW5kZXJQYXRoKiByZW5kZXJlciA9IHN0YXRpY19jYXN0
PFJlbmRlclBhdGgqPih0aGlzLT5yZW5kZXJlcigpKTsKICAgICBpZiAoIXJlbmRlcmVyKQogICAg
ICAgICByZXR1cm47CkBAIC05NSwxMiArMTA1LDcgQEAgdm9pZCBTVkdSZWN0RWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZAogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKGF0dHJO
YW1lID09IFNWR05hbWVzOjp4QXR0cgotICAgICAgICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6
eUF0dHIKLSAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OndpZHRoQXR0cgotICAgICAg
ICB8fCBhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cgotICAgICAgICB8fCBhdHRyTmFt
ZSA9PSBTVkdOYW1lczo6cnhBdHRyCi0gICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpy
eUF0dHIpIHsKKyAgICBpZiAoaXNMZW5ndGhBdHRyaWJ1dGUpIHsKICAgICAgICAgcmVuZGVyZXIt
PnNldE5lZWRzUGF0aFVwZGF0ZSgpOwogICAgICAgICByZW5kZXJlci0+c2V0TmVlZHNMYXlvdXQo
dHJ1ZSk7CiAgICAgICAgIHJldHVybjsKQEAgLTE1OCwxMSArMTYzLDE0IEBAIFBhdGggU1ZHUmVj
dEVsZW1lbnQ6OnRvUGF0aERhdGEoKSBjb25zdAogICAgIHJldHVybiBQYXRoOjpjcmVhdGVSZWN0
YW5nbGUocmVjdCk7CiB9CiAKLWJvb2wgU1ZHUmVjdEVsZW1lbnQ6Omhhc1JlbGF0aXZlVmFsdWVz
KCkgY29uc3QKK2Jvb2wgU1ZHUmVjdEVsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBj
b25zdAogewotICAgIHJldHVybiAoeCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgpLmlzUmVsYXRp
dmUoKSB8fAotICAgICAgICAgICAgeSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQoKS5pc1JlbGF0
aXZlKCkgfHwKLSAgICAgICAgICAgIHJ4KCkuaXNSZWxhdGl2ZSgpIHx8IHJ5KCkuaXNSZWxhdGl2
ZSgpKTsKKyAgICByZXR1cm4geCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCB5KCkuaXNSZWxh
dGl2ZSgpCisgICAgICAgIHx8IHdpZHRoKCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IGhlaWdo
dCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8fCByeCgpLmlzUmVsYXRpdmUoKQorICAgICAgICB8
fCByeSgpLmlzUmVsYXRpdmUoKTsKIH0KIAogfQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHUmVjdEVs
ZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdSZWN0RWxlbWVudC5oCShyZXZp
c2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR1JlY3RFbGVtZW50LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTQ1LDEwICs0NSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICB2aXJ0
dWFsIFBhdGggdG9QYXRoRGF0YSgpIGNvbnN0OwogCi0gICAgcHJvdGVjdGVkOgotICAgICAgICB2
aXJ0dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKLQogICAgIHByaXZhdGU6Cisg
ICAgICAgIHZpcnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAg
ICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdSZWN0RWxlbWVudCwgU1ZHTmFtZXM6
OnhBdHRyLCBTVkdMZW5ndGgsIFgsIHgpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVS
VFkoU1ZHUmVjdEVsZW1lbnQsIFNWR05hbWVzOjp5QXR0ciwgU1ZHTGVuZ3RoLCBZLCB5KQogICAg
ICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1JlY3RFbGVtZW50LCBTVkdOYW1lczo6
d2lkdGhBdHRyLCBTVkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NW
R1NWR0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQu
Y3BwCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yOTQsMjEgKzI5NCwzMiBAQCB2b2lkIFNWR1NWR0VsZW1lbnQ6OnN2
Z0F0dHJpYnV0ZUNoYW5nZWQoCiAgICAgLy8gVGh1cyB0aGUgQ1NTIGxlbmd0aCB2YWx1ZSBmb3Ig
d2lkdGggaXMgbm90IHVwZGF0ZWQsIGFuZCB3aWR0aCgpIGNhbGNXaWR0aCgpCiAgICAgLy8gY2Fs
Y3VsYXRpb25zIG9uIFJlbmRlclNWR1Jvb3Qgd2lsbCBiZSB3cm9uZy4KICAgICAvLyBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjUzODcKLSAgICBpZiAoYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OndpZHRoQXR0cikKKyAgICBib29sIHVwZGF0ZVJlbGF0aXZlTGVuZ3RocyA9
IGZhbHNlOworICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhBdHRyKSB7CiAgICAg
ICAgIHVwZGF0ZUNTU0ZvckF0dHJpYnV0ZSh0aGlzLCBhdHRyTmFtZSwgQ1NTUHJvcGVydHlXaWR0
aCwgd2lkdGhCYXNlVmFsdWUoKSk7Ci0gICAgZWxzZSBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OmhlaWdodEF0dHIpCisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3RocyA9IHRydWU7CisgICAg
fSBlbHNlIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6aGVpZ2h0QXR0cikgewogICAgICAgICB1
cGRhdGVDU1NGb3JBdHRyaWJ1dGUodGhpcywgYXR0ck5hbWUsIENTU1Byb3BlcnR5SGVpZ2h0LCBo
ZWlnaHRCYXNlVmFsdWUoKSk7CisgICAgICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3RocyA9IHRydWU7
CisgICAgfQorCisgICAgaWYgKHVwZGF0ZVJlbGF0aXZlTGVuZ3RocworICAgICAgICB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OnlBdHRyCisgICAgICAgIHx8IFNWR0ZpdFRvVmlld0JveDo6aXNLbm93bkF0dHJpYnV0ZShhdHRy
TmFtZSkpIHsKKyAgICAgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzID0gdHJ1ZTsKKyAgICAgICAg
dXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKKyAgICB9CiAKICAgICBpZiAoIXJl
bmRlcmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1l
czo6eEF0dHIgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnlBdHRyIHx8Ci0gICAgICAgIFNWR1Rl
c3RzOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAotICAgICAgICBTVkdMYW5nU3BhY2U6
OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpIHx8Ci0gICAgICAgIFNWR0V4dGVybmFsUmVzb3Vy
Y2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpIHx8Ci0gICAgICAgIFNWR0Zp
dFRvVmlld0JveDo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHWm9v
bUFuZFBhbjo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkgfHwKLSAgICAgICAgU1ZHU3R5bGVk
TG9jYXRhYmxlRWxlbWVudDo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkpCisgICAgaWYgKHVw
ZGF0ZVJlbGF0aXZlTGVuZ3RocworICAgICAgICB8fCBTVkdUZXN0czo6aXNLbm93bkF0dHJpYnV0
ZShhdHRyTmFtZSkKKyAgICAgICAgfHwgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0cmlidXRlKGF0
dHJOYW1lKQorICAgICAgICB8fCBTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkOjppc0tub3du
QXR0cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdab29tQW5kUGFuOjppc0tub3duQXR0
cmlidXRlKGF0dHJOYW1lKQorICAgICAgICB8fCBTVkdTdHlsZWRMb2NhdGFibGVFbGVtZW50Ojpp
c0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkKICAgICAgICAgcmVuZGVyZXIoKS0+c2V0TmVlZHNM
YXlvdXQodHJ1ZSk7CiB9CiAKQEAgLTUxMCwxMCArNTIxLDEzIEBAIHZvaWQgU1ZHU1ZHRWxlbWVu
dDo6c2V0Q3VycmVudFRpbWUoZmxvYXQKICAgICAvLyBGSVhNRTogSW1wbGVtZW50IG1lLCBidWcg
MTIwNzMKIH0KIAotYm9vbCBTVkdTVkdFbGVtZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0
Citib29sIFNWR1NWR0VsZW1lbnQ6OnNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAogewot
ICAgIHJldHVybiAoeCgpLmlzUmVsYXRpdmUoKSB8fCB3aWR0aCgpLmlzUmVsYXRpdmUoKSB8fAot
ICAgICAgICAgICAgeSgpLmlzUmVsYXRpdmUoKSB8fCBoZWlnaHQoKS5pc1JlbGF0aXZlKCkpOwor
ICAgIHJldHVybiB4KCkuaXNSZWxhdGl2ZSgpCisgICAgICAgIHx8IHkoKS5pc1JlbGF0aXZlKCkK
KyAgICAgICAgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgICAgfHwgaGVpZ2h0KCkuaXNS
ZWxhdGl2ZSgpCisgICAgICAgIHx8IGhhc0F0dHJpYnV0ZShTVkdOYW1lczo6dmlld0JveEF0dHIp
OwogfQogCiBib29sIFNWR1NWR0VsZW1lbnQ6OmlzT3V0ZXJtb3N0U1ZHKCkgY29uc3QKQEAgLTU4
MSw1ICs1OTUsMyBAQCB2b2lkIFNWR1NWR0VsZW1lbnQ6OmRvY3VtZW50RGlkQmVjb21lQWN0CiB9
CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQotCi0vLyB2aW06dHM9NDpub2V0CkluZGV4OiBXZWJD
b3JlL3N2Zy9TVkdTVkdFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHU1ZH
RWxlbWVudC5oCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtMTI4LDkgKzEyOCwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIHZvaWQgaW5oZXJpdFZpZXdBdHRyaWJ1dGVzKFNWR1ZpZXdFbGVtZW50Kik7CiAK
ICAgICAgICAgYm9vbCBpc091dGVybW9zdFNWRygpIGNvbnN0OwotICAgICAgICB2aXJ0dWFsIGJv
b2wgaGFzUmVsYXRpdmVWYWx1ZXMoKSBjb25zdDsKIAogICAgIHByaXZhdGU6CisgICAgICAgIHZp
cnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVD
TEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6eEF0dHIsIFNW
R0xlbmd0aCwgWCwgeCkKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdTVkdF
bGVtZW50LCBTVkdOYW1lczo6eUF0dHIsIFNWR0xlbmd0aCwgWSwgeSkKICAgICAgICAgREVDTEFS
RV9BTklNQVRFRF9QUk9QRVJUWShTVkdTVkdFbGVtZW50LCBTVkdOYW1lczo6d2lkdGhBdHRyLCBT
VkdMZW5ndGgsIFdpZHRoLCB3aWR0aCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1l
bnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQuY3BwCShy
ZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yOTUsNiArMjk1LDE4IEBAIHZvaWQgU1ZHU3R5bGVkRWxlbWVudDo6aW52
YWxpZGF0ZVJlc291cmMKICAgICAgICAgb2JqZWN0LT50b1JlbmRlclNWR1Jlc291cmNlQ29udGFp
bmVyKCktPmludmFsaWRhdGVDbGllbnRzKCk7CiB9CiAKK3ZvaWQgU1ZHU3R5bGVkRWxlbWVudDo6
aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKQoreworICAgIFNWR0VsZW1lbnQ6Omluc2VydGVkSW50b0Rv
Y3VtZW50KCk7CisgICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKK30KKwor
dm9pZCBTVkdTdHlsZWRFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50KCkKK3sKKyAgICB1cGRh
dGVSZWxhdGl2ZUxlbmd0aHNJbmZvcm1hdGlvbihmYWxzZSwgdGhpcyk7CisgICAgU1ZHRWxlbWVu
dDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpOworfQorCiB2b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OmNo
aWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3JlQ2hhbmdlLCBO
b2RlKiBhZnRlckNoYW5nZSwgaW50IGNoaWxkQ291bnREZWx0YSkKIHsKICAgICBTVkdFbGVtZW50
OjpjaGlsZHJlbkNoYW5nZWQoY2hhbmdlZEJ5UGFyc2VyLCBiZWZvcmVDaGFuZ2UsIGFmdGVyQ2hh
bmdlLCBjaGlsZENvdW50RGVsdGEpOwpAQCAtMzU0LDYgKzM2NiwxMSBAQCBBZmZpbmVUcmFuc2Zv
cm0gU1ZHU3R5bGVkRWxlbWVudDo6bG9jYWxDCiAgICAgcmV0dXJuIEFmZmluZVRyYW5zZm9ybSgp
OwogfQogCit2b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OnVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9y
bWF0aW9uKGJvb2wsIFNWR1N0eWxlZEVsZW1lbnQqKQoreworICAgIC8vIEZJWE1FOiBUaGUgYWN0
dWFsIGNvZGUgd2lsbCBsYW5kIGluIGEgZm9sbG93LXVwIHBhdGNoLgorfQorCiB9CiAKICNlbmRp
ZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHU3R5bGVkRWxlbWVudC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQuaAkocmV2aXNpb24gNjI0
ODQpCisrKyBXZWJDb3JlL3N2Zy9TVkdTdHlsZWRFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAg
LTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJTVkdFbGVtZW50LmgiCiAjaW5jbHVkZSAiU1ZHTG9j
YXRhYmxlLmgiCiAjaW5jbHVkZSAiU1ZHU3R5bGFibGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFNl
dC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTM5LDcgKzQwLDkgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIHRpdGxlKCkgY29uc3Q7CiAKLSAg
ICAgICAgdmlydHVhbCBib29sIGhhc1JlbGF0aXZlVmFsdWVzKCkgY29uc3QgeyByZXR1cm4gZmFs
c2U7IH0KKyAgICAgICAgLy8gRklYTUU6IFRoZSBhY3R1YWwgY29kZSB3aWxsIGxhbmQgaW4gYSBm
b2xsb3ctdXAgcGF0Y2guCisgICAgICAgIGJvb2wgaGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Qg
eyByZXR1cm4gc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpOyB9CisKICAgICAgICAgdmlydHVhbCBi
b29sIGlzU3R5bGVkKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogICAgICAgICB2aXJ0dWFsIGJv
b2wgc3VwcG9ydHNNYXJrZXJzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIApAQCAtNTUsNiAr
NTgsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzdmdBdHRy
aWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKTsKICAgICAgICAgdmlydHVhbCB2b2lk
IHN5bmNocm9uaXplUHJvcGVydHkoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCisgICAgICAgIHZp
cnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVudCgpOworICAgICAgICB2aXJ0dWFsIHZvaWQg
cmVtb3ZlZEZyb21Eb2N1bWVudCgpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgY2hpbGRyZW5DaGFu
Z2VkKGJvb2wgY2hhbmdlZEJ5UGFyc2VyID0gZmFsc2UsIE5vZGUqIGJlZm9yZUNoYW5nZSA9IDAs
IE5vZGUqIGFmdGVyQ2hhbmdlID0gMCwgaW50IGNoaWxkQ291bnREZWx0YSA9IDApOwogCiAgICAg
ICAgIC8vIENlbnRyYWxpemVkIHBsYWNlIHRvIGZvcmNlIGEgbWFudWFsIHN0eWxlIHJlc29sdXRp
b24uIEhhY2t5IGJ1dCBuZWVkZWQgZm9yIG5vdy4KQEAgLTcwLDYgKzc1LDEwIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogICAgIHByb3RlY3RlZDogCiAgICAgICAgIHN0YXRpYyBpbnQgY3NzUHJv
cGVydHlJZEZvclNWR0F0dHJpYnV0ZU5hbWUoY29uc3QgUXVhbGlmaWVkTmFtZSYpOworICAgICAg
ICB2b2lkIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCkgeyB1cGRhdGVSZWxhdGl2
ZUxlbmd0aHNJbmZvcm1hdGlvbihzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCksIHRoaXMpOyB9Cisg
ICAgICAgIHZvaWQgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oYm9vbCBoYXNSZWxh
dGl2ZUxlbmd0aHMsIFNWR1N0eWxlZEVsZW1lbnQqKTsKKworICAgICAgICB2aXJ0dWFsIGJvb2wg
c2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICBw
cml2YXRlOgogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1N0eWxlZEVsZW1l
bnQsIEhUTUxOYW1lczo6Y2xhc3NBdHRyLCBTdHJpbmcsIENsYXNzTmFtZSwgY2xhc3NOYW1lKQpJ
bmRleDogV2ViQ29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29y
ZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUxLDYgKzUxLDE0
IEBAIHZvaWQgU1ZHU3ltYm9sRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWIKICAgICBTVkdTdHls
ZWRFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShhdHRyKTsKIH0KIAordm9pZCBTVkdTeW1i
b2xFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmIGF0dHJO
YW1lKQoreworICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoYXR0ck5h
bWUpOworCisgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjp2aWV3Qm94QXR0cikKKyAgICAg
ICAgdXBkYXRlUmVsYXRpdmVMZW5ndGhzSW5mb3JtYXRpb24oKTsKK30KKwogdm9pZCBTVkdTeW1i
b2xFbGVtZW50OjpzeW5jaHJvbml6ZVByb3BlcnR5KGNvbnN0IFF1YWxpZmllZE5hbWUmIGF0dHJO
YW1lKQogewogICAgIFNWR1N0eWxlZEVsZW1lbnQ6OnN5bmNocm9uaXplUHJvcGVydHkoYXR0ck5h
bWUpOwpAQCAtNzYsNiArODQsMTEgQEAgdm9pZCBTVkdTeW1ib2xFbGVtZW50OjpzeW5jaHJvbml6
ZVByb3BlcgogICAgIH0gCiB9CiAKK2Jvb2wgU1ZHU3ltYm9sRWxlbWVudDo6c2VsZkhhc1JlbGF0
aXZlTGVuZ3RocygpIGNvbnN0Cit7CisgICAgcmV0dXJuIGhhc0F0dHJpYnV0ZShTVkdOYW1lczo6
dmlld0JveEF0dHIpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2Vi
Q29yZS9zdmcvU1ZHU3ltYm9sRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NW
R1N5bWJvbEVsZW1lbnQuaAkocmV2aXNpb24gNjI0ODQpCisrKyBXZWJDb3JlL3N2Zy9TVkdTeW1i
b2xFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM4LDEwICszOCwxMyBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgflNWR1N5bWJvbEVsZW1lbnQoKTsKIAogICAgICAg
ICB2aXJ0dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKik7CisgICAgICAg
IHZpcnR1YWwgdm9pZCBzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKTsK
ICAgICAgICAgdmlydHVhbCB2b2lkIHN5bmNocm9uaXplUHJvcGVydHkoY29uc3QgUXVhbGlmaWVk
TmFtZSYpOwogICAgICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChSZW5kZXJTdHls
ZSopIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICBwcml2YXRlOgorICAgICAgICB2aXJ0dWFsIGJv
b2wgc2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgICAgIC8vIFNWR0V4dGVy
bmFsUmVzb3VyY2VzUmVxdWlyZWQKICAgICAgICAgREVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShT
VkdTeW1ib2xFbGVtZW50LCBTVkdOYW1lczo6ZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZEF0dHIs
IGJvb2wsIEV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQsIGV4dGVybmFsUmVzb3VyY2VzUmVxdWly
ZWQpCiAgCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5jcHAJKHJldmlzaW9u
IDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHVGV4dENvbnRlbnRFbGVtZW50LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjE3LDYgKzIxNywxMSBAQCBib29sIFNWR1RleHRDb250ZW50RWxlbWVudDo6
aXNLbm93bkF0dHJpCiAgICAgICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tub3duQXR0cmli
dXRlKGF0dHJOYW1lKSk7CiB9CiAKK2Jvb2wgU1ZHVGV4dENvbnRlbnRFbGVtZW50OjpzZWxmSGFz
UmVsYXRpdmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gdGV4dExlbmd0aCgpLmlzUmVs
YXRpdmUoKTsKK30KKwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNWRykKSW5kZXg6IFdlYkNvcmUv
c3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NW
R1RleHRDb250ZW50RWxlbWVudC5oCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NW
R1RleHRDb250ZW50RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02Myw2ICs2Myw5IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBib29sIGlzS25vd25BdHRyaWJ1dGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYpOwogCisgICAgcHJvdGVjdGVkOgorICAgICAgICB2aXJ0dWFsIGJvb2wg
c2VsZkhhc1JlbGF0aXZlTGVuZ3RocygpIGNvbnN0OworCiAgICAgcHJpdmF0ZToKICAgICAgICAg
REVDTEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0Q29udGVudEVsZW1lbnQsIFNWR05hbWVz
Ojp0ZXh0TGVuZ3RoQXR0ciwgU1ZHTGVuZ3RoLCBUZXh0TGVuZ3RoLCB0ZXh0TGVuZ3RoKQogICAg
ICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRDb250ZW50RWxlbWVudCwgU1ZH
TmFtZXM6Omxlbmd0aEFkanVzdEF0dHIsIGludCwgTGVuZ3RoQWRqdXN0LCBsZW5ndGhBZGp1c3Qp
CkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdUZXh0UGF0aEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvc3ZnL1NWR1RleHRQYXRoRWxlbWVudC5jcHAJKHJldmlzaW9uIDYyNDg0KQorKysg
V2ViQ29yZS9zdmcvU1ZHVGV4dFBhdGhFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjks
NiArNjksMjIgQEAgdm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cgogICAg
IH0KIH0KIAordm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29u
c3QgUXVhbGlmaWVkTmFtZSYgYXR0ck5hbWUpCit7CisgICAgU1ZHVGV4dENvbnRlbnRFbGVtZW50
OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKKworICAgIGlmIChhdHRyTmFtZSA9PSBT
VkdOYW1lczo6c3RhcnRPZmZzZXRBdHRyKQorICAgICAgICB1cGRhdGVSZWxhdGl2ZUxlbmd0aHNJ
bmZvcm1hdGlvbigpOworCisgICAgaWYgKCFyZW5kZXJlcigpKQorICAgICAgICByZXR1cm47CisK
KyAgICBpZiAoYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnN0YXJ0T2Zmc2V0QXR0cgorICAgICAgICB8
fCBTVkdUZXh0Q29udGVudEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpCisgICAg
ICAgIHx8IFNWR1VSSVJlZmVyZW5jZTo6aXNLbm93bkF0dHJpYnV0ZShhdHRyTmFtZSkpCisgICAg
ICAgIHJlbmRlcmVyKCktPnNldE5lZWRzTGF5b3V0KHRydWUpOworfQorCiB2b2lkIFNWR1RleHRQ
YXRoRWxlbWVudDo6c3luY2hyb25pemVQcm9wZXJ0eShjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRy
TmFtZSkKIHsKICAgICBTVkdUZXh0Q29udGVudEVsZW1lbnQ6OnN5bmNocm9uaXplUHJvcGVydHko
YXR0ck5hbWUpOwpAQCAtMTEwLDcgKzEyNiw3IEBAIGJvb2wgU1ZHVGV4dFBhdGhFbGVtZW50Ojpj
aGlsZFNob3VsZENyZWEKIAogdm9pZCBTVkdUZXh0UGF0aEVsZW1lbnQ6Omluc2VydGVkSW50b0Rv
Y3VtZW50KCkKIHsKLSAgICBTVkdFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgpOworICAg
IFNWR1RleHRDb250ZW50RWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQoKTsKIAogICAgIFN0
cmluZyBpZCA9IFNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KGhyZWYoKSk7CiAgICAgRWxlbWVu
dCogdGFyZ2V0RWxlbWVudCA9IG93bmVyRG9jdW1lbnQoKS0+Z2V0RWxlbWVudEJ5SWQoaWQpOwpA
QCAtMTIwLDYgKzEzNiwxMiBAQCB2b2lkIFNWR1RleHRQYXRoRWxlbWVudDo6aW5zZXJ0ZWRJbnRv
RG9jCiAgICAgfQogfQogCitib29sIFNWR1RleHRQYXRoRWxlbWVudDo6c2VsZkhhc1JlbGF0aXZl
TGVuZ3RocygpIGNvbnN0Cit7CisgICAgcmV0dXJuIHN0YXJ0T2Zmc2V0KCkuaXNSZWxhdGl2ZSgp
CisgICAgICAgIHx8IFNWR1RleHRDb250ZW50RWxlbWVudDo6c2VsZkhhc1JlbGF0aXZlTGVuZ3Ro
cygpOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcv
U1ZHVGV4dFBhdGhFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHVGV4dFBh
dGhFbGVtZW50LmgJKHJldmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHVGV4dFBhdGhF
bGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDEyICs1NywxNSBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVudCgpOwogCiAg
ICAgICAgIHZpcnR1YWwgdm9pZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqKTsKKyAg
ICAgICAgdmlydHVhbCB2b2lkIHN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFt
ZSYpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgc3luY2hyb25pemVQcm9wZXJ0eShjb25zdCBRdWFs
aWZpZWROYW1lJik7CiAgICAgICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5kZXJl
cihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7CiAKICAgICAgICAgYm9vbCBjaGlsZFNob3Vs
ZENyZWF0ZVJlbmRlcmVyKE5vZGUqKSBjb25zdDsKIAogICAgIHByaXZhdGU6CisgICAgICAgIHZp
cnR1YWwgYm9vbCBzZWxmSGFzUmVsYXRpdmVMZW5ndGhzKCkgY29uc3Q7CisKICAgICAgICAgREVD
TEFSRV9BTklNQVRFRF9QUk9QRVJUWShTVkdUZXh0UGF0aEVsZW1lbnQsIFNWR05hbWVzOjpzdGFy
dE9mZnNldEF0dHIsIFNWR0xlbmd0aCwgU3RhcnRPZmZzZXQsIHN0YXJ0T2Zmc2V0KQogICAgICAg
ICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRQYXRoRWxlbWVudCwgU1ZHTmFtZXM6
Om1ldGhvZEF0dHIsIGludCwgTWV0aG9kLCBtZXRob2QpCiAgICAgICAgIERFQ0xBUkVfQU5JTUFU
RURfUFJPUEVSVFkoU1ZHVGV4dFBhdGhFbGVtZW50LCBTVkdOYW1lczo6c3BhY2luZ0F0dHIsIGlu
dCwgU3BhY2luZywgc3BhY2luZykKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR1RleHRQb3NpdGlvbmlu
Z0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQb3NpdGlvbmlu
Z0VsZW1lbnQuY3BwCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR1RleHRQb3Np
dGlvbmluZ0VsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NSw2ICs2NSwxMiBAQCB2b2lk
IFNWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQ6OnN2Z0F0dHJpCiB7CiAgICAgU1ZHVGV4dENvbnRl
bnRFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1lKTsKIAorICAgIGlmIChhdHRy
TmFtZSA9PSBTVkdOYW1lczo6eEF0dHIKKyAgICAgICAgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6
OnlBdHRyCisgICAgICAgIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpkeEF0dHIKKyAgICAgICAg
fHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OmR5QXR0cikKKyAgICAgICAgdXBkYXRlUmVsYXRpdmVM
ZW5ndGhzSW5mb3JtYXRpb24oKTsKKwogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAgICAgcmV0
dXJuOwogCkBAIC0xMDcsNiArMTEzLDM5IEBAIGJvb2wgU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVu
dDo6aXNLbm93bkEKICAgICAgICAgICAgIFNWR1RleHRDb250ZW50RWxlbWVudDo6aXNLbm93bkF0
dHJpYnV0ZShhdHRyTmFtZSkpOwogfQogCitzdGF0aWMgaW5saW5lIGJvb2wgbGlzdENvbnRhaW5z
UmVsYXRpdmVWYWx1ZShTVkdMZW5ndGhMaXN0KiBsaXN0KQoreworICAgIGlmICghbGlzdCkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CisgICAgaW50
IGxlbmd0aCA9IGxpc3QtPm51bWJlck9mSXRlbXMoKTsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8
IGxlbmd0aDsgKytpKSB7CisgICAgICAgIFNWR0xlbmd0aCBsZW5ndGgobGlzdC0+Z2V0SXRlbShp
LCBlYykpOworICAgICAgICBBU1NFUlQoIWVjKTsKKworICAgICAgICBpZiAobGVuZ3RoLmlzUmVs
YXRpdmUoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIHJldHVybiBm
YWxzZTsKK30KKworYm9vbCBTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50OjpzZWxmSGFzUmVsYXRp
dmVMZW5ndGhzKCkgY29uc3QKK3sKKyAgICBpZiAoU1ZHVGV4dENvbnRlbnRFbGVtZW50OjpzZWxm
SGFzUmVsYXRpdmVMZW5ndGhzKCkpCisgICAgICAgIHJldHVybiB0cnVlOworICAgIGlmIChsaXN0
Q29udGFpbnNSZWxhdGl2ZVZhbHVlKHgoKSkpCisgICAgICAgIHJldHVybiB0cnVlOworICAgIGlm
IChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKHkoKSkpCisgICAgICAgIHJldHVybiB0cnVlOwor
ICAgIGlmIChsaXN0Q29udGFpbnNSZWxhdGl2ZVZhbHVlKGR4KCkpKQorICAgICAgICByZXR1cm4g
dHJ1ZTsKKyAgICBpZiAobGlzdENvbnRhaW5zUmVsYXRpdmVWYWx1ZShkeSgpKSkKKyAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgcmV0dXJuIGZhbHNlOworfQorCiB9CiAKICNlbmRpZiAvLyBFTkFC
TEUoU1ZHKQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuaAkocmV2
aXNpb24gNjI0ODQpCisrKyBXZWJDb3JlL3N2Zy9TVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
ICAgICBib29sIGlzS25vd25BdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCiAgICAg
cHJpdmF0ZToKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMoKSBj
b25zdDsKKwogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1RleHRQb3NpdGlv
bmluZ0VsZW1lbnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVuZ3RoTGlzdCosIFgsIHgpCiAgICAg
ICAgIERFQ0xBUkVfQU5JTUFURURfUFJPUEVSVFkoU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudCwg
U1ZHTmFtZXM6OnlBdHRyLCBTVkdMZW5ndGhMaXN0KiwgWSwgeSkKICAgICAgICAgREVDTEFSRV9B
TklNQVRFRF9QUk9QRVJUWShTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LCBTVkdOYW1lczo6ZHhB
dHRyLCBTVkdMZW5ndGhMaXN0KiwgRHgsIGR4KQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHVXNlRWxl
bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAJKHJl
dmlzaW9uIDYyNDg0KQorKysgV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIFNWR1VzZUVsZW1lbnQ6OnBhcnNlTWFwcGVk
QXR0cmlidXRlCiB2b2lkIFNWR1VzZUVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KCkKIHsK
ICAgICAvLyBUaGlzIGZ1bmN0aW9ucyBleGlzdHMgdG8gYXNzdXJlIGFzc3VtcHRpb25zIG1hZGUg
aW4gdGhlIGNvZGUgcmVnYXJkaW5nIFNWR0VsZW1lbnRJbnN0YW5jZSBjcmVhdGlvbi9kZXN0cnVj
dGlvbiBhcmUgc2F0aXNmaWVkLgotICAgIFNWR0VsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50
KCk7CisgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3Vt
ZW50KCk7CiAgICAgQVNTRVJUKCFtX3RhcmdldEVsZW1lbnRJbnN0YW5jZSk7CiAgICAgQVNTRVJU
KCFtX2lzUGVuZGluZ1Jlc291cmNlKTsKIH0KQEAgLTEyOCwxMyArMTI4LDE5IEBAIHZvaWQgU1ZH
VXNlRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQKIHZvaWQgU1ZHVXNlRWxlbWVudDo6cmVt
b3ZlZEZyb21Eb2N1bWVudCgpCiB7CiAgICAgbV90YXJnZXRFbGVtZW50SW5zdGFuY2UgPSAwOwot
ICAgIFNWR0VsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKTsKKyAgICBTVkdTdHlsZWRUcmFu
c2Zvcm1hYmxlRWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpOwogfQogCiB2b2lkIFNWR1Vz
ZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0ck5h
bWUpCiB7CiAgICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNo
YW5nZWQoYXR0ck5hbWUpOwogCisgICAgYm9vbCBpc1hZQXR0cmlidXRlID0gYXR0ck5hbWUgPT0g
U1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cjsKKyAgICBib29s
IGlzV2lkdGhIZWlnaHRBdHRyaWJ1dGUgPSBhdHRyTmFtZSA9PSBTVkdOYW1lczo6d2lkdGhBdHRy
IHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyOworCisgICAgaWYgKGlzWFlBdHRy
aWJ1dGUgfHwgaXNXaWR0aEhlaWdodEF0dHJpYnV0ZSkKKyAgICAgICAgdXBkYXRlUmVsYXRpdmVM
ZW5ndGhzSW5mb3JtYXRpb24oKTsKKwogICAgIGlmICghcmVuZGVyZXIoKSkKICAgICAgICAgcmV0
dXJuOwogCkBAIC0xNDksMTIgKzE1NSwxMiBAQCB2b2lkIFNWR1VzZUVsZW1lbnQ6OnN2Z0F0dHJp
YnV0ZUNoYW5nZWQoCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoYXR0ck5hbWUg
PT0gU1ZHTmFtZXM6OnhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjp5QXR0cikgeworICAg
IGlmIChpc1hZQXR0cmlidXRlKSB7CiAgICAgICAgIHVwZGF0ZUNvbnRhaW5lck9mZnNldHMoKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6
d2lkdGhBdHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpoZWlnaHRBdHRyKSB7CisgICAgaWYg
KGlzV2lkdGhIZWlnaHRBdHRyaWJ1dGUpIHsKICAgICAgICAgdXBkYXRlQ29udGFpbmVyU2l6ZXMo
KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTU1Miw2ICs1NTgsOSBAQCB2b2lkIFNWR1Vz
ZUVsZW1lbnQ6OmJ1aWxkU2hhZG93QW5kSW5zdGFuCiAgICAgLy8gVXBkYXRlIGNvbnRhaW5lciBv
ZmZzZXQvc2l6ZQogICAgIHVwZGF0ZUNvbnRhaW5lck9mZnNldHMoKTsKICAgICB1cGRhdGVDb250
YWluZXJTaXplcygpOworCisgICAgLy8gVXBkYXRlIHJlbGF0aXZlIGxlbmd0aCBpbmZvcm1hdGlv
bgorICAgIHVwZGF0ZVJlbGF0aXZlTGVuZ3Roc0luZm9ybWF0aW9uKCk7CiB9CiAKIFJlbmRlck9i
amVjdCogU1ZHVXNlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqIGFyZW5hLCBS
ZW5kZXJTdHlsZSopCkBAIC05NzksOSArOTg4LDIyIEBAIHZvaWQgU1ZHVXNlRWxlbWVudDo6dHJh
bnNmZXJVc2VBdHRyaWJ1dGUKICAgICBBU1NFUlQoIWVjKTsKIH0KIAotYm9vbCBTVkdVc2VFbGVt
ZW50OjpoYXNSZWxhdGl2ZVZhbHVlcygpIGNvbnN0Citib29sIFNWR1VzZUVsZW1lbnQ6OnNlbGZI
YXNSZWxhdGl2ZUxlbmd0aHMoKSBjb25zdAogewotICAgIHJldHVybiB4KCkuaXNSZWxhdGl2ZSgp
IHx8IHkoKS5pc1JlbGF0aXZlKCkgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkgfHwgaGVpZ2h0KCku
aXNSZWxhdGl2ZSgpOworICAgIGlmICh4KCkuaXNSZWxhdGl2ZSgpCisgICAgIHx8IHkoKS5pc1Jl
bGF0aXZlKCkKKyAgICAgfHwgd2lkdGgoKS5pc1JlbGF0aXZlKCkKKyAgICAgfHwgaGVpZ2h0KCku
aXNSZWxhdGl2ZSgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIGlmICghbV90YXJnZXRF
bGVtZW50SW5zdGFuY2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIFNWR0VsZW1lbnQq
IGVsZW1lbnQgPSBtX3RhcmdldEVsZW1lbnRJbnN0YW5jZS0+Y29ycmVzcG9uZGluZ0VsZW1lbnQo
KTsKKyAgICBpZiAoIWVsZW1lbnQgfHwgIWVsZW1lbnQtPmlzU3R5bGVkKCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4o
ZWxlbWVudCktPmhhc1JlbGF0aXZlTGVuZ3RocygpOwogfQogCiB9CkluZGV4OiBXZWJDb3JlL3N2
Zy9TVkdVc2VFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVu
dC5oCShyZXZpc2lvbiA2MjQ4NCkKKysrIFdlYkNvcmUvc3ZnL1NWR1VzZUVsZW1lbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtNzQsNyArNzQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IHZvaWQgYnVpbGRTaGFkb3dBbmRJbnN0YW5jZVRyZWUoU1ZHU2hhZG93VHJlZVJvb3RFbGVtZW50
Kik7CiAKICAgICBwcml2YXRlOgotICAgICAgICB2aXJ0dWFsIGJvb2wgaGFzUmVsYXRpdmVWYWx1
ZXMoKSBjb25zdDsKKyAgICAgICAgdmlydHVhbCBib29sIHNlbGZIYXNSZWxhdGl2ZUxlbmd0aHMo
KSBjb25zdDsKIAogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX1BST1BFUlRZKFNWR1VzZUVsZW1l
bnQsIFNWR05hbWVzOjp4QXR0ciwgU1ZHTGVuZ3RoLCBYLCB4KQogICAgICAgICBERUNMQVJFX0FO
SU1BVEVEX1BST1BFUlRZKFNWR1VzZUVsZW1lbnQsIFNWR05hbWVzOjp5QXR0ciwgU1ZHTGVuZ3Ro
LCBZLCB5KQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNjI0ODYpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNiBAQAorMjAxMC0wNy0wNSAgTmlrb2xhcyBa
aW1tZXJtYW5uICA8bnppbW1lcm1hbm5AcmltLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBMb2dpYyB0byB0cmFjayB3aGV0aGVyIGVsZW1lbnRz
IGFyZSB1c2luZyByZWxhdGl2ZSBsZW5ndGhzIGlzIGluY29tcGxldGUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNTY2CisKKyAgICAgICAgQWRkIHR3
byBuZXcgcmVsYXRpdmUtc2l6ZWQtKi5zdmcgdGVzdHMgdGhhdCB3b3VsZCBicmVhaywgd2hlbiBy
ZWxhdGl2ZSBzaXplZCBraWRzIGFyZW4ndCBsYXlvdXQgY29ycmVjdGx5LgorICAgICAgICBBZGQg
bmV3IHRlc3QgY292ZXJpbmcgdGhhdCBmaWx0ZXJzIHVwZGF0ZSB0aGVpciBjbGllbnRzLCBpZiBh
bnkgYXR0cmlidXRlIGNoYW5nZXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9yZWxhdGl2ZS1zaXplZC1pbm5lci1zdmctZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLWlubmVyLXN2Zy1l
eHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL3Jl
bGF0aXZlLXNpemVkLWlubmVyLXN2Zy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLXVzZS13aXRob3V0LWF0dHJpYnV0
ZXMtb24tc3ltYm9sLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvc3ZnL2N1c3RvbS9yZWxhdGl2ZS1zaXplZC11c2Utd2l0aG91dC1hdHRyaWJ1dGVzLW9u
LXN5bWJvbC1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9zdmcv
Y3VzdG9tL3JlbGF0aXZlLXNpemVkLXVzZS13aXRob3V0LWF0dHJpYnV0ZXMtb24tc3ltYm9sLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9maWx0ZXJzL2Zp
bHRlci13aWR0aC11cGRhdGUtZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9zdmcvZmlsdGVycy9maWx0ZXItd2lkdGgtdXBkYXRlLWV4cGVjdGVkLnBuZzog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9maWx0ZXJzL2ZpbHRlci13aWR0aC11
cGRhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL3JlbGF0aXZl
LXNpemVkLWlubmVyLXN2Zy54aHRtbDogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9yZWxh
dGl2ZS1zaXplZC11c2Utd2l0aG91dC1hdHRyaWJ1dGVzLW9uLXN5bWJvbC54aHRtbDogQWRkZWQu
CisgICAgICAgICogc3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS5zdmc6IEFkZGVkLgor
CiAyMDEwLTA3LTA1ICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkByaW0uY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IERpcmsgU2NodWx6ZSAvIERhcmluIEFkbGVyLgpJbmRleDog
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vcmVsYXRpdmUtc2l6ZWQtaW5uZXIt
c3ZnLWV4cGVjdGVkLmNoZWNrc3VtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLWlubmVyLXN2Zy1leHBlY3RlZC5jaGVja3N1
bQkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL3Jl
bGF0aXZlLXNpemVkLWlubmVyLXN2Zy1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSBAQAorNTk3YjMyODg5MDFkMjEwZjkxMWYxMmI3MDc3YjAwNGQKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9yZWxhdGl2ZS1zaXplZC1pbm5lci1zdmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLWlubmVyLXN2
Zy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9yZWxhdGl2ZS1zaXplZC1pbm5lci1zdmctZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDEzIEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVu
ZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDQ2
MAorICBSZW5kZXJCbG9jayB7aHRtbH0gYXQgKDAsMCkgc2l6ZSA4MDB4NDYwCisgICAgUmVuZGVy
Qm9keSB7Ym9keX0gYXQgKDgsMTYpIHNpemUgNzg0eDQzNgorICAgICAgUmVuZGVyQmxvY2sge3B9
IGF0ICgwLDApIHNpemUgNzg0eDE4CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCww
KSBzaXplIDY3NngxOAorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDY3NjogIlRo
ZSBzdmcgYXJlYSBjb250YWluZWQgaW4gdGhlIGRpdiBlbGVtZW50IChyZWQgYm94KSwgc2hvdWxk
IGZpbGwgb3V0IHRoZSB3aG9sZSBhcmVhIHdpdGggYSBncmVlbiBzaGFwZWQgcGF0aCIKKyAgICAg
IFJlbmRlckJsb2NrIHtkaXZ9IGF0ICgwLDM0KSBzaXplIDQwMng0MDIgW2JvcmRlcjogKDFweCBz
b2xpZCAjRkYwMDAwKV0KKyAgICAgICAgUmVuZGVyU1ZHUm9vdCB7c3ZnfSBhdCAoOSw1MSkgc2l6
ZSA0MDB4NDAwCisgICAgICAgICAgUmVuZGVyU1ZHVmlld3BvcnRDb250YWluZXIge3N2Z30gYXQg
KDI3LDY3KSBzaXplIDM2NHgzNjYKKyAgICAgICAgICAgIFJlbmRlclBhdGgge3BhdGh9IGF0ICgy
Nyw2Nykgc2l6ZSAzNjR4MzY2IFtmaWxsPXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMwMDgwMDBdfV0g
W2RhdGE9Ik0xNDMuMDAsMTAzLjAwIEwxNDMuMDAsMTE3LjAwIEMxNDMuMDAsMTMwLjkxLDExMi41
NiwxNDIuMTksNzUuMDAsMTQyLjE5IEMzNy40NCwxNDIuMTksNy4wMCwxMzAuOTEsNy4wMCwxMTcu
MDAgTDcuMDAsMTE3LjAwIEw3LjAwLDEwMy4wMCBDNy4wMCw4OS4wOSwzNy40NCw3Ny44MSw3NS4w
MCw3Ny44MSBDMTEyLjU2LDc3LjgxLDE0My4wMCw4OS4wOSwxNDMuMDAsMTAzLjAwIEw1Mi4wMCw3
Mi4wMCBDMzQuMzEsNzAuNjYsMjAuODUsNTUuNTcsMjEuNTIsMzcuODQgQzIyLjIwLDIwLjEyLDM2
Ljc2LDYuMDksNTQuNTAsNi4wOSBDNzIuMjQsNi4wOSw4Ni44MCwyMC4xMiw4Ny40OCwzNy44NCBD
ODguMTUsNTUuNTcsNzQuNjksNzAuNjYsNTcuMDAsNzIuMDAiXQorICAgICAgICBSZW5kZXJUZXh0
IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLXVzZS13aXRob3V0LWF0dHJpYnV0ZXMtb24tc3lt
Ym9sLWV4cGVjdGVkLmNoZWNrc3VtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLXVzZS13aXRob3V0LWF0dHJpYnV0ZXMtb24t
c3ltYm9sLWV4cGVjdGVkLmNoZWNrc3VtCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL3N2Zy9jdXN0b20vcmVsYXRpdmUtc2l6ZWQtdXNlLXdpdGhvdXQtYXR0cmlidXRl
cy1vbi1zeW1ib2wtZXhwZWN0ZWQuY2hlY2tzdW0JKHJldmlzaW9uIDApCkBAIC0wLDAgKzEgQEAK
KzU5N2IzMjg4OTAxZDIxMGY5MTFmMTJiNzA3N2IwMDRkClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vcmVsYXRpdmUt
c2l6ZWQtdXNlLXdpdGhvdXQtYXR0cmlidXRlcy1vbi1zeW1ib2wtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNp
emVkLXVzZS13aXRob3V0LWF0dHJpYnV0ZXMtb24tc3ltYm9sLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNp
emVkLXVzZS13aXRob3V0LWF0dHJpYnV0ZXMtb24tc3ltYm9sLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwxNiBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJl
bmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg0
NjAKKyAgUmVuZGVyQmxvY2sge2h0bWx9IGF0ICgwLDApIHNpemUgODAweDQ2MAorICAgIFJlbmRl
ckJvZHkge2JvZHl9IGF0ICg4LDE2KSBzaXplIDc4NHg0MzYKKyAgICAgIFJlbmRlckJsb2NrIHtw
fSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAs
MCkgc2l6ZSA2NzZ4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA2NzY6ICJU
aGUgc3ZnIGFyZWEgY29udGFpbmVkIGluIHRoZSBkaXYgZWxlbWVudCAocmVkIGJveCksIHNob3Vs
ZCBmaWxsIG91dCB0aGUgd2hvbGUgYXJlYSB3aXRoIGEgZ3JlZW4gc2hhcGVkIHBhdGgiCisgICAg
ICBSZW5kZXJCbG9jayB7ZGl2fSBhdCAoMCwzNCkgc2l6ZSA0MDJ4NDAyIFtib3JkZXI6ICgxcHgg
c29saWQgI0ZGMDAwMCldCisgICAgICAgIFJlbmRlclNWR1Jvb3Qge3N2Z30gYXQgKDksNTEpIHNp
emUgNDAweDQwMAorICAgICAgICAgIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lciB7ZGVmc30gYXQg
KDAsMCkgc2l6ZSAweDAKKyAgICAgICAgICBSZW5kZXJTVkdDb250YWluZXIge3VzZX0gYXQgKDI3
LDY3KSBzaXplIDM2NHgzNjQKKyAgICAgICAgICAgIFJlbmRlclNWR0NvbnRhaW5lciB7Z30gYXQg
KDI3LDY3KSBzaXplIDM2NHgzNjQKKyAgICAgICAgICAgICAgUmVuZGVyU1ZHVmlld3BvcnRDb250
YWluZXIge3N2Z30gYXQgKDI3LDY3KSBzaXplIDM2NHgzNjYKKyAgICAgICAgICAgICAgICBSZW5k
ZXJQYXRoIHtwYXRofSBhdCAoMjcsNjcpIHNpemUgMzY0eDM2NiBbZmlsbD17W3R5cGU9U09MSURd
IFtjb2xvcj0jMDA4MDAwXX1dIFtkYXRhPSJNMTQzLjAwLDEwMy4wMCBMMTQzLjAwLDExNy4wMCBD
MTQzLjAwLDEzMC45MSwxMTIuNTYsMTQyLjE5LDc1LjAwLDE0Mi4xOSBDMzcuNDQsMTQyLjE5LDcu
MDAsMTMwLjkxLDcuMDAsMTE3LjAwIEw3LjAwLDExNy4wMCBMNy4wMCwxMDMuMDAgQzcuMDAsODku
MDksMzcuNDQsNzcuODEsNzUuMDAsNzcuODEgQzExMi41Niw3Ny44MSwxNDMuMDAsODkuMDksMTQz
LjAwLDEwMy4wMCBMNTIuMDAsNzIuMDAgQzM0LjMxLDcwLjY2LDIwLjg1LDU1LjU3LDIxLjUyLDM3
Ljg0IEMyMi4yMCwyMC4xMiwzNi43Niw2LjA5LDU0LjUwLDYuMDkgQzcyLjI0LDYuMDksODYuODAs
MjAuMTIsODcuNDgsMzcuODQgQzg4LjE1LDU1LjU3LDc0LjY5LDcwLjY2LDU3LjAwLDcyLjAwIl0K
KyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCkluZGV4OiBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS1leHBl
Y3RlZC5jaGVja3N1bQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3Zn
L2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvZmlsdGVycy9maWx0ZXItd2lkdGgt
dXBkYXRlLWV4cGVjdGVkLmNoZWNrc3VtCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxIEBACis3NmQ2
ZTU5ODkwZDJlZDgwMzVjNDFmODY2MWM2ZjNmYgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
SW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvZmlsdGVycy9maWx0ZXItd2lkdGgt
dXBkYXRlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvc3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRo
LXVwZGF0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTQgQEAKK2xheWVy
IGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYw
MAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclNWR1Jvb3Qge3N2Z30gYXQg
KDAsMCkgc2l6ZSA4MDB4NjAwCisgICAgUmVuZGVyU1ZHSGlkZGVuQ29udGFpbmVyIHtkZWZzfSBh
dCAoMCwwKSBzaXplIDB4MAorICAgICAgUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXIge2ZpbHRlcn0g
W2lkPSJibHVyIl0gW2ZpbHRlclVuaXRzPXVzZXJTcGFjZU9uVXNlXSBbcHJpbWl0aXZlVW5pdHM9
dXNlclNwYWNlT25Vc2VdCisgICAgICAgIFtmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEw
LjAwLCAxMC4wMCJdCisgICAgICAgICAgW1NvdXJjZUdyYXBoaWNdCisgICAgUmVuZGVyUGF0aCB7
cmVjdH0gYXQgKDAsMCkgc2l6ZSAxNDB4MTQwIFtmaWxsPXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMw
MDgwMDBdfV0gW2RhdGE9Ik0yMC4wMCwyMC4wMCBMMTIwLjAwLDIwLjAwIEwxMjAuMDAsMTIwLjAw
IEwyMC4wMCwxMjAuMDAgWiJdCisgICAgICBbZmlsdGVyPSJibHVyIl0gUmVuZGVyU1ZHUmVzb3Vy
Y2VGaWx0ZXIge2ZpbHRlcn0gYXQgKDAsMCkgc2l6ZSAxNDB4MTQwCisgICAgUmVuZGVyU1ZHVGV4
dCB7dGV4dH0gYXQgKDAsMTM2KSBzaXplIDQ4M3gxOCBjb250YWlucyAxIGNodW5rKHMpCisgICAg
ICBSZW5kZXJTVkdJbmxpbmVUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0ODN4MTgKKyAgICAg
ICAgY2h1bmsgMSB0ZXh0IHJ1biAxIGF0ICgwLjAwLDE1MC4wMCkgc3RhcnRPZmZzZXQgMCBlbmRP
ZmZzZXQgNzQgd2lkdGggNDgzLjAwOiAiWW91IHNob3VsZCBzZWUgYSBncmVlbiwgYmx1cnJlZCBy
ZWN0YW5nbGUgZnJvbSAyMHgyMCB3aXRoIHdpZHRoL2hlaWdodCAxMDAiCitjYXJldDogcG9zaXRp
b24gMCBvZiBjaGlsZCAwIHsjdGV4dH0gb2YgY2hpbGQgNSB7dGV4dH0gb2YgY2hpbGQgMCB7c3Zn
fSBvZiBkb2N1bWVudApJbmRleDogTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWxhdGl2ZS1zaXpl
ZC1pbm5lci1zdmcueGh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9y
ZWxhdGl2ZS1zaXplZC1pbm5lci1zdmcueGh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLWlubmVyLXN2Zy54aHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwyMiBAQAorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwiPgorPGJvZHkgb25sb2FkPSJ3aW5kb3cuc2V0VGltZW91dChyZXNpemVCb3gsMCkiPgorICAg
IDxwPlRoZSBzdmcgYXJlYSBjb250YWluZWQgaW4gdGhlIGRpdiBlbGVtZW50IChyZWQgYm94KSwg
c2hvdWxkIGZpbGwgb3V0IHRoZSB3aG9sZSBhcmVhIHdpdGggYSBncmVlbiBzaGFwZWQgcGF0aDwv
cD4KKyAgICA8ZGl2IGlkPSJjb250ZW50Qm94IiBzdHlsZT0id2lkdGg6IDEwMHB4OyBoZWlnaHQ6
IDQwMHB4OyBib3JkZXI6IDFweCBzb2xpZCByZWQ7Ij4KKyAgICAgICAgPHN2ZyB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hsaW5rIj4KKyAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDE1MCAxNTAiID4KKyAg
ICAgICAgICAgICAgICA8cGF0aCBmaWxsPSJncmVlbiIgZD0iTTE0MyAxMDMgMTQzIDExNyBhMjcs
MTAgMCAxIDEgLTEzNiAwIEwgNyAxMTcgNyAxMDMgYTI3LDEwIDAgMCAxIDEzNiAwIEw1MiA3MiBh
MzMsMzMgMCAxIDEgNSAwIiAvPgorICAgICAgICAgICAgPC9zdmc+CisgICAgICAgIDwvc3ZnPgor
ICAgIDwvZGl2PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25l
KCk7CisKKyAgICAgICAgZnVuY3Rpb24gcmVzaXplQm94KCkgeworICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnRCb3giKS5zdHlsZS5zZXRQcm9wZXJ0eSgid2lkdGgi
LCAiNDAwcHgiKTsKKyAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
CisgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAg
ICAgICB9CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0
cy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLXVzZS13aXRob3V0LWF0dHJpYnV0ZXMtb24tc3lt
Ym9sLnhodG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVsYXRpdmUt
c2l6ZWQtdXNlLXdpdGhvdXQtYXR0cmlidXRlcy1vbi1zeW1ib2wueGh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlbGF0aXZlLXNpemVkLXVzZS13aXRob3V0LWF0
dHJpYnV0ZXMtb24tc3ltYm9sLnhodG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI4IEBACis8
aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8Ym9keSBvbmxvYWQ9
IndpbmRvdy5zZXRUaW1lb3V0KHJlc2l6ZUJveCwwKSI+CisgICAgPHA+VGhlIHN2ZyBhcmVhIGNv
bnRhaW5lZCBpbiB0aGUgZGl2IGVsZW1lbnQgKHJlZCBib3gpLCBzaG91bGQgZmlsbCBvdXQgdGhl
IHdob2xlIGFyZWEgd2l0aCBhIGdyZWVuIHNoYXBlZCBwYXRoPC9wPgorICAgIDxkaXYgaWQ9ImNv
bnRlbnRCb3giIHN0eWxlPSJ3aWR0aDogMTAwcHg7IGhlaWdodDogNDAwcHg7IGJvcmRlcjogMXB4
IHNvbGlkIHJlZDsiPgorICAgICAgICA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAw
L3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgorICAgICAg
ICAgICAgPGRlZnM+CisgICAgICAgICAgICAgICAgPHN5bWJvbCBpZD0iZ2FtZXNCb3JkZXIiIHZp
ZXdCb3g9IjAgMCAxNTAgMTUwIiA+CisgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGw9Imdy
ZWVuIiBkPSJNMTQzIDEwMyAxNDMgMTE3IGEyNywxMCAwIDEgMSAtMTM2IDAgTCA3IDExNyA3IDEw
MyBhMjcsMTAgMCAwIDEgMTM2IDAgTDUyIDcyIGEzMywzMyAwIDEgMSA1IDAiIC8+CisgICAgICAg
ICAgICAgICAgPC9zeW1ib2w+CisgICAgICAgICAgICA8L2RlZnM+CisKKyAgICAgICAgICAgIDwh
LS0gVGhpcyB0ZXN0IGlzIGlkZW50aWNhbCB0byByZWxhdGl2ZS1zaXplZC11c2Utb24tc3ltYm9s
LnhodG1sLCBleGNlcHQgdGhhdCA8dXNlPiBkb2Vzbid0IGNvbnRhaW4gYW55IGF0dHJpYnV0ZXMu
CisgICAgICAgICAgICAgICAgIFRoaXMgYXNzdXJlcyB0aGF0IHNwZWNpZnlpbmcgdmlld0JveCBv
biB0aGUgc3ltYm9sIGFsb25lIGlzIGVub3VnaCB0byB0cmlnZ2VyIHJlbGF5b3V0aW5nIC0tPgor
ICAgICAgICAgICAgPHVzZSB4bGluazpocmVmPSIjZ2FtZXNCb3JkZXIiLz4KKyAgICAgICAgPC9z
dmc+CisgICAgPC9kaXY+CisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRp
bERvbmUoKTsKKworICAgICAgICBmdW5jdGlvbiByZXNpemVCb3goKSB7CisgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudEJveCIpLnN0eWxlLnNldFByb3BlcnR5KCJ3
aWR0aCIsICI0MDBweCIpOworICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7
CisgICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91
dFRlc3RzL3N2Zy9maWx0ZXJzL2ZpbHRlci13aWR0aC11cGRhdGUuc3ZnCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL3N2Zy9maWx0ZXJzL2ZpbHRlci13aWR0aC11cGRhdGUuc3ZnCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS5zdmcJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjcgQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+
Cis8ZGVmcz4KKzxmaWx0ZXIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBpZD0iYmx1ciIg
eD0iMCIgeT0iMCIgd2lkdGg9IjQwIiBoZWlnaHQ9IjE0MCI+CisgICAgPGZlR2F1c3NpYW5CbHVy
IHN0ZERldmlhdGlvbj0iMTAiLz4KKzwvZmlsdGVyPgorPC9kZWZzPgorPHJlY3QgeD0iMjAiIHk9
IjIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgc3R5bGU9ImZpbGw6Z3JlZW47ZmlsdGVyOnVy
bCgjYmx1cik7IiBvbmNsaWNrPSJjaGFuZ2VGaWx0ZXJXaWR0aCgpIi8+Cis8dGV4dCB5PSIxNTAi
PllvdSBzaG91bGQgc2VlIGEgZ3JlZW4sIGJsdXJyZWQgcmVjdGFuZ2xlIGZyb20gMjB4MjAgd2l0
aCB3aWR0aC9oZWlnaHQgMTAwPC90ZXh0PgorCis8c2NyaXB0PgorICAgIGZ1bmN0aW9uIGNoYW5n
ZUZpbHRlcldpZHRoKCkgeworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgi
ZmlsdGVyIilbMF0uc2V0QXR0cmlidXRlKCJ3aWR0aCIsICIxNDAiKTsKKyAgICAgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLm5vdGlmeURvbmUoKTsKKyAgICB9CisKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKSB7CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsK
KworICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgICAgICAgICBldmVudFNl
bmRlci5tb3VzZU1vdmVUbygyNSwgMjUpOworICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VE
b3duKCk7CisgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVVwKCk7CisgICAgICAgIH0KKyAg
ICB9Cis8L3NjcmlwdD4KKzwvc3ZnPgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2
Zy9jdXN0b20vcmVsYXRpdmUtc2l6ZWQtaW5uZXItc3ZnLWV4cGVjdGVkLnBuZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10
eXBlID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9yZWxhdGl2ZS1zaXplZC1pbm5lci1zdmct
ZXhwZWN0ZWQucG5nCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjptaW1lLXR5cGUKICAgKyBhcHBsaWNh
dGlvbi9vY3RldC1zdHJlYW0KCgppVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBeUFBQUFKWUNBWUFB
QUNhZG9Kd0FBQURPMmxEUTFCSlEwTWdVSEp2Wm1sc1pRQUFlQUdGCmxFdG8xRkFVaHYrTUtZSzBn
cWkxRnBUZ1FvdTBKVDdRaWxEYmFiWFdrWEVZKzlBaXlEUnpaeHBOTXpHWkdSK0lTRUhjK1ZxS0d4
K0kKaXlyaVFycFFjS1VMa1VMcmExRUVjYVVpaUVJM1VzYi9KdTFNS2xZdkpQbHl6bi9QNjRZQVZR
OVRqbU5GTkdEWXpydkpycWgyNlBDQQp0bmdDVmFoQk5iaFNodWUwSnhMN2ZhWldQdWV2NmJkUXBH
V3lTY2FLOVIyWStMUnQ5ZjFMajJMdjY1NzIrcDc1K25sdk5TNFRBb3BHCjY0cHN3RnNsRHdhOFYv
TEp2Sk9uNW9oa1l5aVZKanZrUnJjbjJVRytRVjZhRGZGZ2lOUENNNENxTm1weWh1TXlUbVFGdWFW
b1pHWE0KVWJKdXAwMmJQQ1h0YWM4WXBvYjlSbjdJV2RER2xZOEJyV3VBUlM4cnRnRVBHTDBMckZw
ZnNUWFVBU3Y3Z2JFdEZkdlBwRDhmcFhiYwp5MnpaN0lkVHFxT3M2VU9wOUhNOXNQZ2FNSE8xVlBw
MXExU2F1YzBjck9PWlpSVGNvcTlsWWNvcklLZzMyTTM0eVRsYWlJT2VmRlVMCmNKTno3RjhDeEM0
QTF6OENHeDRBeXg4RGlScWdad2NpNTlsdWNPWEZLYzRGNk1nNXAxMHpPNVRYTnV2NmRxMmRSeXUw
YnR0b2J0UlMKbHFYNUxrOXpoU2Zjb2tnM1k5Z3FjTTcrV3NaN3RiQjdEL0xKL2lMbmhMZDdscFdS
ZEtxVHMwUXoyL3FTRnAyN3lZM2tleGx6VHplNQpnZGRVeHQzVEc3Q3kwY3gzOXdRYzZiT3RPTTlG
YWlKMTltRDhBSm54RmRYSlIrVThKSTk0eFlNeXBtOC9sdHFYSU5mVG5qeWVpMGxOCkxmZTJuUm5x
NFJsSlZxd3pReDN4V1g3dEZwSXk3enBxN2ppVy84Mnp0c2h6SElZRkFSTTI3elkwSk5HRktKcmd3
RVVPR1hwTUtreGEKcFYvUWFzTEQ4YjhxTFNUS3V5d3F1dkNaZXo3N2UwNmd3TjB5ZmgraWNZdzBs
aU5vK2p2OW0vNUd2Nm5mMGI5ZXFTODBWRHdqN2xIVApHTC84blhGbFpsbU5qQnZVS09QTG1vTDRC
cXR0cDlkQ2x0WmhYa0ZQWGxuZkZLNHVZMStwTDNzMG1VTmNqRStIdWhTaFRFMFlaRHpaCnRleStT
TGI0SnZ4OGM5a1dtaDYxTDg0K3FhdmtlcU9PSFptc2ZuRTJYQTFyLzdPcllOS3lxL0RralpBdVBH
dWhybFUzcWQxcWk3b0QKbXJwTGJWTmIxVTYrN1ZUM2wzZjBjbFltVHJKdWw5V24ySU9OMC9SV1Ry
b3lXd1QvRm40eC9DOTFDVnU0cHFISmYyakN6V1ZNUy9pTwo0UFlmZDBqNUwvd05BWVVWRFh4TE96
c0FBQ0FBU1VSQlZIZ0I3TjBIbkJUbC9mang3M0ZIT1k1MjlDNUZFQkdsaUdLQktEWnNtTmhMCnJE
SEdtcWd4dHNRMGsyaGk5SmRFL2liR21tZ1VVZXhkc1dJRFFVV3FJTDFJNzUyNzIvOThSK1ljbHQz
WjJaM1oyWm5aei9BNmRuZm0KbWVmNVB1OW5ibTYvTzJWTEVzWWtUQWdnZ0FBQ0NDQ0FBQUlJSUlC
QUFBSjFBbWlESmhCQUFBRUVFRUFBQVFRUVFBQUJVNEFFaEEwQgpBUVFRUUFBQkJCQkFBQUVFQWhN
Z0FRbU1tb1lRUUFBQkJCQkFBQUVFRUVDQUJJUnRBQUVFRUVBQUFRUVFRQUFCQkFJVElBRUpqSnFH
CkVFQUFBUVFRUUFBQkJCQkFnQVNFYlFBQkJCQkFBQUVFRUVBQUFRUUNFeUFCQ1l5YWhoQkFBQUVF
RUVBQUFRUVFRSUFFaEcwQUFRUVEKUUFBQkJCQkFBQUVFQWhNZ0FRbU1tb1lRUUFBQkJCQkFBQUVF
RUVDQUJJUnRBQUVFRUVBQUFRUVFRQUFCQkFJVElBRUpqSnFHRUVBQQpBUVFRUUFBQkJCQkFnQVNF
YlFBQkJCQkFBQUVFRUVBQUFRUUNFeUFCQ1l5YWhoQkFBQUVFRUVBQUFRUVFRSUFFaEcwQUFRUVFR
QUFCCkJCQkFBQUVFQWhNZ0FRbU1tb1lRUUFBQkJCQkFBQUVFRUVDQUJJUnRBQUVFRUVBQUFRUVFR
QUFCQkFJVElBRUpqSnFHRUVBQUFRUVEKUUFBQkJCQkF3TmNFWk9QR2piSnc0VUpVSXlTd2F0VXFt
VFZyVmw0aXJxNnVsaGt6WnFTdDIrKzI4N245SmZmRjc5anRTTnUyYlpPUApQdnJJUGl0eXp6ZHQy
dVJMek1udXlaWHFtQzlldkRoNXRpK3Z0VzQvcDN4dW54cG5wdTBtazZYVjEyKysrVWJlZnZ0dFdi
MTZ0U1J2CjU4bHRKTCsyNmlqVVk3Nk5uZnJsdGUyd1dUcjFOZGRseWR0VGNqMWVEWlByaS9ycnNI
aTQzWGY0NFIyV1B2dlJGK3B3RnNpWWdKeDQKNG9uU3JsMDdPZm5raytXODg4NlQwdEpTNmQ2OXUv
endoeitVWTQ0NVJ1clhyeStQUFBLSWpCNDkyaXozNktPUE9yZkkwbEFKL1BhMwp2NVZUVGpuRjk1
ZysvL3h6MlgvLy9lWFNTeTlOVzdlZmJlZHorMHZWRno5anR3Tk5tREJCRGo3NDRMeU1pYjJkZkQ1
Lzk5MTM1ZlhYClgvZmNSQ3AzZTZVUFAveXd0R2pSUXA1NjZpbjdiTitlNjRjcHVtL3pZOHJuOXFu
eFpkcHVNbGxhZmZ6SFAvNGh6enp6akprQTkrN2QKVzI2NTVaYmFiVEc1amVUWFZoMkZlc3kzc1ZP
L3ZMWWROa3Vudm5wWjVyVGY5R3JvSmE0d3Joc1dEN2Y3RGo4TXc5Sm5QL3BDSFprRgpNaVlnRFJz
MmxHblRwc216eno0cm1selVxMWRQdnZlOTc4bGpqejBtYjd6eGh2enZmLytUTFZ1MnlHbW5uU2Fk
TzNmTzNDSWw4aTZnCm56Ni8vUExMcnRxNTQ0NDdaTXlZTWE3S1psT29mLy8rNW5aU1ZsYVdkald2
YmR2N21jL3RMMVZmdk1hZURtWGd3SUZtb3A5dWVTSG4KMjczVHhYSHZ2ZmVhUjlUOFNHcFR1ZHZi
dmVpaWk2UjU4K2IyV2I0KzMzdnZ2V1hJa0NGeStlV1hTeUtSOEZSM1ByZFBEU3pUZHBQSgpVdXZZ
c0dHRDNIVFRUWExGRlZlWWljZjc3Nzh2ZDkxMVYrMytJYm1ONU5kYWg5OVRwbTNPdmp6ZnhrNTk4
OXAyRUpaTzhRZTFMSG0vCkdaYnhDNnIvMmJUamRadktwaTJuc203MkhVN3JaMXJHTnBCSktMN0xN
eVlnVjE5OXRWUldWcVlWK01FUGZpQzZnZXFrYnpaTFNrclMKbHMxbFFhNS8rTE5kYjhlT0hibUVs
M0lkUCt0SzJZRER6TzNidDh0Wlo1MGxFeWRPM0sxVXFyZzB3V3pUcHMxdVpiM01xS21wTVZmWApv
MlYxNnFUZnhMeTBuYXFmK2RqKzB2WEZTK3laYlBQUmoweHRabHFleWp0NW5mbno1OHVERHo0b2wx
eHlTZktpckYrbmMwK3VLTjlXClhidDJOZmQvdVJ4bFNkNEg1VHZXZFBXN3Rad3laWXJvcVJiV1By
eG56NTZTdkowbnQ1SDhPbmw4dkx6T3RNMmxXcDdQZURMMXhXdmIKWHRmWCtGTHQ0elBGblc2NW4z
VlpiZGkzSnovSEw1dFlrMzh2cmRqQzhKZ2NtOXR0SWxQL2srdDEyMWUzK3c1N2ZVNXRKY2ZwNXpa
ZwpqNEhuMFJCSS8rNXdaL3lISG5xb1kwL3ExcTByQng1NFlHMFovUVAycTEvOXlqd2FzczgrKzhq
czJiTnJsK201eGRkZGQ1MGNjY1FSCk1tREFBTWZ6M0VlT0hDbjZhZXFkZDk0cGh4eHlpRm5ISzYr
OEltM2J0cFVERGppZ3R0NVBQLzFVOXRoamo5cFA2VFNiUHYvODgrV2EKYTY2UlljT0d5Wmxubmlt
MzNYYWI2S2Q1cWFZMzMzeFQvdktYdjhqZi8vNTMwYjVPbWpUSkxEWisvSGp6alpTZWd2Q0hQL3hC
V3JacwpLZVBHalJPblBxU3JLMVc3R3VjdmYvbEwrZXRmLzJvbURQckprRFd0WDc5ZXJycnFLcm5o
aGh2azFGTlBOWjlyZVozZWV1c3RzMCsvCitNVXY1TDc3N2pOUGg5dHJyNzFrenB3NTV2SVJJMGFJ
eHZIODg4L0x4UmRmTExwZXVyajAzUG5iYjc5ZERqcm9JRmQxYXlHbi91dTUKbS9wcHNYcGZlZVdW
b21PVGJzcWxiWHRkcWZxcHkvM2EvcHo2a2h5N20rM1NIcnMrZDNKMFczYm16Sm1pMjhHMTExNXJq
cmYrVHVscApieDkrK0tHNUhlc25hSHI2NUIvLytNZmFLdE8xbTh0MlZWdnB6aWY2dTZKdFdsTXV2
ME5PN2xhOXlZKzZqZi84NXo4M0UyazEwRGZTCjF1VDB1L1RaWjUrWit3ZzkxZWk5OTk0VGZkMjNi
MS96U0srMXZqNXFRcTk5cTZxcXNzOU8renpWdnNzcTdMUjlPc1dxQ1ZDSERoMUUKdDN1ZFJvMGFK
ZnA3ZjlsbGwxbFY3L2FZamVWRER6MGt0OTU2cTluSG4vM3NaM0xqalRlYTE5Ylk5dys3TmVCaWhw
YytwZnNkdDVwTgp0OXpKT04zMmI5VnBQVDczM0hQbVBsK1A1SzFkdTlZOEZhOVZxMWJtYWNmVzM3
Uy8vZTF2NWxGZXZYYkRtcHphZHJLdzFyYy91bzFWCjEwbTNqOC9sZHpCZFhmYlk5SG0yUnNuN3pW
ekdMemtHdDdIcWVycWZTUGZlSUJlbmRPT1RhVithM0FkOW5lcytJMTMvOVJSWWZlK2oKKzYzcnI3
L2VmTi9Vc1dQSFhVNk5UUmUveHBQTnZzTk5XK25pOUdNYjBIaVpJaXBnWkt0WlRRMGFORWhjZU9H
RktkZlpiNy85RXYzNgo5VXNZYi9ZVHhzYWRNUDZ3SjR3M3dXWlpJL05OSEh2c3NRbGp3MDRZV1hY
Q2VJT2FNTTdmVGhnWHBlMVdsNUVWSjR3M0VyWHpqVGRaCkNXUEhicjQyL3VBbWpHdFFhcGRwV2VO
NmxOclhSaUtSTUpJUDg3Vng2cGllTjVFd2twaUVjVDUzYlJucnlkYXRXeFBHRzdURU8rKzgKWTg3
Ni9lOS9uekQrNEpqUGpTTUlabnpHRzVMRUN5KzhrRENPQkNXKyt1cXJ0SDF3cXN0cXovNTQ1SkZI
Sm95ZG5qbkxPTWZTak5ONAp3MjdhR0FsWDR2SEhIemVYcVp0eFRVRENTS2JNMXl0WHJrejA2dFhM
L0RGKzhSUEdUajFobkNwUzY2eUZ1blRwa2pDU0FMTzhVMXpHClJhWUpJOUZKR01tVnE3b3pqYUhH
YUp6RGFkYWxZMnpzOEJKSEgzMjArVHI1djJ6YlRsNWZYOXY3cWEvOTJ2NjBMcWUrSk1ldTVUTnQK
bDFyR21qSTUzbjMzM1FrajBUYUxPNVdkTjI5ZXdqaDFJOUd0V3pkekd6WGVDQ1hPUHZ2c2hQR3B2
Ym5ORzIrY0VuLzYwNS9NYlV0Lwp6NXpxeW5hN3N2cGlmMnpjdUhIaXBaZGVxcDJWN2UrUXJ1amtY
bHV4N1lsdVkzMzY5RW5vNzhJSEgzeVEySFBQUGMzdFF2Y0x1ZzA2Ci9TNXBOY2IxS3FiUGl5Kyth
Qm9hZnhCdHRYLzdWTjJNVTA4VEgzLzg4VzdMa21jNDdidWN0azgzc1dwZmRUeXRTYTFPUC8xMDYy
WEMKdnQzb3pHd3RuM3p5eVlSeHhMSzJ2bFRiZVhJYnlhOXJWemFlK05HbjVOOXhlLzM2UEhtNWs3
SFQ5cDljcjc0MlB1amE1VytkN3JNdgp1T0NDMnFLNnpSalhDTlcrZG1yYmpZWGRNcHRZbmZieDJm
NE9PdFZWMjFIYmsyeU1VbTFQMll5ZnJWbnphYmF4T3IwM3lOYkphWHpjCjdFdnRmY2wxbitIVS8w
V0xGaVdNTXh2TXZ3MzZQa1AzWGNhSFV3bmpRd3l6YWFmNHRVQTIrNDVNYlRuRnFXMTUyUVowZmFi
b0NtUTgKQXBKdFhuWENDU2VZNTAzcmtZcWhRNGZXM2dYSmVFTnRmcnBtN0xUTlQrOGFOV3BrM21F
bDFaRUpQUmY1eXkrL3JMMjRWQzlrTm9qTgpVUFNUZGYwRXl2aUZNbCsvOXRwcll2d1JyZzFUcjBu
Um94VTY2VG5jZW5xUmZpcWwyWC95cE5lejZIbmsxaWxrVFpzMmxlblRwNXZGCjlKTlUvWVRSZUhN
anc0Y1BONCtRZlBMSkoybjc0RlJYY3J0NjdZeTJvMGR5ZERLU052TmFHdVBOazNudGhoNXBzZnFr
aDJCLzlLTWYKbVo5Y2pCMDcxcnpvVms4TDJYZmZmYzFQNDlxM2IyODY2NmZoOXNrNmpjSXBMajIx
VG8wc1c3MmcxNmx1cHpFMDN2eVpuOElaQ1ljWgpoclovL1BISDIwUGE1WG0yYmUreXN1MkYxVTly
bGgvYlg2YStKTWV1YldmYUxxMzQ5TkhKMFY0dVUxazk4cWZiZ1k2aGJxTTYxdnBvCi9FRXdqelRx
OXF4SDBuUXlraFhIZGpPTnZWbUo4Vit5dHpWLzZkS2w1alVFOXRQNXN2MGR5dVJ1dFpYOGFMd3BO
SDhYOUFqbW4vLzgKWjdPditqdW0xMEU1L1M1cFBZY2RkcGo1cWVqTk45OXM3cGYwK29ma1NYOEhk
Y3lUZjhlU3krbHJwMzJYTGsrM2ZicUoxZmp3WnhmLwo4dkx5WFY1ci9kYVVxNlcxdmo2bTJzN3R5
ek05OTZ0UDZiWTVxLzNrNWVtTXMvbTkwN3IxYjRQK2ZkRy9Iem9kZnZqaFlud1lKY1liClJ2TzFi
bU42aE5vK3BXdmJqWVc5bm14aWRkckhaL3M3NkZTWFBUN3JlVFpHNmJZbnQrTm50V2s5Wmh1cjAz
dURiSjJjeHNmdHZ0VHEKUjY3N0RLZis2OUZTZmM5ejBra25tZTh6OUN3SDQ4TUw4NmptNU1tVEhm
OFdaTHZ2eU5TV1U1eVdRYTdiZ0xVK2o5RVVTSCtGY0k3OQpzVzlJK2diSU9uVkkzd2pvUmVvOWV2
UXdhOVpIZlpPZDZzSjF2YkJVMzFTY2NjWVpZbnlpSy8vODV6L051Mi9waXBvUTZCdDN2VHVOCjNp
MUlELy9wb1hCcjB1UkRUMEd4SnQwWjZFWHpxU2FOVlg4cHYvamlDL01QalNZOWV1alJtdlFQdnE1
dlRVNTl5RlNYVlljKzZpLzQKb0VHRDdMUE11NHJwREQxdFNRLzE2NXNlYTdMS2FweDZVYXkyWlhm
V1pNNStHb0N1WnkzUEZGZHlYY212N1hVNzlmLysrKzgzM3dnMwphZExFQ3RzOGY5eUtvM2FtN1Vs
eVc4bXY3VzNiVnR2bGFYTDk5dGU1Ym4rYUZPdWJlcWUrSk1lYWFidTBCKzNrYUMrbnp6T1ZUWTVE
CnpleVQ5VnB2ZjVsTFhlbTJLM3NiK256dTNMbm1MTHVaenNqbWR5aVhiVWpiTUk2ODZJTTVXYWNU
Nm9jVTJ1ZE12MHU2a3A0R3FkYzcKbkh2dXVXbXZXZEkydnY3NjYyOGJjZmpmYWQrbHE2WGJQdDM4
M2pzMHU5c2lOOXZ3Yml1bG1KRzhmYVVva25hV1gzMnltNlZxTEhtNQovWFd1K3dCdFIwKzkwOU1i
OVpiRStzR0t2bkhUNUVQLzV1aHB4RHJwTlEzMktWM2IyVnBrK2wxTmJyTVFmOGMwaG15TjFNZHVw
SFU0CnZiYVBuNWExVDdxZVU3L3RaZlY1cHZjRzJleXJmdmU3M3ptK24wbnVwOVBmc2x6M0dabjZy
OHZ0MTJEcWV3ZE5CdlFVTWIzMWZycjMKWTduc2g1M2EwZy9KTW8yVHJtK2Y3SytkdGdIN09qeVBu
c0IzNzNMekhQdTZkZXZNVDlyMUhIVTMwd01QUENCNlJFQnYyNmR2dlBVUApxblZrUTQ4STZQVVRl
czV5UlVXRjZIVW8xcVNmWk9xNWovcExwanNVL1NXejNwUllaZXlQK291aDU2YmVjODg5NWpVbjl1
VEZYazZmClorcUQyN3FNUTdUbStlYko5ZXRyNDlDb0xGdTJ6RHp2dUZtelptWVJQVWRkRXhKZDVu
YXkvd0s3alN0VDNVNzlYN0praWVpUEhrMngKdDIxL25xbitYSmE3cmQ4cDl1UjJjKzJMMDNacGJ5
T2JXTElwcTIzb0h4eTdpZjE1dG5YWlk3YWUyK3V6NXVtalhtdWkwNG9WSzh3Mwo4K2FMRlA4NXha
Q3J1NzBaL1RST2t3WDl0RldQeXJqNVhUSk9FWkRXclZ1YlIwOTBERFZwU1o2MFRISnlsVnpHZXUy
MDc3TEtKRC82CjlYdHYxZXVIcFZWWHJvOSs5U25kTm1mRmxXbTVWYzVwMjdQSzJCOTFHOUlqaW5y
M1I5Mm1CZzhlTEhyVVNULzlYck5telc1SFArenIKSmovUDFpTGJXTFBaeDJlcU81dTYvREJ5TzM3
SnB2bzZtMWl6ZlcvZzVPUzBMRldjbWVibHNzL0l0dis2N1dyQ3JEOU84ZnV4NzdDMwo1U1pPTDl0
QUpsdVdoMWZBOTFPdzBuVlZrNGxYWDMxVjlFSThhOUtMT3ZVQzN1Uko3Nyt2cDR6b0xTSDF0S2Zs
eTVlYk8zMnJuQjRWCjBUY0UrbWJCT2xYSldxWkhSZlJDYUwzQVNzc1k1NlJiaTNaNzFJdE9yWXZN
M2Z3Q09QVWhtN3FNYy9aRjd4aGt2MWhXLzBEcGFXWDYKU2JxK2lkZUw0cXhKRXlTMTBtVnVKK3Uw
cW16aXlsUzNVLy8xZENEOW8yenZVNmI2L0ZodTlUTlRYVTZ4SjYrYmExK2N0a3Q3RzluRQprazFa
ZXh1cG52dFJWenB2TmRNL092cDc1elE1eFpDcnU3MDkvYjNTbzVoNlcxTzN2MHUvK2MxdnhMZ096
THlscjE1OG5XclNmVkNYCkxsMVNMZHBsWHFaOTF5NkZiUy9jeHVyMlFuZy9MRzNoNWZUVXJ6Nmwy
K2Fzb0RJdHQ4bzViWHRXbWVSSDQzcEg4M3RSOUNpOFB0Y2oKODNvYWxwNmFsZTdJZW5JZCt0cXRo
YlZ1TnJGbXU0OTNxanZidWpSZXIwWnV4OCt5c1I2empUV2I5d2JhaHBPVDB6SXJQcmVQdWU0egpz
dTIvZnAyQzNsQkJ6Nmh3aXQrUGZZZTlMVGR4NXJvTnVEV21YRGdGc2twQTlJK2ZucEtobnlxbW12
UVB2NTdQYUUzNjJqcWxTYi9FClVMTnVmWk9teVlXZVQ2MTN4TEt1ZzdEVzBVZE5VcDU0NGdsemxs
NmZZVnk4THAwNmRhb3Rvb2ZrOU80a2VwcUZ2dEd3VDNySEJ6MmsKZWRSUlI1bS9hUFpEa1BaeStu
ekJnZ1htTFAzV2FmMHVFMDJHOUpReFRRYU1pd2JOdysxVy9GclFxUStaNmpJYjJ2bmZPZWVjWXg2
NQowVWM5SFV1djdkQzcyZWhkdy9TY1lrMVE5SnhoYTlJdnFkSzc4MmlmZE5MRXlqb3ZXVitydWNa
c1RkcC9QVjFFZjZuMTZKRk82ZnFvCjYycWZ0Yjg2T2RYdDFIOGRWLzFTU3YzZUFKMDBQdDN4Nktj
cG16ZHZOdWNsLzVkTjI4bnI2bXQ3UC9XTnIxL2JuNXUrSk1ldThUaHQKbDdyY21wd2N0WXh1aTlh
cFQ1bktham43bTFJZFArdjNWT3V5emxmWGVabnFjaHA3clN2WlcrZFpreWJ3ZWg1MWNnS2k3YnY5
SFhMagpiclZuZjdUNnFQUDB2SHo5dmRKVDZOejhMajM5OU5QbVhmejB5SW1laXZXZi8vekgvSjIw
MTY5SGRmVDNROS9BNkdSY1RHdSs2ZEtrCkpYbHkybmM1Ylo5dVl0VjkzYnZHbHp6cXRxZlhrT2sr
MU81dDMyNXlzZFFQRUxTZldyODFKVy9uOWphMFRQSnJhejE5OUtOUFR0dWMKdHBHODNNazQwL2F2
OVNWUHhzVzRvcWZQNkttNGVoUkVyd1BSSTJSNkNuSHloMVpPYmJ1eHNGdG1FMnVtdnozWi9BNW1x
aXZaUjE5bgpZNVM4UFdVemZzbHRaeHRycHZjRzJUaGxHcDlNKzFKN1gzTGRaN2pwdjM1NGFVMTZK
eXA5TDZYdkpaeml6Mlhmb1cya2F5dFRuRjYyCkFhdHZQRVpVd0hpVDZtb3l6bjlOR0JlY21YZU1N
WGJFQ2VPMnNRa2pvYWhkMTdndHBIa0hGYjFEay9IR002RjNsVEF1NGs0WTN3V1IKTUc3WFo1WXov
cmduakU5SnpUcU1uZmd1ZDh5cHJjaDRZbnlLYnQ0WndmalV5VnpYdURBMFlieUJzaGRKR0tkWUpZ
eGJSTzR5VDE4WQp0K00wNnplR3czdzBUdEV5NHpiZXFPMVcxbmhqbkRBU25JUnhxbGJDZU5PU01M
NlFMMkVjbmpUdkxHTjh5N0w1WE84a1lkd2lyM2JkCmRIMXdxc3ZZc2RXdWJ6MHhraDN6TGhVYXA5
N1Z5MGd5ckVXSnFWT25tbmYyMFR0WjZWMkZqRlBLRWtheVpTN1hPM1laYjNUTnUzZnAKblMzMERs
cDZGeVRqM0U3elRrQmE2TmUvL3JYWmQrMlQzcUVpWFIrTjVDZGhmQnBpbHRVN2hSbHYzakxXbmE3
LzJxN3haczVjM3pqdApMV0djdXBBNCtlU1R6YnNRR1JmLzZlSmRKdVBJVnRadDcxS0I4Y0xlVCtQ
N0ozemIvclFkcDc0a3gyN2Z0dEp0bDhteHAzUFV1blc4CmRMdlFPekpwM2VuSzZ2anIzYktNMDRj
U3hubnFDZU5Xek9aZDJuUmQ0OGhlUXUrQ1paeW1hTlpsdkFFeXQ0VjBkV1c3WGFXNmU1MXUKUDha
dGVHdTdhcHk2a3RYdlVDYjMyb3B0VDR4YlpKdDNnVE51Tld6ZUlVcC8vNDAzY3JVbG5INlhkS3gw
UDJUY2V0c3NiN3lwVHhpbgpPaWFNRHpzU09nN1dwTnVXdlYvNk82ZDNpOUs3eWlSUDZmWmRidmFQ
VHJGcU96ckd4aHZoaEhIamlZVHhaaXBoSE9sTjZKMlo5QTVnCnFiWWJwMjA0T1c3ZGx2U09ZYnJ0
R05jOW1QdWI1TzNjK0tCa2wyMHorYlg5OThDcTMwdWZ0QTc3NzNpcWJjNiszTzk5Z05VSHRUWSsK
MExGZW1qRlorMk5ycHRmeFRUVis2WDVYclRhdFI2ZS9QZm4rTzJiRjRNWW9lWHZTN1NYYjhiUGEw
MGVuZnFmNm0rdjAzaUNYZlZXNgo4WEd6TDdYM0k5ZDlScWIrNngwUzlXK0pjU1pKd2pqS216anV1
T01TZWljeWEwb1h2eTdQWnQraDVaM2F5aFNubDIxQTIyYUtyb0IrClNoN29wRHNHM1hrbkp4VDJJ
SXhQejgyWHhpZHk1bTE3N2N2c3o0MVBHZXd2emVmNnB0MzRaREJoWEZDZU1LN25TQmhIRWhMR1lY
UHoKemZWdWhYZk8wRjhRYTBxMTQ3S1dXWTlPZmNpbUx1UFR4b1J4bnJwVjdXNlB4b1ZpNXB2SzNS
YTRtR0Y4YXJ0THFXemkybVhGRkMrYworcTlqWjdWdGZ5T1lvaHBmWmxsdHVhM01LZmJrT25MdFM2
cnRNcmx1ZloxTkxObVVUZFdXZlo2WHVqSjVHM2NCU2hnWHBOdWJTL25jCktZWmMzUFgzeUdtZjR1
VjN5YmlUalBtaGdMMGptdHdaRjZMYVo1blAzZTY3ZGx2Uk5zTXBWbjNUWnYwdXEyR21LUmZMVEhY
bXN0eEwKbnpKdGM1bVdKOGZydE8wbGw5WFh5Yi9QeWE5VHJlTTB6OGtpZWIxc1lyVzJDNjNEemJi
aFZIZTJkU1diSkw5TzdwZjlkYmJqWjE5WApuN3VOTlpmM0JscS9rNVBUTWwzWHplUjFuNUd1LzVv
VWFOSmxISm1yL1p1Y0hJOVQvTm5zTzl5MGxTNU9qY25yTnBEY0wxNUhRNkJFCnd6USs5WXJGcEYv
TVo5ekx2dlpMQ2ExTzZWMUxqS01NNW5tUDFqd2VFVURBZndFOURLODNoOUF2OXRSclFxSSs2VFZp
ZWdla3c0emIKOWRvbi9lSSsvUUpXUGJlZkNRRUV3aTFRak84TjlQUjJ2VTdKT2kwNm55TVVaRnY1
N0FkMUJ5c1Fxd1JFYjVPb3Z3aDY1eEs5MjVhZQpVNnZYcTV4NDRvbm1UN0MwdElaQWNRcG9FcUpK
djk0a0lzcVQzbmxQYjF1WjZpNTZlcjJFM2dHSUNRRUV3aTlRYk84TjlGb3V2VzVXCjN3L3BOOWJu
Y3dxeXJYejJnN3FERjRoVkFxSjhlcUc3dm5IUVczRHFGeUhxM1I2WUVFQUFBUVFRUUtCNEJZcnB2
Y0YvLy90Zjh3dHAKZGJUMXBqWjZZWG0rcGlEYnlsY2ZxTGN3QXJGTFFBckRTS3NJSUlBQUFnZ2dn
QUFDQ0NEZ1JpQ3IyL0M2cVpBeUNDQ0FBQUlJSUlBQQpBZ2dnZ0VBNkFSS1FkRExNUndBQkJCQkFB
QUVFRUVBQUFkOEZTRUI4SjZWQ0JCQkFBQUVFRUVBQUFRUVFTQ2RBQXBKT2h2a0lJSUFBCkFnZ2dn
QUFDQ0NEZ3V3QUppTytrVklnQUFnZ2dnQUFDQ0NDQUFBTHBCRWhBMHNrd0h3RUVFRUFBQVFRUVFB
QUJCSHdYSUFIeG5aUUsKRVVBQUFRUVFRQUFCQkJCQUlKMEFDVWc2R2VZamdBQUNDQ0NBQUFJSUlJ
Q0E3d0lrSUw2VFVpRUNDQ0NBQUFJSUlJQUFBZ2lrRXlBQgpTU2ZEZkFRUVFBQUJCQkJBQUFFRUVQ
QmRnQVRFZDFJcVJBQUJCQkJBQUFFRUVFQUFnWFFDSkNEcFpKaVBBQUlJSUlBQUFnZ2dnQUFDCnZn
dVFnUGhPU29VSUlJQUFBZ2dnZ0FBQ0NDQ1FUb0FFSkowTTh4RkFBQUVFRUVBQUFRUVFRTUIzQVJJ
UTMwbXBFQUVFRUVBQUFRUVEKUUFBQkJOSUpsS1ZiVUR1L3BLVDJLVThRUUFBQkJCRElXaUNSeUhv
VlZrQUFBUVFRaUs5QTVnUkUrODRmai9odUFmUU1BUVFReUtjQQpIMkxsVTVlNkVVQUFnVWdLY0Fw
V0pJZU5vQkZBQUFFRUVFQUFBUVFRaUtZQUNVZzB4NDJvRVVBQUFRUVFRQUFCQkJDSXBBQUpTQ1NI
CmphQVJRQUFCQkJCQUFBRUVFSWltQUFsSU5NZU5xQkZBQUFFRUVFQUFBUVFRaUtRQUNVZ2toNDJn
RVVBQUFRUVFRQUFCQkJDSXBnQUoKU0RUSGphZ1JRQUFCQkJCQUFBRUVFSWlrQUFsSUpJZU5vQkZB
QUFFRUVFQUFBUVFRaUtZQUNVZzB4NDJvRVVBQUFRUVFRQUFCQkJDSQpwQUFKU0NTSGphQVJRQUFC
QkJCQUFBRUVFSWltQUFsSU5NZU5xQkZBQUFFRUVFQUFBUVFRaUtRQUNVZ2toNDJnRVVBQUFRUVFR
QUFCCkJCQ0lwZ0FKU0RUSGphZ1JRQUFCQkJCQUFBRUVFSWlrQUFsSUpJZU5vQkZBQUFFRUVFQUFB
UVFRaUtZQUNVZzB4NDJvRVVBQUFRUVEKUUFBQkJCQ0lwQUFKU0NTSGphQVJRQUFCQkJCQUFBRUVF
SWltUUZrMHd5YnFNQWlzMjdwTzVxK2JML1BYenBjVm0xZklxczJyWk5VVwo0OGQ0M0xoOW8yeXYz
bDc3VTFWVEpmVks2OVgrMUMrckw4MGFOSk1XNVMya2VYbHphZEd3aGJScjFFNzJhTGFIZEc3YTJT
d1hoajRTCkF3SUlJSUFBQWdnZ2dJQy9BaVFnL25yR3NyWjVhK2ZKbE9WVFpQS3l5ZWJqdEJYVFJP
ZXQzYlkyTC8ydEkzV2tYZU4yMHEyeW0relQKYWgvWnQ4MiswcWQxSDltMzliNVNXVjZabHphcEZB
RUVFRUFBQVFRUVFDQVlnWktFTVRrMlZWSWlrcUdJNC9vc2pKVEFsaDFiWk56aQpjZkx4d28vbG80
VWZ5U2VMUHBHVlcxYUdwZzg5bS9lVVF6b2RJZ2QzT3RoODFBU2xSTGRSSmdRUUNLY0FmMFBDT1M1
RWhRQUNDQlJRCmdBU2tnUGhoYVZxUGJMd3grdzE1ZmZick1uYitXTmxhdlRVc29XV01vMDFGR3pt
NjI5RXliTTloY2t6M1k2UjFSZXVNNjFBQUFRUUMKRkNBQkNSQ2JwaEJBQUlGb0NKQ0FSR09jZkkx
U0QzcnBrWTNSMDBhYlB3dldML0MxL2tKVlZpSWxjbERIZytUMDNxZkxxYjFQTmE4bApLVlFzdElz
QUFqc0ZTRURZRkJCQUFBRUVrZ1JJUUpKQTR2eFNyOTE0NlBPSFpOU1VVYkpvdzZJNGQ5WHMyNEh0
RDVUeis1NHY1K3g3CkR0ZU94SDYwNldCb0JVaEFRanMwQklZQUFnZ1VTb0FFcEZEeUFiVzdZZHNH
R1RsbHBKbDQ2TFVkeFRqVkw2MHZKL2M2V1g3VS8wZHkKVkxlanVHYWtHRGNDK2x3NEFSS1F3dG5U
TWdJSUlCQlNBUktRa0E2TTE3RDBMbFVqeG8yUUJ6NTdRTlp2WCsrMXV0aXMzNnRGTDduNgpvS3ZO
SXlNTjZ6YU1UYi9vQ0FLaEZTQUJDZTNRRUJnQ0NDQlFLQUVTa0VMSjU2bmRDVXNteU8xamI1Zm52
M3BlcWhQVmVXb2wrdFUyCmI5QmNMaDE0cVZ4NzBMWFNxcUpWOUR0RUR4QUlxd0FKU0ZoSGhyZ1FR
QUNCZ2dtUWdCU00zdCtHUDEzOHFmeit2ZC9MeTdOZTlyZmkKbU5kV1ViZENyampnQ3JuK2tPdEpS
R0krMW5TdlFBSWtJQVdDcDFrRUVFQWd2QUlrSU9FZEcxZVI2UmNFM3ZqbWpmTEsxNis0S2sraAox
QUlOeXhyS1R3ZjlWRzRlZkxNMGJkQTBkU0htSW9CQTlnSWtJTm1ic1FZQ0NDQVFjd0VTa0lnTzhO
S05TK1hYYi85YUh2N2lZVTYxCjhuRU1XNWEzbE44ZC9qdno5S3l5T21VKzFreFZDQlNwQUFsSWtR
NDgzVVlBQVFUU0M1Q0FwTGNKNVpJZDFUdmt6by91bE52RzNpWWIKZDJ3TVpZeHhDR3F2Rm52SmlP
Tkd5TkhkajQ1RGQrZ0RBb1VUSUFFcG5EMHRJNEFBQWlFVklBRUo2Y0NrQ3V1REJSL0lwUzllS3RO
VwpUa3UxbUhsNUVEaW56em55ZjhQK1Q5bzBhcE9IMnFrU2dTSVFJQUVwZ2tHbWl3Z2dnRUIyQWlR
ZzJYa1ZwUFM2cmV2a3VqZXVNNy9MCkl5R0pnc1JRekkwMnE5OU03amo2RHJsay8wdUttWUcrSTVD
YkFBbElibTZzaFFBQ0NNUllnQVFrNUlQNzl0eTM1Y0xuTHBTRjZ4ZUcKUE5MNGgzZmNuc2ZKZ3lj
OUtPMGF0NHQvWitraEFuNEprSUQ0SlVrOUNDQ0FRR3dFU0VCQ09wUmJkbXlSbThiY0pDUEdqekNP
ZVhEVQpJeXpEcE44ZjhxOFQveVZuN0hOR1dFSWlEZ1RDTFVBQ0V1N3hJVG9FRUVDZ0FBSWtJQVZB
ejlUa3pGVXo1YlFuVDVQSnl5ZG5Lc3J5CkFnbGNNdUFTdWZ1NHU2VkJXWU1DUlVDekNFUkVnQVFr
SWdORm1BZ2dnRUJ3QWlRZ3dWbTdhdW5KcVUvS2oxLzRzV3pZdnNGVmVRb1YKVHFCZm0zN3kxQmxQ
eVo3Tjl5eGNFTFNNUU5nRlNFRENQa0xFaHdBQ0NBUXVRQUlTT0hucUJxdHJxdVhuci85YzdoNS9k
K29DekEybApRSk42VGVUUlV4NlZsQUI4YlFBQUlBQkpSRUZVay9ZNktaVHhFUlFDQlJjZ0FTbjRF
QkFBQWdnZ0VEWUJFcEFRaklqZTVlcU1wODZRCk4rYThFWUpvQ0NGYmdUcFNSMjQvNm5hNTRkQWJz
bDJWOGdqRVg0QUVKUDVqVEE4UlFBQ0JMQVZJUUxJRTg3djQxNnUvbHVHUEQ1Y1oKcTJiNFhUWDFC
U3h3UWQ4TDVMN2g5MG05MG5vQnQweHpDSVJZZ0FRa3hJTkRhQWdnZ0VCaEJFaEFDdU51dGpwKzhY
ZzUvckhqWmRXVwpWUVdNZ3FiOUZCamFaYWc4ZjliejByaCtZeitycFM0RW9pdEFBaExkc1NOeUJC
QkFJRThDSkNCNWdzMVU3WnV6MzVSVFJwMGlHM2RzCnpGU1U1UkVUR05CMmdMeDY3cXZTdXFKMXhD
SW5YQVR5SUVBQ2tnZFVxa1FBQVFTaUxWQW4ydUZITS9xbnBqNGxKejUrSXNsSE5JY3YKWTlTZkxm
MU1CajgwV09hdm5aK3hMQVVRUUFBQkJCQkFBSUZpRStBSVNNQWpQbkx5U0RudjJmT2tPbEVkY01z
MEY3VEFIazMza0hjdgpmRmU2Tk9zU2ROTzBoMEI0QkRnQ0VwNnhJQklFRUVBZ0pBSWNBUWx3SUVa
TkdVWHlFYUIzb1p1YXYyNitEUDNQVUk2RUZIb2dhQjhCCkJCQkFBQUVFUWlWQUFoTFFjT2hwVno5
ODVvY2MrUWpJT3l6TnpGczNUNGIrZDZnc1hMY3dMQ0VSQndJSUlJQUFBZ2dnVUZBQlRzRUsKZ0Y4
dk9EL2g4Uk5rUjgyT0FGcWppVEFLOUdyUlN6NjgrRU5wWHQ0OGpPRVJFd0w1RStBVXJQelpVak1D
Q0NBUVVRR09nT1I1NENZdQptV2plN1lya0k4L1FJYTllditkRmJ6eXdlY2Zta0VkS2VBZ2dnQUFD
Q0NDQVFINEZTRUR5NkR0NzlXenplejY0MVc0ZWtTTlU5Y2VMClBqYS84YjY2aGhzUVJHallDQlVC
QkJCQUFBRUVmQllnQWZFWjFLcHUzZFoxNWlmZXl6Y3Z0MmJ4aUlDOFBPdGx1ZmIxYTVGQUFBRUUK
RUVBQUFRU0tWb0FFSkE5RFg1T29rYk9mUGx2MHRCc21CSklGUm93ZklROTg5a0R5YkY0amdBQUND
Q0NBQUFKRklVQUNrb2RodnZITgpHK1hWcjEvTlE4MVVHUmVCSzErK1VqNVk4RUZjdWtNL0VFQUFB
UVFRUUFBQjF3TGNCY3MxbGJ1Q2VydmRNMGFmNGE0d3BZcGFvRTFGCkc1bDAyU1JwMDZoTlVUdlEr
WmdMY0Jlc21BOHczVU1BQVFTeUYrQUlTUFptYWRmUWk4NS8vTUtQMHk1bkFRSjJnV1dibHBuZkRh
T24KN0RFaGdBQUNDQ0NBQUFMRklrQUM0dE5JYjYvZUxtZU9QbFBXYjEvdlU0MVVVd3dDYjgxOVMv
NzAvcCtLb2F2MEVRRUVFRUFBQVFRUQpNQVZJUUh6YUVHNGFjNU5NL0dhaVQ3VlJUVEVKL1A2OTMz
TTlTREVOT0gxRkFBRUVFRUNneUFXNEJzU0hEZUQ5K2UvTDRmODVYQkxHClB5WUVjaEhvWHRuZHZC
NmtvbDVGTHF1ekRnTGhGZUFha1BDT0RaRWhnQUFDQlJMZ0NJaEgrRTNiTjhsRnoxMUU4dUhSc2Ro
WG43MW0KdHR3NDVzWmlaNkQvQ0NDQUFBSUlJRkFFQWlRZ0hnZjUramV2bHpscjUzaXNoZFVSRVBu
bnAvK1VkK2ErQXdVQ0NDQ0FBQUlJSUJCcgpBVTdCOGpDOG55ejZSQTU1OEJDT2ZuZ3daTlZkQlhv
MDd5R1RMNThzOWN2cTc3cUFWd2hFVllCVHNLSTZjc1NOQUFJSTVFMkFJeUE1CjBsYlhWTXZsTDEx
TzhwR2pINnVsRnBpMWVwYmM4ZUVkcVJjeUZ3RUVFRUFBQVFRUWlJRUFDVWlPZzNqUHAvZklGOHUr
eUhGdFZrTWcKdmNCdFkyK1RPV3M0clMrOUVFc1FRQUFCQkJCQUlNb0NKQ0E1ak42S1RTdmsxMi8v
T29jMVdRV0J6QUpicTdmS3RhOWRtN2tnSlJCQQpBQUVFRUVBQWdRZ0trSURrTUdpM3ZuY3JYemlZ
Z3h1cnVCZDRZZVlMb3JkM1prSUFBUVFRUUFBQkJPSW13RVhvV1k3bzE2dS9sdDczCjlKWWROVHV5
WEpQaUNHUW5jR0Q3QTJYY0plT3lXNG5TQ0lSTmdJdlF3ellpeElNQUFnZ1VYSUFqSUZrT3djMWpi
aWI1eU5LTTRya0oKakY4eVhwNmErbFJ1SzdNV0FnZ2dnQUFDQ0NBUVVnR09nR1F4TUpPV1RwSisv
KzZYeFJvVVJjQ2JRSzhXdldUcWxWT2xUZ21mRlhpVApaTzJDQ1hBRXBHRDBOSXdBQWdpRVZZQjNO
Vm1NekIvZi8yTVdwU21LZ0hlQkdhdG15TlBUbnZaZUVUVWdnQUFDQ0NDQUFBSWhFU0FCCmNUa1Ew
MWRNbDJlbVArT3lOTVVROEUvZ1QyUC9KSWxFd3I4S3FRa0JCQkJBQUFFRUVDaWdBQW1JUzN6OWJv
WWE0eDhUQWtFTFRGbzIKU1Y2YStWTFF6ZEllQWdnZ2dBQUNDQ0NRRndFU0VCZXNTellza1ZGVFI3
a29TUkVFOGlQd2Z4Ly9YMzRxcGxZRUVFQUFBUVFRUUNCZwpBUklRRitEM1RyaVhPMSs1Y0tKSS9n
VGVuZit1VEY0Mk9YOE5VRE1DQ0NDQUFBSUlJQkNRQUFsSUJ1anQxZHZsdm9uM1pTakZZZ1R5Ckx6
QmkvSWo4TjBJTENDQ0FBQUlJSUlCQW5nVklRRElBUHpuMVNWbTJhVm1HVWl4R0lQOENqMzM1bUt6
ZHVqYi9EZEVDQWdnZ2dBQUMKQ0NDUVJ3RVNrQXk0RDMvK2NJWVNMRVlnR0lITlZadmxpU2xQQk5N
WXJTQ0FBQUlJSUlBQUFua1NJQUZ4Z0Yyd2JvRzhNKzhkaHhJcwpRaUJZZ2Y5KzhkOWdHNlExQkJC
QUFBRUVFRURBWndFU0VBZlFSeVk5SWduakh4TUNZUkg0WlBFbjh0WEtyOElTRG5FZ2dBQUNDQ0NB
CkFBSlpDNUNBT0pBOU91bFJoNlVzUXFBd0FvOSt5WFpaR0hsYVJRQUJCQkJBQUFFL0JFaEEwaWpx
TFU5bnJwNlpaaW16RVNpY3dPaHAKb3d2WE9DMGpnQUFDQ0NDQUFBSWVCVWhBMGdBK08rUFpORXVZ
alVCaEJiNWE5WlZNWHpHOXNFSFFPZ0lJSUlBQUFnZ2drS01BQ1VnYQp1R2VtUDVObUNiTVJLTHdB
Q1hMaHg0QUlFRUFBQVFRUVFDQTNBUktRRkc3ejFzNlRTY3NtcFZqQ0xBVENJZkRjak9mQ0VRaFJJ
SUFBCkFnZ2dnQUFDV1FxUWdLUUFlMlAyR3lubU1ndUI4QWhNWERKUlZtMWVGWjZBaUFRQkJCQkFB
QUVFRUhBcFFBS1NBbXJNbkRFcDVqSUwKZ2ZBSTFFaU52RDMzN2ZBRVJDUUlJSUFBQWdnZ2dJQkxB
UktRSktoRUlzRWJ1eVFUWG9aVDRLMjViNFV6TUtKQ0FBRUVFRUFBQVFRYwpCRWhBa25DK1dQcUZy
TnJDcVMxSkxMd01vUUJINmtJNEtJU0VBQUlJSUlBQUFoa0ZTRUNTaUQ1YStGSFNIRjRpRUU2QjJX
dG15L0pOCnk4TVpIRkVoZ0FBQ0NDQ0FBQUpwQkVoQWttREdMUjZYTkllWENJUlhZUHppOGVFTmpz
Z1FRQUFCQkJCQUFJRVVBaVFnU1NpOG9Vc0MKNFdXb0JjWXRJbUVPOVFBUkhBSUlJSUFBQWdqc0pr
QUNZaU5adTNXdHpGdzEwemFIcHdpRVc0Q0VPZHpqUTNRSUlJQUFBZ2dnc0xzQQpDWWpONU10bFgw
ckMrTWVFUUZRRStNTE1xSXdVY1NLQUFBSUlJSUNBSlVBQ1lra1lqOU5YVExlOTRpa0M0UmRZdG1t
WnJONnlPdnlCCkVpRUNDQ0NBQUFJSUlMQlRnQVRFdGlsTVd6SE45b3FuQ0VSRGdNUTVHdU5FbEFn
Z2dBQUNDQ0R3clFBSmlHMUxtTDZTSXlBMkRwNUcKUklERU9TSURSWmdJSUlBQUFnZ2dZQXFRZ05n
MkJDNUF0Mkh3TkRJQ3MxYlBpa3lzQklvQUFnZ2dnQUFDQ0pDQTdOd0dhaEkxc21URApFcllJQkNJ
bnNIRGR3c2pGVE1BSUlJQUFBZ2dnVUx3Q0pDQTd4MzdaeG1XeW8yWkg4VzRKOUR5eUFndlhrNEJF
ZHZBSUhBRUVFRUFBCmdTSVVJQUhaT2VpOGlTdkNyVDhtWGVZSVNFd0drbTRnZ0FBQ0NDQlFKQUlr
SURzSGV0SDZSVVV5NUhRemJnSjY2bUFpd2ZmWHhHMWMKNlE4Q0NDQ0FBQUp4RlNBQjJUbXlhN2Fz
aWVzWTA2K1lDMVFscW1URDlnMHg3eVhkUXdBQkJCQkFBSUc0Q0pDQTdCekp0VnZYeG1WTQo2VWNS
Q3JEOUZ1R2cwMlVFRUVBQUFRUWlLa0FDc25QZ2VBTVgwUzJZc0UwQnRsODJCQVFRUUFBQkJCQ0lp
Z0FKeU02UjRnMWNWRFpaCjRrd2x3UGFiU29WNUNDQ0FBQUlJSUJCR0FSS1FuYU95cFdwTEdNZUht
QkJ3SmJCbEI5dXZLeWdLSVlBQUFnZ2dnRURCQlVoQWRnNUIKZFUxMXdRZURBQkRJVmFBNndmYWJx
eDNySVlBQUFnZ2dnRUN3QWlRZ083MnJhcXFDbGFjMUJId1VJSUgyRVpPcUVFQUFBUVFRUUNDdgpB
aVFnTzNuNUJEbXYyeG1WNTFtQUJEclB3RlNQQUFJSUlJQUFBcjRKa0lEc3BPU0wzSHpicHFnSUFR
UVFRQUFCQkJCQUFJRzBBaVFnCk8ybks2NWFuUldJQkFtRVhhRkRXSU93aEVoOENDQ0NBQUFJSUlH
QUtrSURzM0JES3kwaEErSjJJcmtERHVnMmpHenlSSTRBQUFnZ2cKZ0VCUkNaQ0E3Qnh1am9BVTFY
WWZ1ODZ5L2NadVNPa1FBZ2dnZ0FBQ3NSVWdBZGs1dEh5Q0hOdHR2Q2c2eHZaYkZNTk1KeEZBQUFF
RQpFSWlGQUFuSXptRnNVZDRpRmdOS0o0cFRvSGw1OCtMc09MMUdBQUVFRUVBQWdjZ0prSURzSExM
V0ZhMGpOM2dFaklBS2xCai9XalZzCkJRWUNDQ0NBQUFJSUlCQUpBUktRbmNORUFoS0o3WlVnVXdn
MGE5Qk02cGJXVGJHRVdRZ2dnQUFDQ0NDQVFQZ0VTRUIyamdrSlNQZzIKVGlKeUo4QzI2ODZKVWdn
Z2dBQUNDQ0FRRGdFU2tKM2owTEZKeDNDTUNGRWdrS1ZBcHlhZHNseUQ0Z2dnZ0FBQ0NDQ0FRT0VF
U0VCMgoybGVXVjBwbGc4ckNqUVF0STVDalFMZktiam11eVdvSUlJQUFBZ2dnZ0VEd0FpUWdOblBl
eU5rd2VCb1pnZTdOdTBjbVZnSkZBQUVFCkVFQUFBUVJJUUd6YlFQZEszc2paT0hnYUVRRVM1NGdN
RkdFaWdBQUNDQ0NBZ0NsQUFtTGJFSHEyNkdsN3hWTUVvaUhBZGh1TmNTSksKQkJCQUFBRUVFUGhX
Z0FURXRpWDBiZHZYOW9xbkNJUmZvRjZkZXJKM3k3M0RIeWdSSW9BQUFnZ2dnQUFDT3dWSVFHeWJR
dDgySkNBMgpEcDVHUUtCM3E5NThCMGdFeG9rUUVVQUFBUVFRUU9BN0FSS1E3eXhreitaN1NxTzZq
V3h6ZUlwQXVBVTRhaGZ1OFNFNkJCQkFBQUVFCkVOaGRnQVRFWmxKU1VpSzhvYk9COERUMEFnUGFE
UWg5akFTSUFBSUlJSUFBQWdqWUJVaEE3QnJHODhHZEJ5Zk40U1VDNFJVNHROT2gKNFEyT3lCQkFB
QUVFRUVBQWdSUUNKQ0JKS0NRZ1NTQzhESzJBbmk3WXIyMi8wTVpIWUFnZ2dBQUNDQ0NBUUNvQkVw
QWtGZjFFdWNUNAp4NFJBMkFVTzduU3dsTllwRFh1WXhJY0FBZ2dnZ0FBQ0NPd2lRQUt5QzRkSVpY
bWw5R25kSjJrdUx4RUluOENRemtQQ0Z4UVJJWUFBCkFnZ2dnQUFDR1FSSVFGSUFEZXMrTE1WY1pp
RVFMb0ZqOXp3MlhBRVJEUUlJSUlBQUFnZ2c0RUtBQkNRRjB2RTlqazh4bDFrSWhFZWcKVmNOV01y
RDl3UEFFUkNRSUlJQUFBZ2dnZ0lCTEFSS1FGRkI2SVhyamVvMVRMR0VXQXVFUTBLTWZldHRvSmdR
UVFBQUJCQkJBSUdvQwpKQ0FwUnF4dWFWMDV1dHZSS1pZd0M0RndDSnpRNDRSd0JFSVVDQ0NBQUFJ
SUlJQkFsZ0lrSUduQVR0L245RFJMbUkxQVlRWEt5OHJsCmhKNGtJSVVkQlZwSEFBRUVFRUFBZ1Z3
RlNFRFN5QTN2T1Z3YWxqVk1zNVRaQ0JST1FJOStOS3JYcUhBQjBESUNDQ0NBQUFJSUlPQkIKZ0FR
a0RWNUZ2UW8rWlU1ancrekNDcHpaNTh6Q0JrRHJDQ0NBQUFJSUlJQ0FCd0VTRUFlOHMvdWM3YkNV
UlFnRUw2QTNSK0Q2aitEZAphUkVCQkJCQUFBRUUvQk1nQVhHd1BMSG5pZEs2WVd1SEVpeENJRmdC
VFlyTDY1WUgyeWl0SVlBQUFnZ2dnQUFDUGdxUWdEaGc2dDJ3Ckx1eDNvVU1KRmlFUXJNQWwrMThT
YklPMGhnQUNDQ0NBQUFJSStDeEFBcElCOU1jRGZweWhCSXNSQ0VhZ1g1dCtmUGxnTU5TMGdnQUMK
Q0NDQUFBSjVGQ0FCeVlEYm8wVVBPYUxMRVJsS3NSaUIvQXRjT3ZEUy9EZENDd2dnZ0FBQ0NDQ0FR
SjRGU0VCY0FQLzg0Sis3S0VVUgpCUEluMEtLOGhaemY5L3o4TlVETkNDQ0FBQUlJSUlCQVFBSWtJ
QzZnais5eHZQUnEwY3RGU1lvZ2tCK0J5d2RlTGczcjhyMDArZEdsClZnUVFRQUFCQkJBSVVvQUV4
SVYyU1VtSlhIZklkUzVLVWdRQi93WHFsOWFYcXc2OHl2K0txUkVCQkJCQUFBRUVFQ2lBQUFtSVMv
UnoKOXp0WDJqZHE3N0kweFJEd1QwRHZ4TmFtVVJ2L0txUW1CQkJBQUFFRUVFQ2dnQUlrSUM3eEc1
UTFrRjhPK2FYTDBoUkR3QjhCUGZyeApxeUcvOHFjeWFrRUFBUVFRUUFBQkJFSWdRQUtTeFNEb2R6
QjBhdElwaXpVb2lvQTNnVXNHR050Y1U3WTViNHFzalFBQ0NDQ0FBQUpoCkVpQUJ5V0kwNnBYVzQ5
UG9MTHdvNmsyZ1FXa0R1WG5JemQ0cVlXMEVFRUFBQVFRUVFDQmtBaVFnV1E3SXhRTXU1bzVZV1pw
UlBEZUIKYXcrK1Z0bzM1cnFqM1BSWUN3RUVFRUFBQVFUQ0trQUNrdVhJbE5VcGs3dUczWlhsV2hS
SElEdUJ0aFZ0NWViQkhQM0lUbzNTQ0NDQQpBQUlJSUJBRkFSS1FIRVpKdnhka1dQZGhPYXpKS2dp
NEUvalRrWCtTeHZVYnV5dE1LUVFRUUFBQkJCQkFJRUlDSlFsamNvelgrQTRNCnlWREVjZjJZTHB5
MllwcjB1N2VmN0tqWkVkTWUwcTFDQ1F4b08wQSsvY21uVXFlRXp3Y0tOUWEwNjZNQWYwTjh4S1Fx
QkJCQUlCNEMKdk1QSmNSeDd0K290MXg5eWZZNXJzeG9DcVFWS1Mwcmx2dUgza1h5azVtRXVBZ2dn
Z0FBQ0NNUkFnQVRFd3lEKytyQmZTNC9tUFR6VQp3S29JN0NwdzlhQ3JaZi8yKys4NmsxY0lJSUFB
QWdnZ2dFQ01CRWhBUEF5bWZqbmh2MC84dDRjYVdCV0I3d1M2Tk8waXR3Njk5YnNaClBFTUFBUVFR
UUFBQkJHSW9RQUxpY1ZDSGRoMHFsdys4M0dNdHJGN3NBaVZTSWc5Ky8wR3BxRmRSN0JUMEh3RUVF
RUFBQVFSaUxrQUMKNHNNQTMzbk1uYkpYaTcxOHFJa3FpbFhnMm9PdWxTTzZIbEdzM2FmZkNDQ0FB
QUlJSUZCRUF0d0Z5NmZCbnJCa2doenk0Q0hjRmNzbgp6MktxWnQvVys4cW5sM3dxOWN2cUYxTzM2
V3V4Q0hBWHJHSVphZnFKQUFJSXVCYmdDSWhyS3VlQ0E5c1A1UHg5WnlLV3BoQW9MeXVYCngwNTVq
T1FqaFEyekVFQUFBUVFRUUNDZUFpUWdQbzdyallmZUtNTjdEdmV4UnFxS3U4Qy9UdmlYN050bTM3
aDNrLzRoZ0FBQ0NDQ0EKQUFLMUFpUWd0UlRlbjVRWXB4bzhjdklqMHExWk4rK1ZVVVBzQlM3ZC8x
SzVvTjhGc2U4bkhVUUFBUVFRUUFBQkJPd0NYQU5pMS9EcAorUmRMdnpDdkI5bFN0Y1duR3FrbWJn
SUh0RDlBeGw0MGxsT3Y0amF3OUdkM0FhNEIyZDJFT1FnZ2dFQ1JDM0FFSkE4YlFMKzIvZVRSCmt4
ODFicXhha29mYXFUTHFBaDBiZDVUbnozcWU1Q1BxQTBuOENDQ0FBQUlJSUpDVEFBbElUbXlaVnpx
MTk2bHkyNUczWlM1SWlhSVMKYUZTM2tieDB6a3ZTcm5HN291bzNuVVVBQVFRUVFBQUJCQ3dCRWhC
TElnK1BOdzIrU1g3VTcwZDVxSmtxb3loUVdsSXFUNXoyaFBSdAoyemVLNFJNekFnZ2dnQUFDQ0NE
Z2l3QUppQytNNlN2NTkvQi95MGs5VDBwZmdDVkZJYUNuNDkwLy9INDVvZWNKUmRGZk9va0FBZ2dn
CmdBQUNDS1FUSUFGSkorUFQvTEk2WlRMcTlGRXl0TXRRbjJxa21pZ0szSFhNWFhKUi80dWlHRG94
STRBQUFnZ2dnQUFDdmdxUWdQaksKbWJxeUJtVU56SXVPOWM1SFRNVW44SnZ2L1VhdVBmamE0dXM0
UFVZQUFRUVFRQUFCQkZJSWtJQ2tRTW5Ick1iMUc4c2I1NzBoZ3pvTQp5a2YxMUJsU2dWdUczQ0sv
SC9yN2tFWkhXQWdnZ0FBQ0NDQ0FRUEFDSkNBQm1qZHIwRXplUE85Tk9iVFRvUUcyU2xPRkVyajE4
RnZsCkQwZjhvVkROMHk0Q0NDQ0FBQUlJSUJCS0FiNklzQUREc21uN0poaytjcmk4TSsrZEFyUk9r
MEVJM0hIVUhYTDlvZGNIMFJSdElCQnUKQWI2SU1OempRM1FJSUlCQUFRUklRQXFBcmsxdXE5b201
ejk3dmp3NTdja0NSVUN6K1JBb0t5bVQrMCs2WHk3c2QyRStxcWRPQktJbgpRQUlTdlRFallnUVFR
Q0RQQWlRZ2VRWjJxajZSU01oMWIxd25mL3ZrYjA3RldCWVJBZjJTd2RGbmpKWmhldzZMU01TRWlV
QUFBaVFnCkFTRFRCQUlJSUJBdEFSS1FFSXpYUHo3NWg1bUlWQ2VxUXhBTkllUWkwS0Z4QjNuaDdC
ZGtRTHNCdWF6T09nakVWNEFFSkw1alM4OFEKUUFDQkhBVklRSEtFODN1MU1YUEd5SmxQblNtcnQ2
NzJ1MnJxeTdPQTNsVGc2VE9lbGphTjJ1UzVKYXBISUlJQ0pDQVJIRFJDUmdBQgpCUElyUUFLU1g5
K3NhcCt6Wm83ODRJa2Z5T1RsazdOYWo4S0ZFN2gwLzB0bHhIRWpwRzVwM2NJRlFjc0loRm1BQkNU
TW8wTnNDQ0NBClFFRUVTRUFLd3A2K1ViMUQxazlmL2FrOC9NWEQ2UXV4cE9BQ0ZYVXI1SjdqNzVF
TCtsMVE4RmdJQUlGUUM1Q0FoSHA0Q0E0QkJCQW8KaEFBSlNDSFVYYlE1Y3ZKSXVleWx5MlQ5OXZV
dVNsTWtTSUYrYmZySnFOTkhTYzhXUFlOc2xyWVFpS1lBQ1VnMHg0Mm9FVUFBZ1R3SwprSURrRWRk
cjFYcEsxcm5QbkNzZkwvcllhMVdzNzROQUhha2pWeDkwdGR4KzVPMVN2NnkrRHpWU0JRSkZJRUFD
VWdTRFRCY1JRQUNCCjdBUklRTEx6Q3J4MFRhSkcvdjdKMytXV3QyK1JMVlZiQW0rZkJyOFY2Tkc4
aHp6MC9ZZGtjT2ZCa0NDQVFEWUNKQ0RaYUZFV0FRUVEKS0FvQkVwQ0lEUE9zVmJQazRoY3VsckVM
eGtZazRuaUVXVnBTS3RjY2RJMzhZZWdmcEx4dWVUdzZSUzhRQ0ZLQUJDUkliZHBDQUFFRQpJaUZB
QWhLSllmbzJTUDNpd2tjbVBTSTNqcmxSbG0xYUZxSElveG5xNEU2RDVmOGQvLytrYjl1KzBld0FV
U01RQmdFU2tEQ01BakVnCmdBQUNvUklnQVFuVmNMZ0xadDNXZGZMYmQzOHI5NHkvUjZvU1ZlNVdv
cFJyZ2JZVmJlV09vKytROC9xZTUzb2RDaUtBUUJvQkVwQTAKTU14R0FBRUVpbGVBQkNUQ1l6OXox
VXo1MVZ1L2txZW5QeTBKNHgrVE40RW05WnJJTHc3NWhWeDc4TFhTcUY0amI1V3hOZ0lJZkN0QQpB
c0tXZ0FBQ0NDQ1FKRUFDa2dRU3haY1Rsa3lRbThmY0xHUG1qb2xpK0FXUHVYNXBmYm5pZ0N2a2ww
TitLUzBidGl4NFBBU0FRS3dFClNFQmlOWngwQmdFRUVQQkRnQVRFRDhXUTFQSFJ3by9rOXJHM3k4
dXpYdWFJaUlzeGFWeXZzVncyOERLNTlxQnJwVjNqZGk3V29BZ0MKQ0dRdFFBS1NOUmtySUlBQUFu
RVhJQUdKNFFoUFhqWlovdkxoWCtUSnFVL0tqcG9kTWV5aHR5NjFxV2dqVng1d3BWeDE0RlZTV1Y3
cApyVExXUmdBQlp3RVNFR2NmbGlLQUFBSkZLRUFDRXVOQlg3WnhtZHovMmYxeTM4VDdaT0g2aFRI
dXFidXVEZWs4eER6VjZ0UzlUNVc2CnBYWGRyVVFwQkJEd0prQUM0czJQdFJGQUFJRVlDcENBeEhC
UWs3dFVYVk50bnBhbHQvQjlhZVpMc3ExNlczS1IyTDdXTzFxZHZlL1oKY2xHL2kyVGZOdnZHdHA5
MERJSFFDcENBaEhab0NBd0JCQkFvbEFBSlNLSGtDOVR1MnExcjVhbXBUOG5qa3g4M3Y5U3dPbEZk
b0VqeQoxMnpUK2szbHBMMU9rblAzTzFlTzdIcWtsTllwelY5ajFJd0FBczRDSkNET1BpeEZBQUVF
aWxDQUJLUUlCOTNxOHFyTnErU1ZXYS9JCjgxODlMNjkvL2JwczNMSFJXaFM1eHk1TnU1aEpoeVll
Mzl2amU1eGlGYmtSSk9EWUNwQ0F4SFpvNlJnQ0NDQ1Fxd0FKU0s1eU1WdHYKUi9VT0diZDRuTHd6
OXgxNWQ5NjdvbmZVMmxxOU5iUzkxQXZKRCs5eXVBenRNbFNHZGgwcVBWdjBERzJzQklaQVVRdVFn
QlQxOE5ONQpCQkJBSUpVQUNVZ3FGZWJKOXVydE1tbnBKSm40elVUUjd4blJuK2tycHN2Mm11MkI2
elNyMzB6NnQrc3YrN2ZiWHdhMkgyaitkRy9lClBmQTRhQkFCQkhJUUlBSEpBWTFWRUVBQWdYZ0xr
SURFZTN4OTdaMWV6RDV2N1R6NWF0VlhvdC9DL3ZYcXIyWEpoaVcxUDBzM0xzM3AKdHIrTjZqYVM5
bzNiMS81MGJOTFJQS0toUnpYMmFybVh0SzVvN1dzL3FBd0JCQUlVSUFFSkVKdW1FRUFBZ1dnSWtJ
QkVZNXdpRWFXZQp4dlhhMTYvSkUxT2VNTysydFg3N2VsZHg5Mi9iWHk3c2Q2R2MzdnQwdmhEUWxS
aUZFSWlRQUFsSWhBYUxVQkZBQUlGZ0JFaEFnbkV1CnVsYTJWVzB6azVCUlUwZVpGN3B2MnJFcG8w
RnBTYWtjMC8wWTgrNVZlakY1bzNxTk1xNURBUVFRQ0xrQUNVaklCNGp3RUVBQWdlQUYKU0VDQ055
KzZGamZ2MkN6UHozaGVOQm5SdTIyNXViaTlZVmxET2EzM2FXWXlja1RYSTdpVmJ0RnROWFE0TmdJ
a0lMRVpTanFDQUFJSQorQ1ZBQXVLWEpQVzRFdGl3YllNOE8rTlpHVFZsbEl5Wk04YlZSZTE2eHl2
OVRnLzk2ZGUybjZ0MktJUUFBaUVSSUFFSnlVQVFCZ0lJCklCQWVBUktROEl4RjBVV2lYNG80ZXRw
b014blJXLzlXSmFveUd2UnEwVXN1NkhlQm5OWG5MT25TckV2RzhoUkFBSUVDQzVDQUZIZ0EKYUI0
QkJCQUlud0FKU1BqR3BDZ2owaTlGZkhMcWsrWnBXbVBuajVVYTQ1L1RWQ0lsY3RnZWg1bEhSVTda
K3hTcExLOTBLczR5QkJBbwpsQUFKU0tIa2FSY0JCQkFJclFBSlNHaUhwbmdEVzdaeG1Ya25MYjFt
NUpORm4wakMrT2MwMWF0VFQ3N2Y2L3RtTW5Mc25zZEt2ZEo2ClRzVlpoZ0FDUVFxUWdBU3BUVnNJ
SUlCQUpBUklRQ0l4VE1VYjVLTDFpOHhrUkcvdHExK0ttR21xYkZCcG5wNTEzbjdueVVFZEQ1SVMK
ZmZQRGhBQUNoUk1nQVNtY1BTMGpnQUFDSVJVZ0FRbnB3QkRXN2dMNkpZaVBUMzdjdkdia3krVmY3
bDRnYVU2WHBsM2svTDdueTluNwpuaTI5V3ZaS1dzcExCQkFJUklBRUpCQm1Ha0VBQVFTaUpFQUNF
cVhSSXRaYUFmMG05cEdUUjVwSFIyYXNtbEU3UDkyVFFSMEdtYWRvCjZaY2R0bW5VSmwweDVpT0Fn
TjhDSkNCK2kxSWZBZ2dnRUhrQkVwRElEeUVkbUxwOHFubGtSTytvTlhQMVRFY1EvYkpEdlU1RVQ5
RWEKdnRkd2FWaTNvV041RmlLQWdFY0JFaENQZ0t5T0FBSUl4RStBQkNSK1kxclVQWnE0WktKNVZP
VHA2VS9MM0xWekhTMGExVzFVKzJXSApoM2M1bkM4N2ROUmlJUUk1Q3BDQTVBakhhZ2dnZ0VCOEJV
aEE0anUyUmQremp4ZCtiTjdXOStscFQ4dWlEWXNjUGRvMWFtZWVvcVZmCmRyaGZtLzBjeTdJUUFR
U3lFQ0FCeVFLTG9nZ2dnRUJ4Q0pDQUZNYzRGM1V2RTRtRXZELy9mVE1aZVhiNnM3SjAwMUpIajk0
dGU4dUYKL1M2VU0vdWNLWjJiZG5Zc3kwSUVFTWdnUUFLU0FZakZDQ0NBUVBFSmtJQVUzNWdYZFk5
ckVqWHk5dHkzelR0cFBUZmpPVm01WldWYQpELzJ5dzZGZGh0WisyV0hUQmszVGxtVUJBZ2lrRVNB
QlNRUERiQVFRUUtCNEJVaEFpbmZzaTY3bm1ueHMycjVKTm03ZldQdno0c3dYCnpidHBaYnFUVnYz
Uyt2S0RYaitRZ2UwSGloNVJxVTVVaTlaWFhWTnRPcGJXS1pVNkpYVkVMM0xYUi9QNXpubjZ2S3hP
bVdnZDljdU0KSCtPeFFWbUQydWYyZVkzcU5STDlxYWhYWWRaUmRJTkVoK01uUUFJU3Z6R2xSd2dn
Z0lCSEFSSVFqNENzSHB5QUpnNHJOcTJRTlZ2WAp5Sm90eGsrS3g3VmIxNXJMN0VtRzlYeHoxZWJn
Z3ZXaHBZWmxEYzFreEVwS3JNZks4a3BwMXFDWjZKY3U2dk5VajYwcVdwbnIraEFHClZTRGdUWUFF
eEpzZmF5T0FBQUl4RkNBQmllR2dScWxMZWtSaThZYkZzbVRERWxtOGZyRXMzYmhVVm14ZUljczNM
ZC90WjB2VmxpaDEKcmVDeGxwZVZTK3VLMXJ2OXRHcllTdG8yYWlzZG1uU1E5bzNiUzRmR0hjd2pM
Z1VQbUFEaUtVQUNFczl4cFZjSUlJQ0FCd0VTRUE5NApyT29zc0sxcW04eGZOMS8wRzh6MVo4RzZC
V2FTb1FtSEpodjZ1RzdiT3VkS1dCcUlRTlA2VGMxRVJKTVNUVWowVVMvQTc5S3NpL216ClI5TTl6
RlBHQWdtR1J1SWxRQUlTci9Ha053Z2dnSUFQQWlRZ1BpQVdjeFY2NUVLL2xYeldxbG5tOTI1WXlZ
WSs2dEdNaFBHUEtmb0MKZWtHK0hqV3hFaEo5N05xc3EvUm8wVU42dHVocEhrbUpmaS9wUVY0RVNF
RHl3a3FsQ0NDQVFKUUZTRUNpUEhvQnhhN1hWVXhmTWQxTQpOTXhrWS9Vc00rR1laVHh1MnJFcG9D
aG9Kc3dDRlhVcnBFZnpIbVpDb28rYWxPalAzcTMyTnE5WENYUHN4SlpuQVJLUVBBTlRQUUlJCklC
QTlBUktRNkkxWjNpSmV0M1dkVEZzeFRhYXVtQ3BUbDArdGZhNm5TakVoa0t1QW50SzFUNnQ5cEhl
cjNySlA2MzFxbjNOYjQxeEYKSTdZZUNVakVCb3h3RVVBQWdmd0xrSURrM3poMExlaHRaT2V1blN0
ZkxQMUNQdi9tYy9OUm4yZjZ0dkRRZFlTQUlpM1FzWEZINmRlMgpuL25UdjEyenRvdkVBQUFnQUVs
RVFWUi84MUZQNnlyUk42eE04UkVnQVluUFdOSVRCQkJBd0NjQkVoQ2ZJTU5halNZYk0xYk9rUEdM
Cng4dm5TejgzRTQ1Snl5Wng4WGRZQjZ6STQ5S0w0ZnUyNlN1YWtQUnYyMThPN0hDZzlHclppNlFr
eXRzRkNVaVVSNC9ZRVVBQWdid0kKa0lEa2hiVndsZXFGMytNV2pUTVRqbkdMeDhtRUpSTklOZ28z
SExUc2c0QW1KZm9Ga0lNNkRESVRra0VkQjVrWHhQdFFOVlVFSVVBQwpFb1F5YlNDQUFBS1JFaUFC
aWRSdzdScXNmaFAzbE9WVFpPejhzVEoyd1ZqNWFPRkhzbkQ5d2wwTDhRcUJHQXAwYXRKSkR1bDBp
QXpwClBFU0c3REZFK3JUdXd6ZkhoM1djU1VEQ09qTEVoUUFDQ0JSTWdBU2tZUFRaTjZ6ZnE2RkhO
RFRaMEtUanc0VWZjblFqZTBiV2lLRkEKcy9yTnZrMUlqR1JFa3hJOVlsSy9ySDRNZXhyQkxwR0FS
SERRQ0JrQkJCRElyd0FKU0g1OVBkV3VSemowSXZFeGM4YklXM1Bma2c4VwpmQ0I4RzdnblVsWXVF
Z0g5RnZqQm5RZkxrVjJQbEtPNkhXVmVVMUtucEU2UjlENWszU1FCQ2RtQUVBNENDQ0JRZUFFU2tN
S1B3UzRSCjZCZjZhY0toUCsvTWUwZldiRjJ6eTNKZUlJQkE5Z0tWRFNwbGFKZWhaaktpQ1lsK2dT
SlRRQUlrSUFGQjB3d0NDQ0FRSFFFU2tBS1AKbFo1VzlkNzg5K1RsbVMvTEs3TmVrYS9YZkYzZ2lH
Z2VnZmdMN0ZtNXB4emY0M2c1b2VjSmN0Z2VoM0c2Vmo2SG5BUWtuN3JValFBQwpDRVJTZ0FTa0FN
TzJhUDJpMm9SRFQ2M2kyOFFMTUFnMGljQk9BZjBXZHoxVnkwcElPamJwaUkyZkFpUWdmbXBTRndJ
SUlCQUxBUktRCmdJWlJUNjE2WnZvejVzK25TejZWaFBHUENRRUV3aVZRSWlWeVFQc0Q1SlM5VHpG
L09GWExoL0VoQWZFQmtTb1FRQUNCZUFtUWdPUngKUEw5YzlxV1pjRHc5N1dtWnNtSktIbHVpYWdR
UXlJZEFuMVo5NU5UZXA1ckp5SDV0OXN0SEUvR3Zrd1FrL21OTUR4RkFBSUVzQlVoQQpzZ1RMVkh6
MjZ0bnkrT1RIelo4WnEyWmtLczV5QkJDSWlFQ3ZGcjNrbkgzUE1YKzZOKzhla2FoREVDWUpTQWdH
Z1JBUVFBQ0JjQW1RCmdQZ3dIc3MyTHBOUlUwZVpTWWQrK3pnVEFnakVXMEMvbFYyVGtUUDNPVlBh
TkdvVDc4NTY3UjBKaUZkQjFrY0FBUVJpSjBBQ2t1T1EKN3FqZUlTOTg5WUk4K1BtRDhzYnNONlE2
VVoxalRheUdBQUpSRlNndEtaVmp1aDhqRi9lL1dFN2E2eVNwVzFvM3FsM0pYOXdrSVBtegpwV1lF
RUVBZ29nSWtJRmtPM1BRVjA4Mms0NUZKajhpS3pTdXlYSnZpQ0NBUVY0RldEVnZKK1gzUE41T1J2
VnZ0SGRkdVp0OHZFcERzCnpWZ0RBUVFRaUxrQUNZaUxBZGJ2Nm5oaXloTnkzOFQ3NUtORkg3bFln
eUlJSUZETUFvZDBQRVIrc3Y5UDVLdytaL0VkSXlRZ3hmeXIKUU44UlFBQ0JsQUlrSUNsWnZwMjVl
UDFpK2RlRWY1bUpCMGM3SEtCWWhBQUNLUVgwcUlnbUlwY1B2Rnc2Tk9tUXNrenNaNUtBeEg2SQo2
U0FDQ0NDUXJRQUpTQXF4RHhaOElDUEdqVEJ2b1Z1VnFFcFJnbGtJSUlDQWU0R3lrakx6VnI0L0hm
UlRHZHg1c1BzVjQxQ1NCQ1FPCm8wZ2ZFRUFBQVY4RlNFQjJjaVlTQ2ZPaTh0cy91RjI0azVXdjJ4
aVZJWUNBVFVEdm9IWHo0SnZOaTlaTDlNMTUzQ2NTa0xpUE1QMUQKQUFFRXNoWW8rZ1NrcXFiS3ZI
M3VYejc0aTB4Yk9TMXJRRlpBQUFFRWNoSG8zYkszM0RqNFJ2TjJ2bVYxeW5LcElocnJrSUJFWTV5
SQpFZ0VFRUFoUW9HZ1RrTzNWMitXQnp4NFFUVHdXckY4UUlEbE5JWUFBQXQ4SjdORjBEN25oMEJ2
a3h3TitMUFZLNjMyM0lDN1BTRURpCk1wTDBBd0VFRVBCTm9PZ1NrT3FhYXZuZmwvK1QzNzM3TzVt
M2JwNXZrRlNFQUFJSWVCSG8wclNML083dzM4bTUrNTBycFhWS3ZWUVYKcm5WSlFNSTFIa1NEQUFJ
SWhFQ2dhQklRdmNaajlMVFI4cHQzZmlNelZzMElBVDBoSUlBQUFyc0w5R3JSUzI0ZGVxdWMxdnMw
aWNVMQpJaVFndXc4eWN4QkFBSUVpRnlpS0JPVERCUi9LTmE5ZEl4TyttVkRrdzAzM0VVQWdLZ0lE
MncyVWZ4ejNEem1rMHlGUkNUbDFuQ1FnCnFWMllpd0FDQ0JTeFFLd1RrRVhyRjhrTmI5NGdJNmVN
TE9JaHB1c0lJQkJsZ2JQN25DMTNISDJIZEd6U01acmRJQUdKNXJnUk5RSUkKSUpCSGdWZ21JRnVy
dHNvZEg5NWhYbUMrdVdwekh2bW9HZ0VFRU1pL1FNT3lodVlkcy9SaTlRWmxEZkxmb0o4dGtJRDRx
VWxkQ0NDQQpRQ3dFWXBlQXZEZnZQYm5reFV0azF1cFpzUmdnT29FQUFnaFlBajJhOTVEN2g5OHZo
M1U1ekpvVi9rY1NrUENQRVJFaWdBQUNBUXZFCkpnRlp0M1dkZWJyVi9aL2RMd25qSHhNQ0NDQVFS
NEVTS1pGTEJseGlucGJWdEVIVDhIZVJCQ1Q4WTBTRUNDQ0FRTUFDc1VoQVh2enEKUmJuc3BjdGt5
Y1lsQWZQUkhBSUlJRkFZZ2ZhTjJzdTlKOTRydy9jYVhwZ0EzTFpLQXVKV2luSUlJSUJBMFFoRU9n
SFJhejJ1ZS8wNgorZWVFZnhiTmdORlJCQkJBd0M1d3hjQXI1SzVoZDRYMzJoQVNFUHR3OFJ3QkJC
QkF3QkNJYkFJeVpma1VPWHYwMlRKbHhSUUdFZ0VFCkVDaHFnVDZ0K3NqSTAwWktuOVo5d3VkQUFo
SytNU0VpQkJCQW9NQUNkUXJjZms3TjN6ZnhQam5ndmdOSVBuTFNZeVVFRUlpYmdINFEKby90RTNU
Y3lJWUFBQWdnZ0VIYUJTQjBCMlZHOVEzNzI2cy9rM29uM2h0MlYrQkJBQUlHQ0NGeTIvMlZ5OTNG
M1M5M1N1Z1ZwZjdkRwpPUUt5R3drekVFQUFnV0lYaUV3Q3NuTHpTam50eWRQa3ZmbnZGZnVZMFg4
RUVFREFVZUN3UFE2VDBXZU1scFlOV3pxV0MyUWhDVWdnCnpEU0NBQUlJUkVrZ0Vnbkk5QlhUNWZq
SGpwZDU2K1pGeVpaWUVVQUFnWUlKZEduYVJWNzU0U3V5ZDZ1OUN4YUQyVEFKU0dIOWFSMEIKQkJB
SW9VRG9FNUNKU3liS3NmODdWbFp1V1JsQ1BrSkNBQUVFd2l2UXNyeWx2SGJ1YTdKLysvMExGeVFK
U09Ic2FSa0JCQkFJcVVDbwpMMEovZi83N2NzUi9qeUQ1Q09uR1ExZ0lJQkJ1QWYzZ1J2ZWhZK2VQ
RFhlZ1JJY0FBZ2dnVUZRQ29VMUFYdi82ZGZQSXgvcnQ2NHRxClFPZ3NBZ2dnNEtlQTdrT0gvVytZ
NkQ2VkNRRUVFRUFBZ1RBSWhQSVVyUGZtdlNmSFBYYWNiS25hRWdZallrQUFBUVFpTDFCZVZpNnYK
L3ZCVk9hekxZY0gyaFZPd2d2V21OUVFRUUNBQ0FxRkxRQ1l0blNSREhoNGlHN1p2aUFBZklTS0FB
QUxSRVdoY3I3R012V2lzOUczYgpON2lnU1VDQ3M2WWxCQkJBSUNJQ29Ub0ZhOUg2UmViZHJrZytJ
ckwxRUNZQ0NFUktRUGV0ZWtkQjNkY3lJWUFBQWdnZ1VDaUIwQ1FnClc2dTJ5c2xQbkN4TE5pNHBs
QVh0SW9BQUFyRVgwSDJzN210MW44dUVBQUlJSUlCQUlRUkNrNEJjOWNwVk11R2JDWVV3b0UwRUVF
Q2cKcUFSMFg2djdYQ1lFRUVBQUFRUUtJUkNLQk9TSktVL0lnNTgvV0lqKzB5WUNDQ0JRbEFLNno5
VjlMeE1DQ0NDQUFBSkJDeFQ4SXZSdgpObndqKy94ekgxbXpkVTNRZmFjOUJCQkFvS2dGS2h0VXl0
UXJwa3E3eHUzeTU4QkY2UG16cFdZRUVFQWdvZ0lGUHdKeTVTdFhrbnhFCmRPTWhiQVFRaUxhQWZ2
Q2orMkFtQkJCQUFBRUVnaFFvYUFLaVg0ejE3SXhuZyt3dmJTR0FBQUlJMkFSMEg4eVhGTnBBZUlv
QUFnZ2cKa0hlQmdpVWdOWWthdWU2TjYvTGVRUnBBQUFFRUVIQVcwSDJ4N3BPWkVFQUFBUVFRQ0VL
Z1lBbkl5TWtqWmVxS3FVSDBrVFlRUUFBQgpCQndFZEYrcysyUW1CQkJBQUFFRWdoQW9XQUx5bHcv
L0VrVC9hQU1CQkJCQXdJVUErMlFYU0JSQkFBRUVFUEJGb0NBSnlOdHozNWJKCnl5ZjcwZ0VxUVFB
QkJCRHdMcUQ3Wk4wM015R0FBQUlJSUpCdmdZSWtJQTkreG5kKzVIdGdxUjhCQkJESVZvQjljN1pp
bEVjQUFRUVEKeUVVZzhPOEIyYkpqaTdTOG82VnNydHFjUzd5c2d3QUNDQ0NRSjRHR1pRMWw1UTBy
cGJ4dXVYOHQ4RDBnL2xsU0V3SUlJQkFUZ2NDUApnSXlaTTRia0l5WWJEOTFBQUlGNENlZ0hRN3FQ
WmtJQUFRUVFRQ0NmQW9FbklHL05mU3VmL2FGdUJCQkFBQUVQQXV5alBlQ3hLZ0lJCklJQ0FLNEhB
RTVBUEYzem9LakFLSVlBQUFnZ0VMOEErT25oeldrUUFBUVNLVFNEUUJFUy82R3JLOGluRlpreC9F
VUFBZ2NnSTZENmEKTHlXTXpIQVJLQUlJSUJCSmdVQVRrQVhyRnNqVzZxMlJoQ0pvQkJCQW9CZ0Vk
Qit0KzJvbUJCQkFBQUVFOGlVUWFBS3laTU9TZlBXRAplaEZBQUFFRWZCSmdYKzBUSk5VZ2dBQUND
S1FVQ0RRQldiTmxUY29nbUlrQUFnZ2dFQjRCOXRYaEdRc2lRUUFCQk9Jb0VHZ0NzcldLCjA2L2l1
QkhSSndRUWlKY0ErK3A0alNlOVFRQUJCTUltRUdnQ3dvV05ZUnQrNGtFQUFRUjJGMkJmdmJzSmN4
QkFBQUVFL0JNSU5BSHgKTDJ4cVFnQUJCQkJBQUFFRUVFQUFnU2dLa0lCRWNkU0lHUUVFRUVBQUFR
UVFRQUNCaUFxUWdFUjA0QWdiQVFRUVFBQUJCQkJBQUlFbwpDcENBUkhIVWlCa0JCQkJBQUFFRUVF
QUFnWWdLa0lCRWRPQUlHd0VFRUVBQUFRUVFRQUNCS0FxUWdFUngxSWdaQVFRUVFBQUJCQkJBCkFJ
R0lDcENBUkhUZ0NCc0JCQkJBQUFFRUVFQUFnU2dLa0lCRWNkU0lHUUVFRUVBQUFRUVFRQUNCaUFx
UWdFUjA0QWdiQVFRUVFBQUIKQkJCQUFJRW9DcENBUkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lC
RWRPQUlHd0VFRUVBQUFRUVFRQUNCS0FxUWdFUngxSWdaQVFRUQpRQUFCQkJCQUFJR0lDcENBUkhU
Z0NCc0JCQkJBQUFFRUVFQUFnU2dLa0lCRWNkU0lHUUVFRUVBQUFRUVFRQUNCaUFxUWdFUjA0QWdi
CkFRUVFRQUFCQkJCQUFJRW9DcENBUkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lCRWRPQUlHd0VF
RUVBQUFRUVFRQUNCS0FxUWdFUngKMUlnWkFRUVFRQUFCQkJCQUFJR0lDcENBUkhUZ0NCc0JCQkJB
QUFFRUVFQUFnU2dLa0lCRWNkU0lHUUVFRUVBQUFRUVFRQUNCaUFxUQpnRVIwNEFnYkFRUVFRQUFC
QkJCQUFJRW9DcENBUkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lCRWRPQUlHd0VFRUVBQUFRUVFR
QUNCCktBcVFnRVJ4MUlnWkFRUVFRQUFCQkJCQUFJR0lDcENBUkhUZ0NCc0JCQkJBQUFFRUVFQUFn
U2dLa0lCRWNkU0lHUUVFRUVBQUFRUVEKUUFDQmlBcVFnRVIwNEFnYkFRUVFRQUFCQkJCQUFJRW9D
cENBUkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lCRWRPQUlHd0VFRUVBQQpBUVFRUUFDQktBcVFn
RVJ4MUlnWkFRUVFRQUFCQkJCQUFJR0lDcENBUkhUZ0NCc0JCQkJBQUFFRUVFQUFnU2dLa0lCRWNk
U0lHUUVFCkVFQUFBUVFRUUFDQmlBcVFnRVIwNEFnYkFRUVFRQUFCQkJCQUFJRW9DcENBUkhIVWlC
a0JCQkJBQUFFRUVFQUFnWWdLa0lCRWRPQUkKR3dFRUVFQUFBUVFRUUFDQktBcVFnRVJ4MUlnWkFR
UVFRQUFCQkJCQUFJR0lDZ1NhZ05RdHJSdFJKc0pHQUFFRWlrZUFmWFh4akRVOQpSUUFCQkFvaEVH
Z0NVbDVXWG9nKzBpWUNDQ0NBUUJZQzdLdXp3S0lvQWdnZ2dFRFdBb0VtSUswcVdtVWRJQ3NnZ0FB
Q0NBUXJ3TDQ2CldHOWFRd0FCQklwTklOQUVwRk9UVHNYbVMzOFJRQUNCeUFtd3I0N2NrQkV3QWdn
Z0VDbUJRQk1RL1ZTdFpYbkxTQUVSTEFJSUlGQk0KQXJxUDVnaElNWTA0ZlVVQUFRU0NGd2cwQWRI
dURXZzNJUGhlMGlJQ0NDQ0FnQ3NCOXRHdW1DaUVBQUlJSU9CQklQQUVaTWdlUXp5RQp5Nm9JSUlB
QUF2a1VZQitkVDEzcVJnQUJCQkJRZ2NBVGtPUDJQQTU1QkJCQUFJR1FDckNQRHVuQUVCWUNDQ0FR
STRIQUU1RDkyKzh2Cm5adDBqaEVoWFVFQUFRVGlJYUQ3WnQxSE15R0FBQUlJSUpCUGdjQVRFTzNN
ZVgzUHkyZWZxQnNCQkJCQUlBY0I5czA1b0xFS0FnZ2cKZ0VEV0FnVkpRQzd1ZjdGeDdsZEJtczRh
aUJVUVFBQ0JZaERRZmJMdW01a1FRQUFCQkJESXQwQkJzb0N1bFYzbDVMMVB6bmZmcUI4QgpCQkJB
d0tXQTdwTjEzOHlFQUFJSUlJQkF2Z1VLa29Cb3AyNzUzaTFTWXZ4alFnQUJCQkFvcklEdWkzV2Z6
SVFBQWdnZ2dFQVFBZ1ZMClFQcTE3U2RuN0hOR0VIMmtEUVFRUUFBQkJ3SGRGK3MrbVFrQkJCQkFB
SUVnQkVvU3h1VFlVSWx4bENKREVjZjFIUll1V0xkQWV2Mi8KWHJLbGFvdERLUlloZ0FBQ0NPUkxv
THlzWEdaY05VTTZOODNUM1FueitEY2tYeWJVaXdBQ0NDQ1FYNEdDSFFIUmJ1a2Z2TjhjOXB2OAo5
cERhRVVBQUFRVFNDdWcrT0cvSlI5cFdXWUFBQWdnZ1VNd0NCVDBDb3ZEVk5kVnkwQU1IeVlSdkpo
VHpPTkIzQkJCQUlIQ0JnZTBHCnlpYy8va1JLNjVUbXIyMk9nT1RQbHBvUlFBQ0JpQW9VOUFpSW11
a2Z2c2RPZlV3YTFXMFVVVUxDUmdBQkJLSW5vUHRjM2ZmbU5mbUkKSGdzUkk0QUFBZ2dFSUZEd0JF
VDcyTE5GVDduM3hIc0Q2QzVOSUlBQUFnaW9nTzV6ZGQvTGhBQUNDQ0NBUU5BQ29VaEF0Tk0vM08r
SApjczJnYTRMdVArMGhnQUFDUlNlZysxcmQ1ekloZ0FBQ0NDQlFDSUdDWHdOaTc3UmVEL0w5Sjc0
dkw4OTYyVDZiNXdnZ2dBQUNQZ21jCjBPTUVlZjZzNTRNNzlZcHJRSHdhT2FwQkFBRUU0aU1RcWdS
RVdUZHQzeVJIL1BjSUdiOWtmSHlVNlFrQ0NDQVFBb0VEMng4b2IxL3cKdGxUVXF3Z3VHaEtRNEt4
cENRRUVFSWlJUUdoT3diSzg5QS9qcStlK0t2dTIzdGVheFNNQ0NDQ0FnRWNCM2FmcXZqWFE1TU5q
ekt5TwpBQUlJSUJCUGdkQWxJTXJjdkx5NXZIWCtXOUt2RGQvTUc4L05qbDRoZ0VDUUFyb3YxWDJx
N2x1WkVFQUFBUVFRS0xSQUtCTVFSV2xWCjBVcmV2ZkJkT2JUVG9ZVTJvbjBFRUVBZ3NnSzZEOVY5
cWU1VG1SQkFBQUVFRUFpRFFHZ1RFTVZwMnFDcHZISGVHM0pNdDJQQ1lFVU0KQ0NDQVFLUUVkTitw
KzFEZGx6SWhnQUFDQ0NBUUZvRlFKeUNLMUxCdVEzbnhuQmZsb240WGhjV01PQkJBQUlIUUMrZytV
L2VkdWc5bApRZ0FCQkJCQUlFd0NvVTlBRkt0ZWFUMTU2UHNQeWQrRy9VMUtTMHJENUVjc0NDQ0FR
S2dFZEIrcCswcmRaK3Era3drQkJCQkFBSUd3CkNZVHVOcnlaZ042Yy9hYWNPZnBNV2JOMVRhYWlM
RWNBQVFTS1NxQ3lRYVdNT20yVUhOMzk2UEQwbTl2d2htY3NpQVFCQkJBSWlVRGsKRWhCMW03Tm1q
cHc5K215K0t5UWtHeEZoSUlCQTRRWDBPejVHbmpaU3VsVjJLM3d3OWdoSVFPd2FQRWNBQVFRUU1B
UWljUXBXOGtqcApIOWdQTC81UWJqcjBKcU1Ea2V4Q2NwZDRqUUFDQ09Ra29QdEEzUmZxUGpGMHlV
ZE9QV0lsQkJCQUFJRzRDMFR5Q0loOVVONmUrN2FjCjk4eDVzbVRqRXZ0c25pT0FBQUt4RjJqZnFM
MDhlc3FqY2tUWEk4TGJWNDZBaEhkc2lBd0JCQkFva0VEa0V4QjFXNzFsdFZ6MytuWHkKbjBuL0tS
QWp6U0tBQUFMQkNselk5MEs1YTloZDRmOXlRUktRWURjTVdrTUFBUVFpSUJDTEJNUnlIak5ualB6
a3haL0kzTFZ6clZrOApJb0FBQXJFUzZOcXNxOXczL0Q0NXF0dFIwZWdYQ1VnMHhva29FVUFBZ1FB
RllwV0FxTnZtSFp2bGxyZHZrYnZIM1MzVmllb0FLV2tLCkFRUVF5SitBM2w3M1o0TitKbjg4NG8v
UittNFBFcEQ4YlJUVWpBQUNDRVJVSUhZSmlEVU9VNVpQa1d0ZXUwYmVtdnVXTll0SEJCQkEKSUpJ
Q1IzWTlVdjUrN04rbFQrcyswWXVmQkNSNlkwYkVDQ0NBUUo0RllwdUFXRzdQVG45V2Z2SEdMMlRP
MmpuV0xCNFJRQUNCU0FoMAphOVpON2p6bVRqbDU3NU1qRVcvS0lFbEFVckl3RXdFRUVDaG1nZGdu
SURxNDI2cTJ5ZDgvK2J2OCtZTS95OXB0YTR0NXZPazdBZ2hFClFLQlovV1p5MCtDYjVKcURycEg2
WmZVakVMRkRpQ1FnRGpnc1FnQUJCSXBUb0NnU0VHdG8xMjVkSzMvOThLL3lqM0gva0UwN05sbXoK
ZVVRQUFRUkNJVkJSdDBLdUhuUzFYSC9vOWRLc1FiTlF4T1E1Q0JJUXo0UlVnQUFDQ01STm9LZ1NF
R3Z3bG05YUxyZU52VTN1blhDdgpiS3ZlWnMzbUVRRUVFQ2lJUVAzUytuTFp3TXZrbDBOK0thMHJX
aGNraHJ3MVNnS1NOMW9xUmdBQkJLSXFVSlFKaURWWWk5WXZranMvCnVsUHVuM2kvYks3YWJNM21F
UUVFRUFoRW9HRlpRN2xrLzB2a0Y0ZjhRam8yNlJoSW00RTNRZ0lTT0RrTklvQUFBbUVYS09vRXhC
cWMKbFp0WHlvaHhJMlRFK0JHeVp1c2FhemFQQ0NDQVFGNEVLaHRVeWs4UC9LbDVXOTBXRFZ2a3BZ
M1FWRW9DRXBxaElCQUVFRUFnTEFJawpJTGFSMkxoOW8veDd3ci9OYTBRV3JsOW9XOEpUQkJCQXdM
dEFweWFkekdzOExoMTRxVFNxMThoN2hWR29nUVFrQ3FORWpBZ2dnRUNnCkFpUWdLYmlyYXFya3VS
blBtVjltT0hiQjJCUWxtSVVBQWdpNEZ4alNlWWg1dE9NSHZYNGdaWFhLM0s4WWg1SWtJSEVZUmZx
QUFBSUkKK0NwQUFwS0JjOUxTU2VhcFdZOVBmbHkyVkczSlVKckZDQ0NBd0xjQzVXWGxjczYrNTVp
bld2VnQyN2Q0V1VoQWluZnM2VGtDQ0NDUQpSb0FFSkExTTh1eFZtMWZKbzE4K0tnOSs5cUJNV1RF
bGVUR3ZFVUFBQVZPZ1Q2cytjdkdBaStXOC9jNlQyRi9mNFdiTVNVRGNLRkVHCkFRUVFLQ29CRXBB
Y2hudmNvbkh5NE9jUHloTlRucEFOMnpma1VBT3JJSUJBbkFRYTEyc3NaL1U1U3k3dWY3RU02amdv
VGwzejNoY1MKRU8rRzFJQUFBZ2pFVElBRXhNT0FidHErU1o2YytxUjVaT1M5ZWU5SmpmR1BDUUVF
aWtPZ2p0U1J3N29jWmg3cE9HT2ZNNlNpWGtWeApkRHpiWHBLQVpDdEdlUVFRUUNEMkFpUWdQZzN4
NHZXTHpTTWllcTNJWjBzLzg2bFdxa0VBZ2JBSkRHZzd3THkyUTQ5NGRHalNJV3poCmhTOGVFcER3
alFrUklZQUFBZ1VXSUFISnd3RE1XRGxETkJFWk5XV1V6Rnc5TXc4dFVDVUNDQVFwMExONVR6bXp6
NWxtNHRHclphOGcKbTQ1K1d5UWcwUjlEZW9BQUFnajRMRUFDNGpOb2NuVlRsMCtWWjZZL1kvNThz
ZXlMNU1XOFJnQ0JrQXIwYTlOUFR0bjdGUE5ubjliNwpoRFRLQ0lSRkFoS0JRU0pFQkJCQUlGZ0JF
cEFBdmVlc21XTW1JczlPZjFZK1dmUUoxNHdFYUU5VENHUVMwR3M2RHVwNGtKeTg5OGxtCjB0R3Rz
bHVtVlZqdVJvQUV4STBTWlJCQUFJR2lFaUFCS2RCd3I5eThVbDc3K2pWNWVlYkw4dnJzMTJYTjFq
VUZpb1JtRVNoZWdjb0cKbFRLcyt6QTVvZWNKY3V5ZXgwckxoaTJMRnlOZlBTY0J5WmNzOVNLQUFB
S1JGU0FCQ2NIUVZkZFV5OGVMUHBaWFpyMWkvbnk1N0V0SgpHUCtZRUVEQVg0RVNLWkg5MnV3bngv
YzQzdnc1dU9QQlVscW4xTjlHcUcxWEFSS1FYVDE0aFFBQ0NDQWdKQ0FoM0FoV2JGb2hiODE5ClM5
NmFZL3dZajNQWHpnMWhsSVNFUURRRXVqYnJLa2QyUFZLTzdHYjhHSSt0S2xwRkkvQzRSRWtDRXBl
UnBCOElJSUNBYndJa0lMNVIKNXE4aXZYYkVTa2Jlbi8rK2ZMUHhtL3cxUnMwSVJGeWdYYU4yOHIw
OXZsZWJkSEF0UjRFSGxBU2t3QU5BOHdnZ2dFRDRCRWhBd2pjbQpHU09hdlhxMmpGMHdWc2JPSHlz
ZkxQaUFXLzFtRktOQW5BWDBGcm1ET3crV0lYc01rU0dkaDBqMzV0M2ozTjNvOVkwRUpIcGpSc1FJ
CklJQkFuZ1ZJUVBJTUhFVDF5ell1TXhNUnZZNWszS0p4OHRrM244bm1xczFCTkUwYkNBUXEwTENz
b1F4b04wQUdkUndrZXYyR0poNXQKR3JVSk5BWWF5MUtBQkNSTE1Jb2pnQUFDOFJjZ0FZbmhHRmZW
Vk1tVTVWTmsvT0x4WmtLaWo5TldUT08ydnpFYzZ6aDNTVytMMjd0Vgpiem13dzRGbXdxR1BmVnIz
a2JJNlpYSHVkdno2UmdJU3Z6R2xSd2dnZ0lCSEFSSVFqNEJSV1gzajlvMHlhZWtrK1h6cDUvTEYw
aS9rCjgyOCtsNmtycHNxMjZtMVI2UUp4eGxpZ2ZtbDkyYWZWUHRLL1hYL3AxN2FmOUcvYlgvcTI3
U3VONmpXS2NhK0xwR3NrSUVVeTBIUVQKQVFRUWNDOUFBdUxlS25ZbGQxVHZrT2tycDVzSmlTWWwr
cTN0bXBRczNyQTRkbjJsUStFUjZOQzRnNWxzNkxlTGE3S2hQM3FrZ3lNYgo0UmtqWHlNaEFmR1Zr
OG9RUUFDQk9BaVFnTVJoRkgzdXc3cXQ2OHhFUkJNU1BYVkxreEo5SkRIeEdUcm0xV21pb1ltRkh0
a3dINDJFClE1ODNiZEEwNWoybmU3c0lrSURzd3NFTEJCQkFBQUhoZTBEWUNOd0xiTnErU2I1ZS9i
WE1YRFZUWnEyZTllM2pxbG5tOHhXYlY3aXYKaUpLeEVXalZzSlgwYU41RGVyVG9JVDFiOURTZjYr
T2V6ZmVVaW5vVnNla25IZkVnUUFMaUFZOVZFVUFBZ1hnS2NBUWtudU1hZUsvVwpibDByYzlmTWxY
bHI1Nlg4V2I5OWZlQXgwYUIzZ1NiMW1raVhabDFTL3VqM2EzQTB3N3R4N0dzZ0FZbjlFTk5CQkJC
QUlGc0JFcEJzCnhTaWZrOENhTFd0a3dib0Y1bWxjaTljdlR2bTRhc3Vxbk9wbXBkd0VXcFMzRUQx
TnFrTVQ0eWZGWStlbW5hV3l2REszeWxrTEFVdUEKQk1TUzRCRUJCQkJBWUtjQUNRaWJRbWdFdGxW
dGsrV2JscWY5MGRPOGRQbnFMYXRGajdqb3RTbzF4ajhtTVc1WVc4YzhHdEdzUVROcApYdDVjV2xl
MEZqMDlTaC9UL2RRdnF3OGRBdmtYSUFISnZ6RXRJSUFBQWhFVElBR0oySUFSN25jQ2lVUkMxbTFi
SjNwMFpjMVc0MmZuCm95WW5ldHZoVEQ5YnE3YUtKajE2SzJMN1kxV2k2cnRHOHZDc3JLUk05TTIv
M25yVy90aWdySUY1MjFtOTlhelRqeVlabFEwcXphTVQKMW1QVCtrMmxSTi9vTVNFUU5nRVNrTENO
Q1BFZ2dBQUNCUmNnQVNuNEVCQkEyQVNxYTZwcms1THFSTFhvNjVwRWplaHpmVFNmNzV5bgp6M1dx
VTJJY2d6QitTdXVVZnZlODVOdm5PcS9VZUc0bEcvcWFDWUdpRVNBQktacWhwcU1JSUlDQVd3RVNF
TGRTbEVNQUFRUVF5RjZBCkJDUjdNOVpBQUFFRVlpNVFKK2I5bzNzSUlJQUFBZ2dnZ0FBQ0NDQVFJ
Z0VTa0JBTkJxRWdnQUFDQ0NDQUFBSUlJQkIzQVJLUXVJOHcKL1VNQUFRUVFRQUFCQkJCQUlFUUNK
Q0FoR2d4Q1FRQUJCQkJBQUFFRUVFQWc3Z0lrSUhFZllmcUhBQUlJSUlBQUFnZ2dnRUNJQkVoQQpR
alFZaElJQUFnZ2dnQUFDQ0NDQVFOd0ZTRURpUHNMMER3RUVFRUFBQVFRUVFBQ0JFQW1RZ0lSb01B
Z0ZBUVFRUUFBQkJCQkFBSUc0CkM1Q0F4SDJFNlI4Q0NDQ0FBQUlJSUlBQUFpRVNJQUVKMFdBUUNn
SUlJSUFBQWdnZ2dBQUNjUmNnQVluN0NOTS9CQkJBQUFFRUVFQUEKQVFSQ0pFQUNFcUxCSUJRRUVF
QUFBUVFRUUFBQkJPSXVRQUlTOXhHbWZ3Z2dnQUFDQ0NDQUFBSUloRWlBQkNSRWcwRW9DQ0NBQUFJ
SQpJSUFBQWdqRVhZQUVKTzRqVFA4UVFBQUJCQkJBQUFFRUVBaVJBQWxJaUFhRFVCQkFBQUVFRUVB
QUFRUVFpTHNBQ1VqY1I1aitJWUFBCkFnZ2dnQUFDQ0NBUUlnRVNrQkFOQnFFZ2dBQUNDQ0NBQUFJ
SUlCQjNBUktRdUk4dy9VTUFBUVFRUUFBQkJCQkFJRVFDWmE1aUtTbHgKVll4Q0NDQ0FBQUlJSUlB
QUFnZ2dnSUNUUU9ZRUpKRndXcDlsQ0NDQUFBSUlJSUFBQWdnZ2dJQnJBVTdCY2sxRlFRUVFRQUFC
QkJCQQpBQUVFRVBBcVFBTGlWWkQxRVVBQUFRUVFRQUFCQkJCQXdMVUFDWWhyS2dvaWdBQUNDQ0NB
QUFJSUlJQ0FWd0VTRUsrQ3JJOEFBZ2dnCmdBQUNDQ0NBQUFLdUJVaEFYRk5SRUFFRUVFQUFBUVFR
UUFBQkJMd0trSUI0RldSOUJCQkFBQUVFRUVBQUFRUVFjQzFBQXVLYWlvSUkKSUlBQUFnZ2dnQUFD
Q0NEZ1ZZQUV4S3NnNnlPQUFBSUlJSUFBQWdnZ2dJQnJBUklRMTFRVVJBQUJCQkJBQUFFRUVFQUFB
YThDSkNCZQpCVmtmQVFRUVFBQUJCQkJBQUFFRVhBdVFnTGltb2lBQ0NDQ0FBQUlJSUlBQUFnaDRG
U0FCOFNySStnZ2dnQUFDQ0NDQUFBSUlJT0JhCmdBVEVOUlVGRVVBQUFRUVFRQUFCQkJCQXdLc0FD
WWhYUWRaSEFBRUVFRUFBQVFRUVFBQUIxd0lrSUs2cEtJZ0FBZ2dnZ0FBQ0NDQ0EKQUFKZUJVaEF2
QXF5UGdJSUlJQUFBZ2dnZ0FBQ0NMZ1dJQUZ4VFVWQkJCQkFBQUVFRUVBQUFRUVE4Q3BBQXVKVmtQ
VVJRQUFCQkJCQQpBRE9jSWM0QUFBbWJTVVJCVkFFRUVFREF0UUFKaUdzcUNpS0FBQUlJSUlBQUFn
Z2dnSUJYQVJJUXI0S3Nqd0FDQ0NDQUFBSUlJSUFBCkFxNEZTRUJjVTFFUUFRUVFRQUFCQkJCQUFB
RUV2QXFRZ0hnVlpIMEVFRUFBQVFRUVFBQUJCQkJ3TFVBQzRwcUtnZ2dnZ0FBQ0NDQ0EKQUFJSUlP
QlZnQVRFcXlEckk0QUFBZ2dnZ0FBQ0NDQ0FnR3NCRWhEWFZCUkVBQUVFRUVBQUFRUVFRQUFCcndJ
a0lGNEZXUjhCQkJCQQpBQUVFRUVBQUFRUmNDNUNBdUthaUlBSUlJSUFBQWdnZ2dBQUNDSGdWSUFI
eEtzajZDQ0NBQUFJSUlJQUFBZ2dnNEZxQUJNUTFGUVVSClFBQUJCQkJBQUFFRUVFREFxd0FKaUZk
QjFrY0FBUVFRUUFBQkJCQkFBQUhYQWlRZ3Jxa29pQUFDQ0NDQUFBSUlJSUFBQWw0RlNFQzgKQ3JJ
K0FnZ2dnQUFDQ0NDQUFBSUl1QllnQVhGTlJVRUVFRUFBQVFRUVFBQUJCQkR3S2tBQzRsV1E5UkZB
QUFFRUVFQUFBUVFRUU1DMQpBQW1JYXlvS0lvQUFBZ2dnZ0FBQ0NDQ0FnRmNCRWhDdmdxeVBBQUlJ
SUlBQUFnZ2dnQUFDcmdWSVFGeFRVUkFCQkJCQUFBRUVFRUFBCkFRUzhDcENBZUJWa2ZRUVFRQUFC
QkJCQUFBRUVFSEF0UUFMaW1vcUNDQ0NBQUFJSUlJQUFBZ2dnNEZXQUJNU3JJT3NqZ0FBQ0NDQ0EK
QUFJSUlJQ0Fhd0VTRU5kVUZFUUFBUVFRUUFBQkJCQkFBQUd2QWlRZ1hnVlpId0VFRUVBQUFRUVFR
QUFCQkZ3TGtJQzRwcUlnQWdnZwpnQUFDQ0NDQUFBSUllQlVnQWZFcXlQb0lJSUFBQWdnZ2dBQUND
Q0RnV29BRXhEVVZCUkZBQUFFRUVFQUFBUVFRUU1DckFBbUlWMEhXClJ3QUJCQkJBQUFFRUVFQUFB
ZGNDSkNDdXFTaUlBQUlJSUlBQUFnZ2dnQUFDWGdWSVFMd0tzajRDQ0NDQUFBSUlJSUFBQWdpNEZp
QUIKY1UxRlFRUVFRQUFCQkJCQUFBRUVFUEFxUUFMaVZaRDFFVUFBQVFRUVFBQUJCQkJBd0xVQUNZ
aHJLZ29pZ0FBQ0NDQ0FBQUlJSUlDQQpWd0VTRUsrQ3JJOEFBZ2dnZ0FBQ0NDQ0FBQUt1QlVoQVhG
TlJFQUVFRUVBQUFRUVFRQUFCQkx3S2tJQjRGV1I5QkJCQUFBRUVFRUFBCkFRUVFjQzFBQXVLYWlv
SUlJSUFBQWdnZ2dBQUNDQ0RnVllBRXhLc2c2eU9BQUFJSUlJQUFBZ2dnZ0lCckFSSVExMVFVUkFB
QkJCQkEKQUFFRUVFQUFBYThDSkNCZUJWa2ZBUVFRUUFBQkJCQkFBQUVFWEF1UWdMaW1vaUFDQ0ND
QUFBSUlJSUFBQWdoNEZTQUI4U3JJK2dnZwpnQUFDQ0NDQUFBSUlJT0JhZ0FURU5SVUZFVUFBQVFR
UVFBQUJCQkJBd0tzQUNZaFhRZFpIQUFFRUVFQUFBUVFRUUFBQjF3SWtJSzZwCktJZ0FBZ2dnZ0FB
Q0NDQ0FBQUplQlVoQXZBcXlQZ0lJSUlBQUFnZ2dnQUFDQ0xnV0lBRnhUVVZCQkJCQUFBRUVFRUFB
QVFRUThDcEEKQXVKVmtQVVJRQUFCQkJCQUFBRUVFRURBdFFBSmlHc3FDaUtBQUFJSUlJQUFBZ2dn
Z0lCWEFSSVFyNEtzandBQ0NDQ0FBQUlJSUlBQQpBcTRGU0VCY1UxRVFBUVFRUUFBQkJCQkFBQUVF
dkFxUWdIZ1ZaSDBFRUVBQUFRUVFRQUFCQkJCd0xVQUM0cHFLZ2dnZ2dBQUNDQ0NBCkFBSUlJT0JW
Z0FURXF5RHJJNEFBQWdnZ2dBQUNDQ0NBZ0dzQkVoRFhWQlJFQUFFRUVFQUFBUVFRUUFBQnJ3SWtJ
RjRGV1I4QkJCQkEKQUFFRUVFQUFBUVJjQzVDQXVLYWlJQUlJSUlBQUFnZ2dnQUFDQ0hnVklBSHhL
c2o2Q0NDQUFBSUlJSUFBQWdnZzRGcUFCTVExRlFVUgpRQUFCQkJCQUFBRUVFRURBcXdBSmlGZEIx
a2NBQVFRUVFBQUJCQkJBQUFIWEFpUWdycWtvaUFBQ0NDQ0FBQUlJSUlBQUFsNEZTRUM4CkNySStB
Z2dnZ0FBQ0NDQ0FBQUlJdUJZZ0FYRk5SVUVFRUVBQUFRUVFRQUFCQkJEd0trQUM0bFdROVJGQUFB
RUVFRUFBQVFRUVFNQzEKQUFtSWF5b0tJb0FBQWdnZ2dBQUNDQ0NBZ0ZjQkVoQ3ZncXlQQUFJSUlJ
QUFBZ2dnZ0FBQ3JnVklRRnhUVVJBQkJCQkFBQUVFRUVBQQpBUVM4Q3BDQWVCVmtmUVFRUUFBQkJC
QkFBQUVFRUhBdFFBTGltb3FDQ0NDQUFBSUlJSUFBQWdqOC8vYnIwQVlBQUFCaDJQOWY4d0xKCmJE
Mll1aEdvQWdLa0N2b1RJRUNBQUFFQ0JBZ1FJSEFMQ0pDYnlwQUFBUUlFQ0JBZ1FJQUFnU29nUUtx
Z1B3RUNCQWdRSUVDQUFBRUMKdDRBQXVha01DUkFnUUlBQUFRSUVDQkNvQWdLa0N2b1RJRUNBQUFF
Q0JBZ1FJSEFMQ0pDYnlwQUFBUUlFQ0JBZ1FJQUFnU29nUUtxZwpQd0VDQkFnUUlFQ0FBQUVDdDRB
QXVha01DUkFnUUlBQUFRSUVDQkNvQWdLa0N2b1RJRUNBQUFFQ0JBZ1FJSEFMQ0pDYnlwQUFBUUlF
CkNCQWdRSUFBZ1NvZ1FLcWdQd0VDQkFnUUlFQ0FBQUVDdDRBQXVha01DUkFnUUlBQUFRSUVDQkNv
QWdLa0N2b1RJRUNBQUFFQ0JBZ1EKSUhBTENKQ2J5cEFBQVFJRUNCQWdRSUFBZ1NvZ1FLcWdQd0VD
QkFnUUlFQ0FBQUVDdDRBQXVha01DUkFnUUlBQUFRSUVDQkNvQWdLawpDdm9USUVDQUFBRUNCQWdR
SUhBTENKQ2J5cEFBQVFJRUNCQWdRSUFBZ1NvZ1FLcWdQd0VDQkFnUUlFQ0FBQUVDdDRBQXVha01D
UkFnClFJQUFBUUlFQ0JDb0FnS2tDdm9USUVDQUFBRUNCQWdRSUhBTENKQ2J5cEFBQVFJRUNCQWdR
SUFBZ1NvZ1FLcWdQd0VDQkFnUUlFQ0EKQUFFQ3Q0QUF1YWtNQ1JBZ1FJQUFBUUlFQ0JDb0FnS2tD
dm9USUVDQUFBRUNCQWdRSUhBTENKQ2J5cEFBQVFJRUNCQWdRSUFBZ1NvZwpRS3FnUHdFQ0JBZ1FJ
RUNBQUFFQ3Q0QUF1YWtNQ1JBZ1FJQUFBUUlFQ0JDb0FnS2tDdm9USUVDQUFBRUNCQWdRSUhBTENK
Q2J5cEFBCkFRSUVDQkFnUUlBQWdTb2dRS3FnUHdFQ0JBZ1FJRUNBQUFFQ3Q0QUF1YWtNQ1JBZ1FJ
QUFBUUlFQ0JDb0FnS2tDdm9USUVDQUFBRUMKQkFnUUlIQUxDSkNieXBBQUFRSUVDQkFnUUlBQWdT
b2dRS3FnUHdFQ0JBZ1FJRUNBQUFFQ3Q0QUF1YWtNQ1JBZ1FJQUFBUUlFQ0JDbwpBZ0trQ3ZvVElF
Q0FBQUVDQkFnUUlIQUxDSkNieXBBQUFRSUVDQkFnUUlBQWdTb2dRS3FnUHdFQ0JBZ1FJRUNBQUFF
Q3Q0QUF1YWtNCkNSQWdRSUFBQVFJRUNCQ29BZ0trQ3ZvVElFQ0FBQUVDQkFnUUlIQUxDSkNieXBB
QUFRSUVDQkFnUUlBQWdTb2dRS3FnUHdFQ0JBZ1EKSUVDQUFBRUN0NEFBdWFrTUNSQWdRSUFBQVFJ
RUNCQ29BZ0trQ3ZvVElFQ0FBQUVDQkFnUUlIQUxDSkNieXBBQUFRSUVDQkFnUUlBQQpnU29nUUtx
Z1B3RUNCQWdRSUVDQUFBRUN0NEFBdWFrTUNSQWdRSUFBQVFJRUNCQ29BZ0trQ3ZvVElFQ0FBQUVD
QkFnUUlIQUxDSkNiCnlwQUFBUUlFQ0JBZ1FJQUFnU29nUUtxZ1B3RUNCQWdRSUVDQUFBRUN0NEFB
dWFrTUNSQWdRSUFBQVFJRUNCQ29BZ0trQ3ZvVElFQ0EKQUFFQ0JBZ1FJSEFMQ0pDYnlwQUFBUUlF
Q0JBZ1FJQUFnU29nUUtxZ1B3RUNCQWdRSUVDQUFBRUN0NEFBdWFrTUNSQWdRSUFBQVFJRQpDQkNv
QWdLa0N2b1RJRUNBQUFFQ0JBZ1FJSEFMQ0pDYnlwQUFBUUlFQ0JBZ1FJQUFnU29nUUtxZ1B3RUNC
QWdRSUVDQUFBRUN0NEFBCnVha01DUkFnUUlBQUFRSUVDQkNvQWdPaW1SSUk3dDM5dVFBQUFBQkpS
VTVFcmtKZ2dnPT0KCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9y
ZWxhdGl2ZS1zaXplZC11c2Utd2l0aG91dC1hdHRyaWJ1dGVzLW9uLXN5bWJvbC1leHBlY3RlZC5w
bmcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmlsZSBtYXJrZWQgYXMgYSBiaW5hcnkgdHlw
ZS4Kc3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKUHJvcGVydHkgY2hh
bmdlcyBvbjogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vcmVsYXRpdmUtc2l6
ZWQtdXNlLXdpdGhvdXQtYXR0cmlidXRlcy1vbi1zeW1ib2wtZXhwZWN0ZWQucG5nCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KQWRkZWQ6IHN2bjptaW1lLXR5cGUKICAgKyBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCgpp
VkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBeUFBQUFKWUNBWUFBQUNhZG9Kd0FBQURPMmxEUTFCSlEw
TWdVSEp2Wm1sc1pRQUFlQUdGCmxFdG8xRkFVaHYrTUtZSzBncWkxRnBUZ1FvdTBKVDdRaWxEYmFi
WFdrWEVZKzlBaXlEUnpaeHBOTXpHWkdSK0lTRUhjK1ZxS0d4K0kKaXlyaVFycFFjS1VMa1VMcmEx
RUVjYVVpaUVJM1VzYi9KdTFNS2xZdkpQbHl6bi9QNjRZQVZROVRqbU5GTkdEWXpydkpycWgyNlBD
QQp0bmdDVmFoQk5iaFNodWUwSnhMN2ZhWldQdWV2NmJkUXBHV3lTY2FLOVIyWStMUnQ5ZjFMajJM
djY1NzIrcDc1K25sdk5TNFRBb3BHCjY0cHN3RnNsRHdhOFYvTEp2Sk9uNW9oa1l5aVZKanZrUnJj
bjJVRytRVjZhRGZGZ2lOUENNNENxTm1weWh1TXlUbVFGdWFWb1pHWE0KVWJKdXAwMmJQQ1h0YWM4
WXBvYjlSbjdJV2RER2xZOEJyV3VBUlM4cnRnRVBHTDBMckZwZnNUWFVBU3Y3Z2JFdEZkdlBwRDhm
cFhiYwp5MnpaN0lkVHFxT3M2VU9wOUhNOXNQZ2FNSE8xVlBwMXExU2F1YzBjck9PWlpSVGNvcTls
WWNvcklLZzMyTTM0eVRsYWlJT2VmRlVMCmNKTno3RjhDeEM0QTF6OENHeDRBeXg4RGlScWdad2Np
NTlsdWNPWEZLYzRGNk1nNXAxMHpPNVRYTnV2NmRxMmRSeXUwYnR0b2J0UlMKbHFYNUxrOXpoU2Zj
b2tnM1k5Z3FjTTcrV3NaN3RiQjdEL0xKL2lMbmhMZDdscFdSZEtxVHMwUXoyL3FTRnAyN3lZM2tl
eGx6VHplNQpnZGRVeHQzVEc3Q3kwY3gzOXdRYzZiT3RPTTlGYWlKMTltRDhBSm54RmRYSlIrVThK
STk0eFlNeXBtOC9sdHFYSU5mVG5qeWVpMGxOCkxmZTJuUm5xNFJsSlZxd3pReDN4V1g3dEZwSXk3
enBxN2ppVy84Mnp0c2h6SElZRkFSTTI3elkwSk5HRktKcmd3RVVPR1hwTUtreGEKcFYvUWFzTEQ4
YjhxTFNUS3V5d3F1dkNaZXo3N2UwNmd3TjB5ZmgraWNZdzBsaU5vK2p2OW0vNUd2Nm5mMGI5ZXFT
ODBWRHdqN2xIVApHTC84blhGbFpsbU5qQnZVS09QTG1vTDRCcXR0cDlkQ2x0WmhYa0ZQWGxuZkZL
NHVZMStwTDNzMG1VTmNqRStIdWhTaFRFMFlaRHpaCnRleStTTGI0SnZ4OGM5a1dtaDYxTDg0K3Fh
dmtlcU9PSFptc2ZuRTJYQTFyLzdPcllOS3lxL0RralpBdVBHdWhybFUzcWQxcWk3b0QKbXJwTGJW
TmIxVTYrN1ZUM2wzZjBjbFltVHJKdWw5V24ySU9OMC9SV1Ryb3lXd1QvRm40eC9DOTFDVnU0cHFI
SmYyakN6V1ZNUy9pTwo0UFlmZDBqNUwvd05BWVVWRFh4TE96c0FBQ0FBU1VSQlZIZ0I3TjBIbkJU
bC9mang3M0ZIT1k1MjlDNUZFQkdsaUdLQktEWnNtTmhMCnJESEdtcWd4dHNRMGsyaGk5SmRFL2li
R21tZ1VVZXhkc1dJRFFVV3FJTDFJNzUyNzIvOThSK1ljbHQzWjJaM1oyWm5aei9BNmRuZm0KbWVm
NVB1OW5ibTYvTzJWTEVzWWtUQWdnZ0FBQ0NDQ0FBQUlJSUlCQUFBSjFBbWlESmhCQUFBRUVFRUFB
QVFRUVFBQUJVNEFFaEEwQgpBUVFRUUFBQkJCQkFBQUVFQWhNZ0FRbU1tb1lRUUFBQkJCQkFBQUVF
RUVDQUJJUnRBQUVFRUVBQUFRUVFRQUFCQkFJVElBRUpqSnFHCkVFQUFBUVFRUUFBQkJCQkFnQVNF
YlFBQkJCQkFBQUVFRUVBQUFRUUNFeUFCQ1l5YWhoQkFBQUVFRUVBQUFRUVFRSUFFaEcwQUFRUVEK
UUFBQkJCQkFBQUVFQWhNZ0FRbU1tb1lRUUFBQkJCQkFBQUVFRUVDQUJJUnRBQUVFRUVBQUFRUVFR
QUFCQkFJVElBRUpqSnFHRUVBQQpBUVFRUUFBQkJCQkFnQVNFYlFBQkJCQkFBQUVFRUVBQUFRUUNF
eUFCQ1l5YWhoQkFBQUVFRUVBQUFRUVFRSUFFaEcwQUFRUVFRQUFCCkJCQkFBQUVFQWhNZ0FRbU1t
b1lRUUFBQkJCQkFBQUVFRUVDQUJJUnRBQUVFRUVBQUFRUVFRQUFCQkFJVElBRUpqSnFHRUVBQUFR
UVEKUUFBQkJCQkF3TmNFWk9QR2piSnc0VUpVSXlTd2F0VXFtVFZyVmw0aXJxNnVsaGt6WnFTdDIr
KzI4N245SmZmRjc5anRTTnUyYlpPUApQdnJJUGl0eXp6ZHQydVJMek1udXlaWHFtQzlldkRoNXRp
K3Z0VzQvcDN4dW54cG5wdTBtazZYVjEyKysrVWJlZnZ0dFdiMTZ0U1J2CjU4bHRKTCsyNmlqVVk3
Nk5uZnJsdGUyd1dUcjFOZGRseWR0VGNqMWVEWlByaS9ycnNIaTQzWGY0NFIyV1B2dlJGK3B3RnNp
WWdKeDQKNG9uU3JsMDdPZm5raytXODg4NlQwdEpTNmQ2OXUvendoeitVWTQ0NVJ1clhyeStQUFBL
SWpCNDkyaXozNktPUE9yZkkwbEFKL1BhMwp2NVZUVGpuRjk1ZysvL3h6MlgvLy9lWFNTeTlOVzdl
ZmJlZHorMHZWRno5anR3Tk5tREJCRGo3NDRMeU1pYjJkZkQ1Lzk5MTM1ZlhYClgvZmNSQ3AzZTZV
UFAveXd0R2pSUXA1NjZpbjdiTitlNjRjcHVtL3pZOHJuOXFueFpkcHVNbGxhZmZ6SFAvNGh6enp6
akprQTkrN2QKVzI2NTVaYmFiVEc1amVUWFZoMkZlc3kzc1ZPL3ZMWWROa3Vudm5wWjVyVGY5R3Jv
SmE0d3Joc1dEN2Y3RGo4TXc5Sm5QL3BDSFprRgpNaVlnRFJzMmxHblRwc216eno0cm1selVxMWRQ
dnZlOTc4bGpqejBtYjd6eGh2enZmLytUTFZ1MnlHbW5uU2FkTzNmTzNDSWw4aTZnCm56Ni8vUExM
cnRxNTQ0NDdaTXlZTWE3S1psT29mLy8rNW5aU1ZsYVdkald2YmR2N21jL3RMMVZmdk1hZURtWGd3
SUZtb3A5dWVTSG4KMjczVHhYSHZ2ZmVhUjlUOFNHcFR1ZHZidmVpaWk2UjU4K2IyV2I0KzMzdnZ2
V1hJa0NGeStlV1hTeUtSOEZSM1ByZFBEU3pUZHBQSgpVdXZZc0dHRDNIVFRUWExGRlZlWWljZjc3
Nzh2ZDkxMVYrMytJYm1ONU5kYWg5OVRwbTNPdmp6ZnhrNTk4OXAyRUpaTzhRZTFMSG0vCkdaYnhD
NnIvMmJUamRadktwaTJuc203MkhVN3JaMXJHTnBCSktMN0xNeVlnVjE5OXRWUldWcVlWK01FUGZp
QzZnZXFrYnpaTFNrclMKbHMxbFFhNS8rTE5kYjhlT0hibUVsM0lkUCt0SzJZRER6TzNidDh0Wlo1
MGxFeWRPM0sxVXFyZzB3V3pUcHMxdVpiM01xS21wTVZmWApvMlYxNnFUZnhMeTBuYXFmK2RqKzB2
WEZTK3laYlBQUmoweHRabHFleWp0NW5mbno1OHVERHo0b2wxeHlTZktpckYrbmMwK3VLTjlXClhi
dDJOZmQvdVJ4bFNkNEg1VHZXZFBXN3Rad3laWXJvcVJiV1ByeG56NTZTdkowbnQ1SDhPbmw4dkx6
T3RNMmxXcDdQZURMMXhXdmIKWHRmWCtGTHQ0elBGblc2NW4zVlpiZGkzSnovSEw1dFlrMzh2cmRq
QzhKZ2NtOXR0SWxQL2srdDEyMWUzK3c1N2ZVNXRKY2ZwNXpaZwpqNEhuMFJCSS8rNXdaL3lISG5x
b1kwL3ExcTByQng1NFlHMFovUVAycTEvOXlqd2FzczgrKzhqczJiTnJsK201eGRkZGQ1MGNjY1FS
Ck1tREFBTWZ6M0VlT0hDbjZhZXFkZDk0cGh4eHlpRm5ISzYrOEltM2J0cFVERGppZ3R0NVBQLzFV
OXRoamo5cFA2VFNiUHYvODgrV2EKYTY2UlljT0d5WmxubmltMzNYYWI2S2Q1cWFZMzMzeFQvdktY
djhqZi8vNTMwYjVPbWpUSkxEWisvSGp6alpTZWd2Q0hQL3hCV3JacwpLZVBHalJPblBxU3JLMVc3
R3VjdmYvbEwrZXRmLzJvbURQckprRFd0WDc5ZXJycnFLcm5oaGh2azFGTlBOWjlyZVozZWV1c3Rz
MCsvCitNVXY1TDc3N2pOUGg5dHJyNzFrenB3NTV2SVJJMGFJeHZIODg4L0x4UmRmTExwZXVyajAz
UG5iYjc5ZERqcm9JRmQxYXlHbi91dTUKbS9wcHNYcGZlZVdWb21PVGJzcWxiWHRkcWZxcHkvM2Ev
cHo2a2h5N20rM1NIcnMrZDNKMFczYm16Sm1pMjhHMTExNXJqcmYrVHVscApieDkrK0tHNUhlc25h
SHI2NUIvLytNZmFLdE8xbTh0MlZWdnB6aWY2dTZKdFdsTXV2ME5PN2xhOXlZKzZqZi84NXo4M0Uy
azEwRGZTCjF1VDB1L1RaWjUrWit3ZzkxZWk5OTk0VGZkMjNiMS96U0srMXZqNXFRcTk5cTZxcXNz
OU8renpWdnNzcTdMUjlPc1dxQ1ZDSERoMUUKdDN1ZFJvMGFKZnA3ZjlsbGwxbFY3L2FZamVWRER6
MGt0OTU2cTluSG4vM3NaM0xqalRlYTE5Ylk5dys3TmVCaWhwYytwZnNkdDVwTgp0OXpKT04zMmI5
VnBQVDczM0hQbVBsK1A1SzFkdTlZOEZhOVZxMWJtYWNmVzM3Uy8vZTF2NWxGZXZYYkRtcHphZHJL
dzFyYy91bzFWCjEwbTNqOC9sZHpCZFhmYlk5SG0yUnNuN3pWekdMemtHdDdIcWVycWZTUGZlSUJl
bmRPT1RhVithM0FkOW5lcytJMTMvOVJSWWZlK2oKKzYzcnI3L2VmTi9Vc1dQSFhVNk5UUmUveHBQ
TnZzTk5XK25pOUdNYjBIaVpJaXBnWkt0WlRRMGFORWhjZU9HRktkZlpiNy85RXYzNgo5VXNZYi9Z
VHhzYWRNUDZ3SjR3M3dXWlpJL05OSEh2c3NRbGp3MDRZV1hYQ2VJT2FNTTdmVGhnWHBlMVdsNUVW
SjR3M0VyWHpqVGRaCkNXUEhicjQyL3VBbWpHdFFhcGRwV2VONmxOclhSaUtSTUpJUDg3Vng2cGll
TjVFd2twaUVjVDUzYlJucnlkYXRXeFBHRzdURU8rKzgKWTg3Ni9lOS9uekQrNEpqUGpTTUlabnpH
RzVMRUN5KzhrRENPQkNXKyt1cXJ0SDF3cXN0cXovNTQ1SkZISm95ZG5qbkxPTWZTak5ONAp3Mjdh
R0FsWDR2SEhIemVYcVp0eFRVRENTS2JNMXl0WHJrejA2dFhML0RGKzhSUEdUajFobkNwUzY2eUZ1
blRwa2pDU0FMTzhVMXpHClJhWUpJOUZKR01tVnE3b3pqYUhHYUp6RGFkYWxZMnpzOEJKSEgzMjAr
VHI1djJ6YlRsNWZYOXY3cWEvOTJ2NjBMcWUrSk1ldTVUTnQKbDFyR21qSTUzbjMzM1FrajBUYUxP
NVdkTjI5ZXdqaDFJOUd0V3pkekd6WGVDQ1hPUHZ2c2hQR3B2Ym5ORzIrY0VuLzYwNS9NYlV0Lwp6
NXpxeW5hN3N2cGlmMnpjdUhIaXBaZGVxcDJWN2UrUXJ1amtYbHV4N1lsdVkzMzY5RW5vNzhJSEgz
eVEySFBQUGMzdFF2Y0x1ZzA2Ci9TNXBOY2IxS3FiUGl5KythQm9hZnhCdHRYLzdWTjJNVTA4VEgz
Lzg4VzdMa21jNDdidWN0azgzc1dwZmRUeXRTYTFPUC8xMDYyWEMKdnQzb3pHd3RuM3p5eVlSeHhM
SzJ2bFRiZVhJYnlhOXJWemFlK05HbjVOOXhlLzM2UEhtNWs3SFQ5cDljcjc0MlB1amE1VytkN3JN
dgp1T0NDMnFLNnpSalhDTlcrZG1yYmpZWGRNcHRZbmZieDJmNE9PdFZWMjFIYmsyeU1VbTFQMll5
ZnJWbnphYmF4T3IwM3lOYkphWHpjCjdFdnRmY2wxbitIVS8wV0xGaVdNTXh2TXZ3MzZQa1AzWGNh
SFV3bmpRd3l6YWFmNHRVQTIrNDVNYlRuRnFXMTUyUVowZmFib0NtUTgKQXBKdFhuWENDU2VZNTAz
cmtZcWhRNGZXM2dYSmVFTnRmcnBtN0xUTlQrOGFOV3BrM21FbDFaRUpQUmY1eXkrL3JMMjRWQzlr
Tm9qTgpVUFNUZGYwRXl2aUZNbCsvOXRwcll2d1JyZzFUcjBuUm94VTY2VG5jZW5xUmZpcWwyWC95
cE5lejZIbmsxaWxrVFpzMmxlblRwNXZGCjlKTlUvWVRSZUhNanc0Y1BONCtRZlBMSkoybjc0RlJY
Y3J0NjdZeTJvMGR5ZERLU052TmFHdVBOazNudGhoNXBzZnFraDJCLzlLTWYKbVo5Y2pCMDcxcnpv
Vms4TDJYZmZmYzFQNDlxM2IyODY2NmZoOXNrNmpjSXBMajIxVG8wc1c3MmcxNmx1cHpFMDN2eVpu
OElaQ1ljWgpoclovL1BISDIwUGE1WG0yYmUreXN1MkYxVTlybGgvYlg2YStKTWV1YldmYUxxMzQ5
TkhKMFY0dVUxazk4cWZiZ1k2aGJxTTYxdnBvCi9FRXdqelRxOXF4SDBuUXlraFhIZGpPTnZWbUo4
Vit5dHpWLzZkS2w1alVFOXRQNXN2MGR5dVJ1dFpYOGFMd3BOSDhYOUFqbW4vLzgKWjdPditqdW0x
MEU1L1M1cFBZY2RkcGo1cWVqTk45OXM3cGYwK29ma1NYOEhkY3lUZjhlU3krbHJwMzJYTGsrM2Zi
cUoxZmp3WnhmLwo4dkx5WFY1ci9kYVVxNlcxdmo2bTJzN3R5ek05OTZ0UDZiWTVxLzNrNWVtTXMv
bTkwN3IxYjRQK2ZkRy9Iem9kZnZqaFlud1lKY1liClJ2TzFibU42aE5vK3BXdmJqWVc5bm14aWRk
ckhaL3M3NkZTWFBUN3JlVFpHNmJZbnQrTm50V2s5Wmh1cjAzdURiSjJjeHNmdHZ0VHEKUjY3N0RL
Zis2OUZTZmM5ejBra25tZTh6OUN3SDQ4TUw4NmptNU1tVEhmOFdaTHZ2eU5TV1U1eVdRYTdiZ0xV
K2o5RVVTSCtGY0k3OQpzVzlJK2diSU9uVkkzd2pvUmVvOWV2UXdhOVpIZlpPZDZzSjF2YkJVMzFT
Y2NjWVpZbnlpSy8vODV6L051Mi9waXBvUTZCdDN2VHVOCjNpMUlELy9wb1hCcjB1UkRUMEd4SnQw
WjZFWHpxU2FOVlg4cHYvamlDL01QalNZOWV1alJtdlFQdnE1dlRVNTl5RlNYVlljKzZpLzQKb0VH
RDdMUE11NHJwREQxdFNRLzE2NXNlYTdMS2FweDZVYXkyWlhmV1pNNStHb0N1WnkzUEZGZHlYY212
N1hVNzlmLysrKzgzM3dnMwphZExFQ3RzOGY5eUtvM2FtN1VseVc4bXY3VzNiVnR2bGFYTDk5dGU1
Ym4rYUZPdWJlcWUrSk1lYWFidTBCKzNrYUMrbnp6T1ZUWTVECnpleVQ5VnB2ZjVsTFhlbTJLM3Ni
K256dTNMbm1MTHVaenNqbWR5aVhiVWpiTUk2ODZJTTVXYWNUNm9jVTJ1ZE12MHU2a3A0R3FkYzcK
bkh2dXVXbXZXZEkydnY3NjYyOGJjZmpmYWQrbHE2WGJQdDM4M2pzMHU5c2lOOXZ3Yml1bG1KRzhm
YVVva25hV1gzMnltNlZxTEhtNQovWFd1K3dCdFIwKzkwOU1iOVpiRStzR0t2bkhUNUVQLzV1aHB4
RHJwTlEzMktWM2IyVnBrK2wxTmJyTVFmOGMwaG15TjFNZHVwSFU0CnZiYVBuNWExVDdxZVU3L3Ra
ZlY1cHZjRzJleXJmdmU3M3ptK24wbnVwOVBmc2x6M0dabjZyOHZ0MTJEcWV3ZE5CdlFVTWIzMWZy
cjMKWTduc2g1M2EwZy9KTW8yVHJtK2Y3SytkdGdIN09qeVBuc0IzNzNMekhQdTZkZXZNVDlyMUhI
VTMwd01QUENCNlJFQnYyNmR2dlBVUApxblZrUTQ4STZQVVRlczV5UlVXRjZIVW8xcVNmWk9xNWov
cExwanNVL1NXejNwUllaZXlQK291aDU2YmVjODg5NWpVbjl1VEZYazZmClorcUQyN3FNUTdUbStl
Yko5ZXRyNDlDb0xGdTJ6RHp2dUZtelptWVJQVWRkRXhKZDVuYXkvd0s3alN0VDNVNzlYN0praWVp
UEhrMngKdDIxL25xbitYSmE3cmQ4cDl1UjJjKzJMMDNacGJ5T2JXTElwcTIzb0h4eTdpZjE1dG5Y
Wlk3YWUyK3V6NXVtalhtdWkwNG9WSzh3Mwo4K2FMRlA4NXhaQ3J1NzBaL1RST2t3WDl0RldQeXJq
NVhUSk9FWkRXclZ1YlIwOTBERFZwU1o2MFRISnlsVnpHZXUyMDc3TEtKRC82CjlYdHYxZXVIcFZW
WHJvOSs5U25kTm1mRmxXbTVWYzVwMjdQSzJCOTFHOUlqaW5yM1I5Mm1CZzhlTEhyVVNULzlYck5t
elc1SFArenIKSmovUDFpTGJXTFBaeDJlcU81dTYvREJ5TzM3SnB2bzZtMWl6ZlcvZzVPUzBMRldj
bWVibHNzL0l0dis2N1dyQ3JEOU84ZnV4NzdDMwo1U1pPTDl0QUpsdVdoMWZBOTFPdzBuVlZrNGxY
WDMxVjlFSThhOUtMT3ZVQzN1Uko3Nyt2cDR6b0xTSDF0S2ZseTVlYk8zMnJuQjRWCjBUY0UrbWJC
T2xYSldxWkhSZlJDYUwzQVNzc1k1NlJiaTNaNzFJdE9yWXZNM2Z3Q09QVWhtN3FNYy9aRjd4aGt2
MWhXLzBEcGFXWDYKU2JxK2lkZUw0cXhKRXlTMTBtVnVKK3UwcW16aXlsUzNVLy8xZENEOW8yenZV
NmI2L0ZodTlUTlRYVTZ4SjYrYmExK2N0a3Q3RzluRQprazFaZXh1cG52dFJWenB2TmRNL092cDc1
elE1eFpDcnU3MDkvYjNTbzVoNlcxTzN2MHUvK2MxdnhMZ096THlscjE1OG5XclNmVkNYCkxsMVNM
ZHBsWHFaOTF5NkZiUy9jeHVyMlFuZy9MRzNoNWZUVXJ6NmwyK2Fzb0RJdHQ4bzViWHRXbWVSSDQz
cEg4M3RSOUNpOFB0Y2oKODNvYWxwNmFsZTdJZW5JZCt0cXRoYlZ1TnJGbXU0OTNxanZidWpSZXIw
WnV4OCt5c1I2empUV2I5d2JhaHBPVDB6SXJQcmVQdWU0egpzdTIvZnAyQzNsQkJ6Nmh3aXQrUGZZ
ZTlMVGR4NXJvTnVEV21YRGdGc2twQTlJK2ZucEtobnlxbW12UVB2NTdQYUUzNjJqcWxTYi9FClVM
TnVmWk9teVlXZVQ2MTN4TEt1ZzdEVzBVZE5VcDU0NGdsemxsNmZZVnk4THAwNmRhb3Rvb2ZrOU80
a2VwcUZ2dEd3VDNySEJ6MmsKZWRSUlI1bS9hUFpEa1BaeStuekJnZ1htTFAzV2FmMHVFMDJHOUpR
eFRRYU1pd2JOdysxVy9GclFxUStaNmpJYjJ2bmZPZWVjWXg2NQowVWM5SFV1djdkQzcyZWhkdy9T
Y1lrMVE5SnhoYTlJdnFkSzc4MmlmZE5MRXlqb3ZXVitydWNac1RkcC9QVjFFZjZuMTZKRk82ZnFv
CjYycWZ0Yjg2T2RYdDFIOGRWLzFTU3YzZUFKMDBQdDN4NktjcG16ZHZOdWNsLzVkTjI4bnI2bXQ3
UC9XTnIxL2JuNXUrSk1ldThUaHQKbDdyY21wd2N0WXh1aTlhcFQ1bktham43bTFJZFArdjNWT3V5
emxmWGVabnFjaHA3clN2WlcrZFpreWJ3ZWg1MWNnS2k3YnY5SFhMagpiclZuZjdUNnFQUDB2SHo5
dmRKVDZOejhMajM5OU5QbVhmejB5SW1laXZXZi8vekgvSjIwMTY5SGRmVDNROS9BNkdSY1RHdSs2
ZEtrCkpYbHkybmM1Ylo5dVl0VjkzYnZHbHp6cXRxZlhrT2srMU81dDMyNXlzZFFQRUxTZldyODFK
Vy9uOWphMFRQSnJhejE5OUtOUFR0dWMKdHBHODNNazQwL2F2OVNWUHhzVzRvcWZQNkttNGVoUkVy
d1BSSTJSNkNuSHloMVpPYmJ1eHNGdG1FMnVtdnozWi9BNW1xaXZaUjE5bgpZNVM4UFdVemZzbHRa
eHRycHZjRzJUaGxHcDlNKzFKN1gzTGRaN2pwdjM1NGFVMTZKeXA5TDZYdkpaeml6Mlhmb1cya2F5
dFRuRjYyCkFhdHZQRVpVd0hpVDZtb3l6bjlOR0JlY21YZU1NWGJFQ2VPMnNRa2pvYWhkMTdndHBI
a0hGYjFEay9IR002RjNsVEF1NGs0WTN3V1IKTUc3WFo1WXovcmduakU5SnpUcU1uZmd1ZDh5cHJj
aDRZbnlLYnQ0WndmalV5VnpYdURBMFlieUJzaGRKR0tkWUpZeGJSTzR5VDE4WQp0K00wNnplR3cz
dzBUdEV5NHpiZXFPMVcxbmhqbkRBU25JUnhxbGJDZU5PU01MNlFMMkVjbmpUdkxHTjh5N0w1WE84
a1lkd2lyM2JkCmRIMXdxc3ZZc2RXdWJ6MHhraDN6TGhVYXA5N1Z5MGd5ckVXSnFWT25tbmYyMFR0
WjZWMkZqRlBLRWtheVpTN1hPM1laYjNUTnUzZnAKblMzMERscDZGeVRqM0U3elRrQmE2TmUvL3JY
WmQrMlQzcUVpWFIrTjVDZGhmQnBpbHRVN2hSbHYzakxXbmE3LzJxN3haczVjM3pqdApMV0djdXBB
NCtlU1R6YnNRR1JmLzZlSmRKdVBJVnRadDcxS0I4Y0xlVCtQN0ozemIvclFkcDc0a3gyN2Z0dEp0
bDhteHAzUFV1blc4CmRMdlFPekpwM2VuSzZ2anIzYktNMDRjU3hubnFDZU5Xek9aZDJuUmQ0OGhl
UXUrQ1paeW1hTlpsdkFFeXQ0VjBkV1c3WGFXNmU1MXUKUDhadGVHdTdhcHk2a3RYdlVDYjMyb3B0
VDR4YlpKdDNnVE51Tld6ZUlVcC8vNDAzY3JVbG5INlhkS3gwUDJUY2V0c3NiN3lwVHhpbgpPaWFN
RHpzU09nN1dwTnVXdlYvNk82ZDNpOUs3eWlSUDZmWmRidmFQVHJGcU96ckd4aHZoaEhIamlZVHha
aXBoSE9sTjZKMlo5QTVnCnFiWWJwMjA0T1c3ZGx2U09ZYnJ0R05jOW1QdWI1TzNjK0tCa2wyMHor
Ylg5OThDcTMwdWZ0QTc3NzNpcWJjNiszTzk5Z05VSHRUWSsKMExGZW1qRlorMk5ycHRmeFRUVis2
WDVYclRhdFI2ZS9QZm4rTzJiRjRNWW9lWHZTN1NYYjhiUGEwMGVuZnFmNm0rdjAzaUNYZlZXNgo4
WEd6TDdYM0k5ZDlScWIrNngwUzlXK0pjU1pKd2pqS216anV1T01TZWljeWEwb1h2eTdQWnQraDVa
M2F5aFNubDIxQTIyYUtyb0IrClNoN29wRHNHM1hrbkp4VDJJSXhQejgyWHhpZHk1bTE3N2N2c3o0
MVBHZXd2emVmNnB0MzRaREJoWEZDZU1LN25TQmhIRWhMR1lYUHoKemZWdWhYZk8wRjhRYTBxMTQ3
S1dXWTlPZmNpbUx1UFR4b1J4bnJwVjdXNlB4b1ZpNXB2SzNSYTRtR0Y4YXJ0THFXemkybVhGRkMr
YworcTlqWjdWdGZ5T1lvaHBmWmxsdHVhM01LZmJrT25MdFM2cnRNcmx1ZloxTkxObVVUZFdXZlo2
WHVqSjVHM2NCU2hnWHBOdWJTL25jCktZWmMzUFgzeUdtZjR1VjN5YmlUalBtaGdMMGptdHdaRjZM
YVo1blAzZTY3ZGx2Uk5zTXBWbjNUWnYwdXEyR21LUmZMVEhYbXN0eEwKbnpKdGM1bVdKOGZydE8w
bGw5WFh5Yi9QeWE5VHJlTTB6OGtpZWIxc1lyVzJDNjNEemJiaFZIZTJkU1diSkw5TzdwZjlkYmJq
WjE5WApuN3VOTlpmM0JscS9rNVBUTWwzWHplUjFuNUd1LzVvVWFOSmxISm1yL1p1Y0hJOVQvTm5z
Tzl5MGxTNU9qY25yTnBEY0wxNUhRNkJFCnd6USs5WXJGcEYvTVo5ekx2dlpMQ2ExTzZWMUxqS01N
NW5tUDFqd2VFVURBZndFOURLODNoOUF2OXRSclFxSSs2VFZpZWdla3c0emIKOWRvbi9lSSsvUUpX
UGJlZkNRRUV3aTFRak84TjlQUjJ2VTdKT2kwNm55TVVaRnY1N0FkMUJ5c1Fxd1JFYjVPb3Z3aDY1
eEs5MjVhZQpVNnZYcTV4NDRvbm1UN0MwdElaQWNRcG9FcUpKdjk0a0lzcVQzbmxQYjF1WjZpNTZl
cjJFM2dHSUNRRUV3aTlRYk84TjlGb3V2VzVXCjN3L3BOOWJuY3dxeXJYejJnN3FERjRoVkFxSjhl
cUc3dm5IUVczRHFGeUhxM1I2WUVFQUFBUVFRUUtCNEJZcnB2Y0YvLy90Zjh3dHAKZGJUMXBqWjZZ
WG0rcGlEYnlsY2ZxTGN3QXJGTFFBckRTS3NJSUlBQUFnZ2dnQUFDQ0NEZ1JpQ3IyL0M2cVpBeUND
Q0FBQUlJSUlBQQpBZ2dnZ0VBNkFSS1FkRExNUndBQkJCQkFBQUVFRUVBQUFkOEZTRUI4SjZWQ0JC
QkFBQUVFRUVBQUFRUVFTQ2RBQXBKT2h2a0lJSUFBCkFnZ2dnQUFDQ0NEZ3V3QUppTytrVklnQUFn
Z2dnQUFDQ0NDQUFBTHBCRWhBMHNrd0h3RUVFRUFBQVFRUVFBQUJCSHdYSUFIeG5aUUsKRVVBQUFR
UVFRQUFCQkJCQUlKMEFDVWc2R2VZamdBQUNDQ0NBQUFJSUlJQ0E3d0lrSUw2VFVpRUNDQ0NBQUFJ
SUlJQUFBZ2lrRXlBQgpTU2ZEZkFRUVFBQUJCQkJBQUFFRUVQQmRnQVRFZDFJcVJBQUJCQkJBQUFF
RUVFQUFnWFFDSkNEcFpKaVBBQUlJSUlBQUFnZ2dnQUFDCnZndVFnUGhPU29VSUlJQUFBZ2dnZ0FB
Q0NDQ1FUb0FFSkowTTh4RkFBQUVFRUVBQUFRUVFRTUIzQVJJUTMwbXBFQUVFRUVBQUFRUVEKUUFB
QkJOSUpsS1ZiVUR1L3BLVDJLVThRUUFBQkJCRElXaUNSeUhvVlZrQUFBUVFRaUs5QTVnUkUrODRm
ai9odUFmUU1BUVFReUtjQQpIMkxsVTVlNkVVQUFnVWdLY0FwV0pJZU5vQkZBQUFFRUVFQUFBUVFR
aUtZQUNVZzB4NDJvRVVBQUFRUVFRQUFCQkJDSXBBQUpTQ1NICmphQVJRQUFCQkJCQUFBRUVFSWlt
QUFsSU5NZU5xQkZBQUFFRUVFQUFBUVFRaUtRQUNVZ2toNDJnRVVBQUFRUVFRQUFCQkJDSXBnQUoK
U0RUSGphZ1JRQUFCQkJCQUFBRUVFSWlrQUFsSUpJZU5vQkZBQUFFRUVFQUFBUVFRaUtZQUNVZzB4
NDJvRVVBQUFRUVFRQUFCQkJDSQpwQUFKU0NTSGphQVJRQUFCQkJCQUFBRUVFSWltQUFsSU5NZU5x
QkZBQUFFRUVFQUFBUVFRaUtRQUNVZ2toNDJnRVVBQUFRUVFRQUFCCkJCQ0lwZ0FKU0RUSGphZ1JR
QUFCQkJCQUFBRUVFSWlrQUFsSUpJZU5vQkZBQUFFRUVFQUFBUVFRaUtZQUNVZzB4NDJvRVVBQUFR
UVEKUUFBQkJCQ0lwQUFKU0NTSGphQVJRQUFCQkJCQUFBRUVFSWltUUZrMHd5YnFNQWlzMjdwTzVx
K2JML1BYenBjVm0xZklxczJyWk5VVwo0OGQ0M0xoOW8yeXYzbDc3VTFWVEpmVks2OVgrMUMrckw4
MGFOSk1XNVMya2VYbHphZEd3aGJScjFFNzJhTGFIZEc3YTJTd1hoajRTCkF3SUlJSUFBQWdnZ2dJ
Qy9BaVFnL25yR3NyWjVhK2ZKbE9WVFpQS3l5ZWJqdEJYVFJPZXQzYlkyTC8ydEkzV2tYZU4yMHEy
eW0relQKYWgvWnQ4MiswcWQxSDltMzliNVNXVjZabHphcEZBRUVFRUFBQVFRUVFDQVlnWktFTVRr
MlZWSWlrcUdJNC9vc2pKVEFsaDFiWk56aQpjZkx4d28vbG80VWZ5U2VMUHBHVlcxYUdwZzg5bS9l
VVF6b2RJZ2QzT3RoODFBU2xSTGRSSmdRUUNLY0FmMFBDT1M1RWhRQUNDQlJRCmdBU2tnUGhoYVZx
UGJMd3grdzE1ZmZick1uYitXTmxhdlRVc29XV01vMDFGR3ptNjI5RXliTTloY2t6M1k2UjFSZXVN
NjFBQUFRUUMKRkNBQkNSQ2JwaEJBQUlGb0NKQ0FSR09jZkkxU0QzcnBrWTNSMDBhYlB3dldML0Mx
L2tKVlZpSWxjbERIZytUMDNxZkxxYjFQTmE4bApLVlFzdElzQUFqc0ZTRURZRkJCQUFBRUVrZ1JJ
UUpKQTR2eFNyOTE0NlBPSFpOU1VVYkpvdzZJNGQ5WHMyNEh0RDVUeis1NHY1K3g3CkR0ZU94SDYw
NldCb0JVaEFRanMwQklZQUFnZ1VTb0FFcEZEeUFiVzdZZHNHR1RsbHBKbDQ2TFVkeFRqVkw2MHZK
L2M2V1g3VS8wZHkKVkxlanVHYWtHRGNDK2x3NEFSS1F3dG5UTWdJSUlCQlNBUktRa0E2TTE3RDBM
bFVqeG8yUUJ6NTdRTlp2WCsrMXV0aXMzNnRGTDduNgpvS3ZOSXlNTjZ6YU1UYi9vQ0FLaEZTQUJD
ZTNRRUJnQ0NDQlFLQUVTa0VMSjU2bmRDVXNteU8xamI1Zm52M3BlcWhQVmVXb2wrdFUyCmI5QmNM
aDE0cVZ4NzBMWFNxcUpWOUR0RUR4QUlxd0FKU0ZoSGhyZ1FRQUNCZ2dtUWdCU00zdCtHUDEzOHFm
eit2ZC9MeTdOZTlyZmkKbU5kV1ViZENyampnQ3JuK2tPdEpSR0krMW5TdlFBSWtJQVdDcDFrRUVF
QWd2QUlrSU9FZEcxZVI2UmNFM3ZqbWpmTEsxNis0S2sraAoxQUlOeXhyS1R3ZjlWRzRlZkxNMGJk
QTBkU0htSW9CQTlnSWtJTm1ic1FZQ0NDQVFjd0VTa0lnTzhOS05TK1hYYi85YUh2N2lZVTYxCjhu
RU1XNWEzbE44ZC9qdno5S3l5T21VKzFreFZDQlNwQUFsSWtRNDgzVVlBQVFUU0M1Q0FwTGNKNVpJ
ZDFUdmt6by91bE52RzNpWWIKZDJ3TVpZeHhDR3F2Rm52SmlPTkd5TkhkajQ1RGQrZ0RBb1VUSUFF
cG5EMHRJNEFBQWlFVklBRUo2Y0NrQ3V1REJSL0lwUzllS3ROVwpUa3UxbUhsNUVEaW56em55ZjhQ
K1Q5bzBhcE9IMnFrU2dTSVFJQUVwZ2tHbWl3Z2dnRUIyQWlRZzJYa1ZwUFM2cmV2a3VqZXVNNy9M
Ckl5R0pnc1JRekkwMnE5OU03amo2RHJsay8wdUttWUcrSTVDYkFBbElibTZzaFFBQ0NNUllnQVFr
NUlQNzl0eTM1Y0xuTHBTRjZ4ZUcKUE5MNGgzZmNuc2ZKZ3ljOUtPMGF0NHQvWitraEFuNEprSUQ0
SlVrOUNDQ0FRR3dFU0VCQ09wUmJkbXlSbThiY0pDUEdqekNPZVhEVQpJeXpEcE44ZjhxOFQveVZu
N0hOR1dFSWlEZ1RDTFVBQ0V1N3hJVG9FRUVDZ0FBSWtJQVZBejlUa3pGVXo1YlFuVDVQSnl5ZG5L
c3J5CkFnbGNNdUFTdWZ1NHU2VkJXWU1DUlVDekNFUkVnQVFrSWdORm1BZ2dnRUJ3QWlRZ3dWbTdh
dW5KcVUvS2oxLzRzV3pZdnNGVmVRb1YKVHFCZm0zN3kxQmxQeVo3Tjl5eGNFTFNNUU5nRlNFRENQ
a0xFaHdBQ0NBUXVRQUlTT0hucUJxdHJxdVhuci85YzdoNS9kK29DekEybApRSk42VGVUUlV4NlZs
QUI4YlFBQUlBQkpSRUZVay9ZNktaVHhFUlFDQlJjZ0FTbjRFQkFBQWdnZ0VEWUJFcEFRaklqZTVl
cU1wODZRCk4rYThFWUpvQ0NGYmdUcFNSMjQvNm5hNTRkQWJzbDJWOGdqRVg0QUVKUDVqVEE4UlFB
Q0JMQVZJUUxJRTg3djQxNnUvbHVHUEQ1Y1oKcTJiNFhUWDFCU3h3UWQ4TDVMN2g5MG05MG5vQnQw
eHpDSVJZZ0FRa3hJTkRhQWdnZ0VCaEJFaEFDdU51dGpwKzhYZzUvckhqWmRXVwpWUVdNZ3FiOUZC
amFaYWc4ZjliejByaCtZeitycFM0RW9pdEFBaExkc1NOeUJCQkFJRThDSkNCNWdzMVU3WnV6MzVS
VFJwMGlHM2RzCnpGU1U1UkVUR05CMmdMeDY3cXZTdXFKMXhDSW5YQVR5SUVBQ2tnZFVxa1FBQVFT
aUxWQW4ydUZITS9xbnBqNGxKejUrSXNsSE5JY3YKWTlTZkxmMU1CajgwV09hdm5aK3hMQVVRUUFB
QkJCQkFBSUZpRStBSVNNQWpQbkx5U0RudjJmT2tPbEVkY01zMEY3VEFIazMza0hjdgpmRmU2Tk9z
U2ROTzBoMEI0QkRnQ0VwNnhJQklFRUVBZ0pBSWNBUWx3SUVaTkdVWHlFYUIzb1p1YXYyNitEUDNQ
VUk2RUZIb2dhQjhCCkJCQkFBQUVFUWlWQUFoTFFjT2hwVno5ODVvY2MrUWpJT3l6TnpGczNUNGIr
ZDZnc1hMY3dMQ0VSQndJSUlJQUFBZ2dnVUZBQlRzRUsKZ0Y4dk9EL2g4Uk5rUjgyT0FGcWppVEFL
OUdyUlN6NjgrRU5wWHQ0OGpPRVJFd0w1RStBVXJQelpVak1DQ0NBUVVRR09nT1I1NENZdQptV2pl
N1lya0k4L1FJYTllditkRmJ6eXdlY2Zta0VkS2VBZ2dnQUFDQ0NDQVFINEZTRUR5NkR0NzlXenpl
ejY0MVc0ZWtTTlU5Y2VMClBqYS84YjY2aGhzUVJHallDQlVCQkJCQUFBRUVmQllnQWZFWjFLcHUz
ZFoxNWlmZXl6Y3Z0MmJ4aUlDOFBPdGx1ZmIxYTVGQUFBRUUKRUVBQUFRU0tWb0FFSkE5RFg1T29r
Yk9mUGx2MHRCc21CSklGUm93ZklROTg5a0R5YkY0amdBQUNDQ0NBQUFKRklVQUNrb2RodnZITgpH
K1hWcjEvTlE4MVVHUmVCSzErK1VqNVk4RUZjdWtNL0VFQUFBUVFRUUFBQjF3TGNCY3MxbGJ1Q2Vy
dmRNMGFmNGE0d3BZcGFvRTFGCkc1bDAyU1JwMDZoTlVUdlErWmdMY0Jlc21BOHczVU1BQVFTeUYr
QUlTUFptYWRmUWk4NS8vTUtQMHk1bkFRSjJnV1dibHBuZkRhT24KN0RFaGdBQUNDQ0NBQUFMRklr
QUM0dE5JYjYvZUxtZU9QbFBXYjEvdlU0MVVVd3dDYjgxOVMvNzAvcCtLb2F2MEVRRUVFRUFBQVFR
UQpNQVZJUUh6YUVHNGFjNU5NL0dhaVQ3VlJUVEVKL1A2OTMzTTlTREVOT0gxRkFBRUVFRUNneUFX
NEJzU0hEZUQ5K2UvTDRmODVYQkxHClB5WUVjaEhvWHRuZHZCNmtvbDVGTHF1ekRnTGhGZUFha1BD
T0RaRWhnQUFDQlJMZ0NJaEgrRTNiTjhsRnoxMUU4dUhSc2RoWG43MW0KdHR3NDVzWmlaNkQvQ0ND
QUFBSUlJRkFFQWlRZ0hnZjUramV2bHpscjUzaXNoZFVSRVBubnAvK1VkK2ErQXdVQ0NDQ0FBQUlJ
SUJCcgpBVTdCOGpDOG55ejZSQTU1OEJDT2ZuZ3daTlZkQlhvMDd5R1RMNThzOWN2cTc3cUFWd2hF
VllCVHNLSTZjc1NOQUFJSTVFMkFJeUE1CjBsYlhWTXZsTDExTzhwR2pINnVsRnBpMWVwYmM4ZUVk
cVJjeUZ3RUVFRUFBQVFRUWlJRUFDVWlPZzNqUHAvZklGOHUreUhGdFZrTWcKdmNCdFkyK1RPV3M0
clMrOUVFc1FRQUFCQkJCQUlNb0NKQ0E1ak42S1RTdmsxMi8vT29jMVdRV0J6QUpicTdmS3RhOWRt
N2tnSlJCQQpBQUVFRUVBQWdRZ0trSURrTUdpM3ZuY3JYemlZZ3h1cnVCZDRZZVlMb3JkM1prSUFB
UVFRUUFBQkJPSW13RVhvV1k3bzE2dS9sdDczCjlKWWROVHV5WEpQaUNHUW5jR0Q3QTJYY0plT3lX
NG5TQ0lSTmdJdlF3ellpeElNQUFnZ1VYSUFqSUZrT3djMWpiaWI1eU5LTTRya0oKakY4eVhwNmEr
bFJ1SzdNV0FnZ2dnQUFDQ0NBUVVnR09nR1F4TUpPV1RwSisvKzZYeFJvVVJjQ2JRSzhXdldUcWxW
T2xUZ21mRlhpVApaTzJDQ1hBRXBHRDBOSXdBQWdpRVZZQjNOVm1NekIvZi8yTVdwU21LZ0hlQkdh
dG15TlBUbnZaZUVUVWdnQUFDQ0NDQUFBSWhFU0FCCmNUa1EwMWRNbDJlbVArT3lOTVVROEUvZ1Qy
UC9KSWxFd3I4S3FRa0JCQkJBQUFFRUVDaWdBQW1JUzN6OWJvWWE0eDhUQWtFTFRGbzIKU1Y2YStW
TFF6ZEllQWdnZ2dBQUNDQ0NRRndFU0VCZXNTellza1ZGVFI3a29TUkVFOGlQd2Z4Ly9YMzRxcGxZ
RUVFQUFBUVFRUUNCZwpBUklRRitEM1RyaVhPMSs1Y0tKSS9nVGVuZit1VEY0Mk9YOE5VRE1DQ0ND
QUFBSUlJQkNRQUFsSUJ1anQxZHZsdm9uM1pTakZZZ1R5Ckx6QmkvSWo4TjBJTENDQ0FBQUlJSUlC
QW5nVklRRElBUHpuMVNWbTJhVm1HVWl4R0lQOENqMzM1bUt6ZHVqYi9EZEVDQWdnZ2dBQUMKQ0ND
UVJ3RVNrQXk0RDMvK2NJWVNMRVlnR0lITlZadmxpU2xQQk5NWXJTQ0FBQUlJSUlBQUFua1NJQUZ4
Z0Yyd2JvRzhNKzhkaHhJcwpRaUJZZ2Y5KzhkOWdHNlExQkJCQUFBRUVFRURBWndFU0VBZlFSeVk5
SWduakh4TUNZUkg0WlBFbjh0WEtyOElTRG5FZ2dBQUNDQ0NBCkFBSlpDNUNBT0pBOU91bFJoNlVz
UXFBd0FvOSt5WFpaR0hsYVJRQUJCQkJBQUFFL0JFaEEwaWpxTFU5bnJwNlpaaW16RVNpY3dPaHAK
b3d2WE9DMGpnQUFDQ0NDQUFBSWVCVWhBMGdBK08rUFpORXVZalVCaEJiNWE5WlZNWHpHOXNFSFFP
Z0lJSUlBQUFnZ2drS01BQ1VnYQp1R2VtUDVObUNiTVJLTHdBQ1hMaHg0QUlFRUFBQVFRUVFDQTNB
UktRRkc3ejFzNlRTY3NtcFZqQ0xBVENJZkRjak9mQ0VRaFJJSUFBCkFnZ2dnQUFDV1FxUWdLUUFl
MlAyR3lubU1ndUI4QWhNWERKUlZtMWVGWjZBaUFRQkJCQkFBQUVFRUhBcFFBS1NBbXJNbkRFcDVq
SUwKZ2ZBSTFFaU52RDMzN2ZBRVJDUUlJSUFBQWdnZ2dJQkxBUktRSktoRUlzRWJ1eVFUWG9aVDRL
MjViNFV6TUtKQ0FBRUVFRUFBQVFRYwpCRWhBa25DK1dQcUZyTnJDcVMxSkxMd01vUUJINmtJNEtJ
U0VBQUlJSUlBQUFoa0ZTRUNTaUQ1YStGSFNIRjRpRUU2QjJXdG15L0pOCnk4TVpIRkVoZ0FBQ0ND
Q0FBQUpwQkVoQWttREdMUjZYTkllWENJUlhZUHppOGVFTmpzZ1FRQUFCQkJCQUFJRVVBaVFnU1Np
OG9Vc0MKNFdXb0JjWXRJbUVPOVFBUkhBSUlJSUFBQWdqc0prQUNZaU5adTNXdHpGdzEwemFIcHdp
RVc0Q0VPZHpqUTNRSUlJQUFBZ2dnc0xzQQpDWWpONU10bFgwckMrTWVFUUZRRStNTE1xSXdVY1NL
QUFBSUlJSUNBSlVBQ1lra1lqOU5YVExlOTRpa0M0UmRZdG1tWnJONnlPdnlCCkVpRUNDQ0NBQUFJ
SUlMQlRnQVRFdGlsTVd6SE45b3FuQ0VSRGdNUTVHdU5FbEFnZ2dBQUNDQ0R3clFBSmlHMUxtTDZT
SXlBMkRwNUcKUklERU9TSURSWmdJSUlBQUFnZ2dZQXFRZ05nMkJDNUF0Mkh3TkRJQ3MxYlBpa3lz
QklvQUFnZ2dnQUFDQ0pDQTdOd0dhaEkxc21URApFcllJQkNJbnNIRGR3c2pGVE1BSUlJQUFBZ2dn
VUx3Q0pDQTd4MzdaeG1XeW8yWkg4VzRKOUR5eUFndlhrNEJFZHZBSUhBRUVFRUFBCmdTSVVJQUha
T2VpOGlTdkNyVDhtWGVZSVNFd0drbTRnZ0FBQ0NDQlFKQUlrSURzSGV0SDZSVVV5NUhRemJnSjY2
bUFpd2ZmWHhHMWMKNlE4Q0NDQ0FBQUp4RlNBQjJUbXlhN2FzaWVzWTA2K1lDMVFscW1URDlnMHg3
eVhkUXdBQkJCQkFBSUc0Q0pDQTdCekp0VnZYeG1WTQo2VWNSQ3JEOUZ1R2cwMlVFRUVBQUFRUWlL
a0FDc25QZ2VBTVgwUzJZc0UwQnRsODJCQVFRUUFBQkJCQ0lpZ0FKeU02UjRnMWNWRFpaCjRrd2x3
UGFiU29WNUNDQ0FBQUlJSUJCR0FSS1FuYU95cFdwTEdNZUhtQkJ3SmJCbEI5dXZLeWdLSVlBQUFn
Z2dnRURCQlVoQWRnNUIKZFUxMXdRZURBQkRJVmFBNndmYWJxeDNySVlBQUFnZ2dnRUN3QWlRZ083
MnJhcXFDbGFjMUJId1VJSUgyRVpPcUVFQUFBUVFRUUNDdgpBaVFnTzNuNUJEbXYyeG1WNTFtQUJE
clB3RlNQQUFJSUlJQUFBcjRKa0lEc3BPU0wzSHpicHFnSUFRUVFRQUFCQkJCQUFJRzBBaVFnCk8y
bks2NWFuUldJQkFtRVhhRkRXSU93aEVoOENDQ0NBQUFJSUlHQUtrSURzM0JES3kwaEErSjJJcmtE
RHVnMmpHenlSSTRBQUFnZ2cKZ0VCUkNaQ0E3Qnh1am9BVTFYWWZ1ODZ5L2NadVNPa1FBZ2dnZ0FB
Q3NSVWdBZGs1dEh5Q0hOdHR2Q2c2eHZaYkZNTk1KeEZBQUFFRQpFSWlGQUFuSXptRnNVZDRpRmdO
S0o0cFRvSGw1OCtMc09MMUdBQUVFRUVBQWdjZ0prSURzSExMV0ZhMGpOM2dFaklBS2xCai9XalZz
CkJRWUNDQ0NBQUFJSUlCQUpBUktRbmNORUFoS0o3WlVnVXdnMGE5Qk02cGJXVGJHRVdRZ2dnQUFD
Q0NDQVFQZ0VTRUIyamdrSlNQZzIKVGlKeUo4QzI2ODZKVWdnZ2dBQUNDQ0FRRGdFU2tKM2owTEZK
eDNDTUNGRWdrS1ZBcHlhZHNseUQ0Z2dnZ0FBQ0NDQ0FRT0VFU0VCMgoybGVXVjBwbGc4ckNqUVF0
STVDalFMZktiam11eVdvSUlJQUFBZ2dnZ0VEd0FpUWdOblBleU5rd2VCb1pnZTdOdTBjbVZnSkZB
QUVFCkVFQUFBUVJJUUd6YlFQZEszc2paT0hnYUVRRVM1NGdNRkdFaWdBQUNDQ0NBZ0NsQUFtTGJF
SHEyNkdsN3hWTUVvaUhBZGh1TmNTSksKQkJCQUFBRUVFUGhXZ0FURXRpWDBiZHZYOW9xbkNJUmZv
RjZkZXJKM3k3M0RIeWdSSW9BQUFnZ2dnQUFDT3dWSVFHeWJRdDgySkNBMgpEcDVHUUtCM3E5NThC
MGdFeG9rUUVVQUFBUVFRUU9BN0FSS1E3eXhreitaN1NxTzZqV3h6ZUlwQXVBVTRhaGZ1OFNFNkJC
QkFBQUVFCkVOaGRnQVRFWmxKU1VpSzhvYk9COERUMEFnUGFEUWg5akFTSUFBSUlJSUFBQWdqWUJV
aEE3QnJHODhHZEJ5Zk40U1VDNFJVNHROT2gKNFEyT3lCQkFBQUVFRUVBQWdSUUNKQ0JKS0NRZ1NT
QzhESzJBbmk3WXIyMi8wTVpIWUFnZ2dBQUNDQ0NBUUNvQkVwQWtGZjFFdWNUNAp4NFJBMkFVTzdu
U3dsTllwRFh1WXhJY0FBZ2dnZ0FBQ0NPd2lRQUt5QzRkSVpYbWw5R25kSjJrdUx4RUluOENRemtQ
Q0Z4UVJJWUFBCkFnZ2dnQUFDR1FSSVFGSUFEZXMrTE1WY1ppRVFMb0ZqOXp3MlhBRVJEUUlJSUlB
QUFnZ2c0RUtBQkNRRjB2RTlqazh4bDFrSWhFZWcKVmNOV01yRDl3UEFFUkNRSUlJQUFBZ2dnZ0lC
TEFSS1FGRkI2SVhyamVvMVRMR0VXQXVFUTBLTWZldHRvSmdRUVFBQUJCQkJBSUdvQwpKQ0FwUnF4
dWFWMDV1dHZSS1pZd0M0RndDSnpRNDRSd0JFSVVDQ0NBQUFJSUlJQkFsZ0lrSUduQVR0L245RFJM
bUkxQVlRWEt5OHJsCmhKNGtJSVVkQlZwSEFBRUVFRUFBZ1Z3RlNFRFN5QTN2T1Z3YWxqVk1zNVRa
Q0JST1FJOStOS3JYcUhBQjBESUNDQ0NBQUFJSUlPQkIKZ0FRa0RWNUZ2UW8rWlU1ancrekNDcHpa
NTh6Q0JrRHJDQ0NBQUFJSUlJQ0FCd0VTRUFlOHMvdWM3YkNVUlFnRUw2QTNSK0Q2aitEZAphUkVC
QkJCQUFBRUUvQk1nQVhHd1BMSG5pZEs2WVd1SEVpeENJRmdCVFlyTDY1WUgyeWl0SVlBQUFnZ2dn
QUFDUGdxUWdEaGc2dDJ3Ckx1eDNvVU1KRmlFUXJNQWwrMThTYklPMGhnQUNDQ0NBQUFJSStDeEFB
cElCOU1jRGZweWhCSXNSQ0VhZ1g1dCtmUGxnTU5TMGdnQUMKQ0NDQUFBSjVGQ0FCeVlEYm8wVVBP
YUxMRVJsS3NSaUIvQXRjT3ZEUy9EZENDd2dnZ0FBQ0NDQ0FRSjRGU0VCY0FQLzg0Sis3S0VVUgpC
UEluMEtLOGhaemY5L3o4TlVETkNDQ0FBQUlJSUlCQVFBSWtJQzZnais5eHZQUnEwY3RGU1lvZ2tC
K0J5d2RlTGczcjhyMDArZEdsClZnUVFRQUFCQkJBSVVvQUV4SVYyU1VtSlhIZklkUzVLVWdRQi93
WHFsOWFYcXc2OHl2K0txUkVCQkJCQUFBRUVFQ2lBQUFtSVMvUnoKOXp0WDJqZHE3N0kweFJEd1Qw
RHZ4TmFtVVJ2L0txUW1CQkJBQUFFRUVFQ2dnQUlrSUM3eEc1UTFrRjhPK2FYTDBoUkR3QjhCUGZy
eApxeUcvOHFjeWFrRUFBUVFRUUFBQkJFSWdRQUtTeFNEb2R6QjBhdElwaXpVb2lvQTNnVXNHR050
Y1U3WTViNHFzalFBQ0NDQ0FBQUpoCkVpQUJ5V0kwNnBYVzQ5UG9MTHdvNmsyZ1FXa0R1WG5JemQ0
cVlXMEVFRUFBQVFRUVFDQmtBaVFnV1E3SXhRTXU1bzVZV1pwUlBEZUIKYXcrK1Z0bzM1cnFqM1BS
WUN3RUVFRUFBQVFUQ0trQUNrdVhJbE5VcGs3dUczWlhsV2hSSElEdUJ0aFZ0NWViQkhQM0lUbzNT
Q0NDQQpBQUlJSUJBRkFSS1FIRVpKdnhka1dQZGhPYXpKS2dpNEUvalRrWCtTeHZVYnV5dE1LUVFR
UUFBQkJCQkFJRUlDSlFsamNvelgrQTRNCnlWREVjZjJZTHB5MllwcjB1N2VmN0tqWkVkTWUwcTFD
Q1F4b08wQSsvY21uVXFlRXp3Y0tOUWEwNjZNQWYwTjh4S1FxQkJCQUlCNEMKdk1QSmNSeDd0K290
MXg5eWZZNXJzeG9DcVFWS1Mwcmx2dUgza1h5azVtRXVBZ2dnZ0FBQ0NNUkFnQVRFd3lEKytyQmZT
NC9tUFR6VQp3S29JN0NwdzlhQ3JaZi8yKys4NmsxY0lJSUFBQWdnZ2dFQ01CRWhBUEF5bWZqbmh2
MC84dDRjYVdCV0I3d1M2Tk8waXR3Njk5YnNaClBFTUFBUVFRUUFBQkJHSW9RQUxpY1ZDSGRoMHFs
dys4M0dNdHJGN3NBaVZTSWc5Ky8wR3BxRmRSN0JUMEh3RUVFRUFBQVFSaUxrQUMKNHNNQTMzbk1u
YkpYaTcxOHFJa3FpbFhnMm9PdWxTTzZIbEdzM2FmZkNDQ0FBQUlJSUZCRUF0d0Z5NmZCbnJCa2do
enk0Q0hjRmNzbgp6MktxWnQvVys4cW5sM3dxOWN2cUYxTzM2V3V4Q0hBWHJHSVphZnFKQUFJSXVC
YmdDSWhyS3VlQ0E5c1A1UHg5WnlLV3BoQW9MeXVYCngwNTVqT1FqaFEyekVFQUFBUVFRUUNDZUFp
UWdQbzdyallmZUtNTjdEdmV4UnFxS3U4Qy9UdmlYN050bTM3aDNrLzRoZ0FBQ0NDQ0EKQUFLMUFp
UWd0UlRlbjVRWXB4bzhjdklqMHExWk4rK1ZVVVBzQlM3ZC8xSzVvTjhGc2U4bkhVUUFBUVFRUUFB
QkJPd0NYQU5pMS9EcAorUmRMdnpDdkI5bFN0Y1duR3FrbWJnSUh0RDlBeGw0MGxsT3Y0amF3OUdk
M0FhNEIyZDJFT1FnZ2dFQ1JDM0FFSkE4YlFMKzIvZVRSCmt4ODFicXhha29mYXFUTHFBaDBiZDVU
bnozcWU1Q1BxQTBuOENDQ0FBQUlJSUpDVEFBbElUbXlaVnpxMTk2bHkyNUczWlM1SWlhSVMKYUZT
M2tieDB6a3ZTcm5HN291bzNuVVVBQVFRUVFBQUJCQ3dCRWhCTElnK1BOdzIrU1g3VTcwZDVxSmtx
b3loUVdsSXFUNXoyaFBSdAoyemVLNFJNekFnZ2dnQUFDQ0NEZ2l3QUppQytNNlN2NTkvQi95MGs5
VDBwZmdDVkZJYUNuNDkwLy9INDVvZWNKUmRGZk9va0FBZ2dnCmdBQUNDS1FUSUFGSkorUFQvTEk2
WlRMcTlGRXl0TXRRbjJxa21pZ0szSFhNWFhKUi80dWlHRG94STRBQUFnZ2dnQUFDdmdxUWdQaksK
bWJxeUJtVU56SXVPOWM1SFRNVW44SnZ2L1VhdVBmamE0dXM0UFVZQUFRUVFRQUFCQkZJSWtJQ2tR
TW5Ick1iMUc4c2I1NzBoZ3pvTQp5a2YxMUJsU2dWdUczQ0svSC9yN2tFWkhXQWdnZ0FBQ0NDQ0FR
UEFDSkNBQm1qZHIwRXplUE85Tk9iVFRvUUcyU2xPRkVyajE4RnZsCkQwZjhvVkROMHk0Q0NDQ0FB
QUlJSUJCS0FiNklzQUREc21uN0poaytjcmk4TSsrZEFyUk9rMEVJM0hIVUhYTDlvZGNIMFJSdElC
QnUKQWI2SU1OempRM1FJSUlCQUFRUklRQXFBcmsxdXE5b201ejk3dmp3NTdja0NSVUN6K1JBb0t5
bVQrMCs2WHk3c2QyRStxcWRPQktJbgpRQUlTdlRFallnUVFRQ0RQQWlRZ2VRWjJxajZSU01oMWIx
d25mL3ZrYjA3RldCWVJBZjJTd2RGbmpKWmhldzZMU01TRWlVQUFBaVFnCkFTRFRCQUlJSUJBdEFS
S1FFSXpYUHo3NWg1bUlWQ2VxUXhBTkllUWkwS0Z4QjNuaDdCZGtRTHNCdWF6T09nakVWNEFFSkw1
alM4OFEKUUFDQkhBVklRSEtFODN1MU1YUEd5SmxQblNtcnQ2NzJ1MnJxeTdPQTNsVGc2VE9lbGph
TjJ1UzVKYXBISUlJQ0pDQVJIRFJDUmdBQgpCUElyUUFLU1g5K3NhcCt6Wm83ODRJa2Z5T1RsazdO
YWo4S0ZFN2gwLzB0bHhIRWpwRzVwM2NJRlFjc0loRm1BQkNUTW8wTnNDQ0NBClFFRUVTRUFLd3A2
K1ViMUQxazlmL2FrOC9NWEQ2UXV4cE9BQ0ZYVXI1SjdqNzVFTCtsMVE4RmdJQUlGUUM1Q0FoSHA0
Q0E0QkJCQW8KaEFBSlNDSFVYYlE1Y3ZKSXVleWx5MlQ5OXZVdVNsTWtTSUYrYmZySnFOTkhTYzhX
UFlOc2xyWVFpS1lBQ1VnMHg0Mm9FVUFBZ1R3SwprSURrRWRkcjFYcEsxcm5QbkNzZkwvcllhMVdz
NzROQUhha2pWeDkwdGR4KzVPMVN2NnkrRHpWU0JRSkZJRUFDVWdTRFRCY1JRQUNCCjdBUklRTEx6
Q3J4MFRhSkcvdjdKMytXV3QyK1JMVlZiQW0rZkJyOFY2Tkc4aHp6MC9ZZGtjT2ZCa0NDQVFEWUNK
Q0RaYUZFV0FRUVEKS0FvQkVwQ0lEUE9zVmJQazRoY3VsckVMeGtZazRuaUVXVnBTS3RjY2RJMzhZ
ZWdmcEx4dWVUdzZSUzhRQ0ZLQUJDUkliZHBDQUFFRQpJaUZBQWhLSllmbzJTUDNpd2tjbVBTSTNq
cmxSbG0xYUZxSElveG5xNEU2RDVmOGQvLytrYjl1KzBld0FVU01RQmdFU2tEQ01BakVnCmdBQUNv
UklnQVFuVmNMZ0xadDNXZGZMYmQzOHI5NHkvUjZvU1ZlNVdvcFJyZ2JZVmJlV09vKytROC9xZTUz
b2RDaUtBUUJvQkVwQTAKTU14R0FBRUVpbGVBQkNUQ1l6OXoxVXo1MVZ1L2txZW5QeTBKNHgrVE40
RW05WnJJTHc3NWhWeDc4TFhTcUY0amI1V3hOZ0lJZkN0QQpBc0tXZ0FBQ0NDQ1FKRUFDa2dRU3ha
Y1Rsa3lRbThmY0xHUG1qb2xpK0FXUHVYNXBmYm5pZ0N2a2wwTitLUzBidGl4NFBBU0FRS3dFClNF
QmlOWngwQmdFRUVQQkRnQVRFRDhXUTFQSFJ3by9rOXJHM3k4dXpYdWFJaUlzeGFWeXZzVncyOERL
NTlxQnJwVjNqZGk3V29BZ0MKQ0dRdFFBS1NOUmtySUlBQUFuRVhJQUdKNFFoUFhqWlovdkxoWCtU
SnFVL0tqcG9kTWV5aHR5NjFxV2dqVng1d3BWeDE0RlZTV1Y3cApyVExXUmdBQlp3RVNFR2NmbGlL
QUFBSkZLRUFDRXVOQlg3WnhtZHovMmYxeTM4VDdaT0g2aFRIdXFidXVEZWs4eER6VjZ0UzlUNVc2
CnBYWGRyVVFwQkJEd0prQUM0czJQdFJGQUFJRVlDcENBeEhCUWs3dFVYVk50bnBhbHQvQjlhZVpM
c3ExNlczS1IyTDdXTzFxZHZlL1oKY2xHL2kyVGZOdnZHdHA5MERJSFFDcENBaEhab0NBd0JCQkFv
bEFBSlNLSGtDOVR1MnExcjVhbXBUOG5qa3g4M3Y5U3dPbEZkb0VqeQoxMnpUK2szbHBMMU9rblAz
TzFlTzdIcWtsTllwelY5ajFJd0FBczRDSkNET1BpeEZBQUVFaWxDQUJLUUlCOTNxOHFyTnErU1ZX
YS9JCjgxODlMNjkvL2JwczNMSFJXaFM1eHk1TnU1aEpoeVllMzl2amU1eGlGYmtSSk9EWUNwQ0F4
SFpvNlJnQ0NDQ1Fxd0FKU0s1eU1WdHYKUi9VT0diZDRuTHd6OXgxNWQ5NjdvbmZVMmxxOU5iUzkx
QXZKRCs5eXVBenRNbFNHZGgwcVBWdjBERzJzQklaQVVRdVFnQlQxOE5ONQpCQkJBSUpVQUNVZ3FG
ZWJKOXVydE1tbnBKSm40elVUUjd4blJuK2tycHN2Mm11MkI2elNyMzB6NnQrc3YrN2ZiWHdhMkgy
aitkRy9lClBmQTRhQkFCQkhJUUlBSEpBWTFWRUVBQWdYZ0xrSURFZTN4OTdaMWV6RDV2N1R6NWF0
VlhvdC9DL3ZYcXIyWEpoaVcxUDBzM0xzM3AKdHIrTjZqYVM5bzNiMS81MGJOTFJQS0toUnpYMmFy
bVh0SzVvN1dzL3FBd0JCQUlVSUFFSkVKdW1FRUFBZ1dnSWtJQkVZNXdpRWFXZQp4dlhhMTYvSkUx
T2VNTysydFg3N2VsZHg5Mi9iWHk3c2Q2R2MzdnQwdmhEUWxSaUZFSWlRQUFsSWhBYUxVQkZBQUlG
Z0JFaEFnbkV1CnVsYTJWVzB6azVCUlUwZVpGN3B2MnJFcG8wRnBTYWtjMC8wWTgrNVZlakY1bzNx
Tk1xNURBUVFRQ0xrQUNVaklCNGp3RUVBQWdlQUYKU0VDQ055KzZGamZ2MkN6UHozaGVOQm5SdTIy
NXViaTlZVmxET2EzM2FXWXlja1RYSTdpVmJ0RnROWFE0TmdJa0lMRVpTanFDQUFJSQorQ1ZBQXVL
WEpQVzRFdGl3YllNOE8rTlpHVFZsbEl5Wk04YlZSZTE2eHl2OVRnLzk2ZGUybjZ0MktJUUFBaUVS
SUFFSnlVQVFCZ0lJCklCQWVBUktROEl4RjBVV2lYNG80ZXRwb014blJXLzlXSmFveUd2UnEwVXN1
NkhlQm5OWG5MT25TckV2RzhoUkFBSUVDQzVDQUZIZ0EKYUI0QkJCQUlud0FKU1BqR3BDZ2owaTlG
ZkhMcWsrWnBXbVBuajVVYTQ1L1RWQ0lsY3RnZWg1bEhSVTdaK3hTcExLOTBLczR5QkJBbwpsQUFK
U0tIa2FSY0JCQkFJclFBSlNHaUhwbmdEVzdaeG1Ya25MYjFtNUpORm4wakMrT2MwMWF0VFQ3N2Y2
L3RtTW5Mc25zZEt2ZEo2ClRzVlpoZ0FDUVFxUWdBU3BUVnNJSUlCQUpBUklRQ0l4VE1VYjVLTDFp
OHhrUkcvdHExK0ttR21xYkZCcG5wNTEzbjdueVVFZEQ1SVMKZmZQRGhBQUNoUk1nQVNtY1BTMGpn
QUFDSVJVZ0FRbnB3QkRXN2dMNkpZaVBUMzdjdkdia3krVmY3bDRnYVU2WHBsM2svTDdueTluNwpu
aTI5V3ZaS1dzcExCQkFJUklBRUpCQm1Ha0VBQVFTaUpFQUNFcVhSSXRaYUFmMG05cEdUUjVwSFIy
YXNtbEU3UDkyVFFSMEdtYWRvCjZaY2R0bW5VSmwweDVpT0FnTjhDSkNCK2kxSWZBZ2dnRUhrQkVw
RElEeUVkbUxwOHFubGtSTytvTlhQMVRFY1EvYkpEdlU1RVQ5RWEKdnRkd2FWaTNvV041RmlLQWdF
Y0JFaENQZ0t5T0FBSUl4RStBQkNSK1kxclVQWnE0WktKNVZPVHA2VS9MM0xWekhTMGExVzFVKzJX
SApoM2M1bkM4N2ROUmlJUUk1Q3BDQTVBakhhZ2dnZ0VCOEJVaEE0anUyUmQremp4ZCtiTjdXOSts
cFQ4dWlEWXNjUGRvMWFtZWVvcVZmCmRyaGZtLzBjeTdJUUFRU3lFQ0FCeVFLTG9nZ2dnRUJ4Q0pD
QUZNYzRGM1V2RTRtRXZELy9mVE1aZVhiNnM3SjAwMUpIajk0dGU4dUYKL1M2VU0vdWNLWjJiZG5Z
c3kwSUVFTWdnUUFLU0FZakZDQ0NBUVBFSmtJQVUzNWdYZFk5ckVqWHk5dHkzelR0cFBUZmpPVm01
WldWYQpELzJ5dzZGZGh0WisyV0hUQmszVGxtVUJBZ2lrRVNBQlNRUERiQVFRUUtCNEJVaEFpbmZz
aTY3bm1ueHMycjVKTm03ZldQdno0c3dYCnpidHBaYnFUVnYzUyt2S0RYaitRZ2UwSGloNVJxVTVV
aTlaWFhWTnRPcGJXS1pVNkpYVkVMM0xYUi9QNXpubjZ2S3hPbVdnZDljdU0KSCtPeFFWbUQydWYy
ZVkzcU5STDlxYWhYWWRaUmRJTkVoK01uUUFJU3Z6R2xSd2dnZ0lCSEFSSVFqNENzSHB5QUpnNHJO
cTJRTlZ2WAp5Sm90eGsrS3g3VmIxNXJMN0VtRzlYeHoxZWJnZ3ZXaHBZWmxEYzFreEVwS3JNZks4
a3BwMXFDWjZKY3U2dk5VajYwcVdwbnIraEFHClZTRGdUWUFFeEpzZmF5T0FBQUl4RkNBQmllR2dS
cWxMZWtSaThZYkZzbVRERWxtOGZyRXMzYmhVVm14ZUljczNMZC90WjB2VmxpaDEKcmVDeGxwZVZT
K3VLMXJ2OXRHcllTdG8yYWlzZG1uU1E5bzNiUzRmR0hjd2pMZ1VQbUFEaUtVQUNFczl4cFZjSUlJ
Q0FCd0VTRUE5NApyT29zc0sxcW04eGZOMS8wRzh6MVo4RzZCV2FTb1FtSEpodjZ1RzdiT3VkS1dC
cUlRTlA2VGMxRVJKTVNUVWowVVMvQTc5S3NpL216ClI5TTl6RlBHQWdtR1J1SWxRQUlTci9Ha053
Z2dnSUFQQWlRZ1BpQVdjeFY2NUVLL2xYeldxbG5tOTI1WXlZWSs2dEdNaFBHUEtmb0MKZWtHK0hq
V3hFaEo5N05xc3EvUm8wVU42dHVocEhrbUpmaS9wUVY0RVNFRHl3a3FsQ0NDQVFKUUZTRUNpUEhv
QnhhN1hWVXhmTWQxTQpOTXhrWS9Vc00rR1laVHh1MnJFcG9DaG9Kc3dDRlhVcnBFZnpIbVpDb28r
YWxPalAzcTMyTnE5WENYUHN4SlpuQVJLUVBBTlRQUUlJCklCQTlBUktRNkkxWjNpSmV0M1dkVEZz
eFRhYXVtQ3BUbDArdGZhNm5TakVoa0t1QW50SzFUNnQ5cEhlcjNySlA2MzFxbjNOYjQxeEYKSTdZ
ZUNVakVCb3h3RVVBQWdmd0xrSURrM3poMExlaHRaT2V1blN0ZkxQMUNQdi9tYy9OUm4yZjZ0dkRR
ZFlTQUlpM1FzWEZINmRlMgpuL25UdjEyenRvdkVBQUFnQUVsRVFWUi84MUZQNnlyUk42eE04UkVn
QVluUFdOSVRCQkJBd0NjQkVoQ2ZJTU5halNZYk0xYk9rUEdMCng4dm5TejgzRTQ1Snl5Wng4WGRZ
QjZ6STQ5S0w0ZnUyNlN1YWtQUnYyMThPN0hDZzlHclppNlFreXRzRkNVaVVSNC9ZRVVBQWdid0kK
a0lEa2hiVndsZXFGMytNV2pUTVRqbkdMeDhtRUpSTklOZ28zSExUc2c0QW1KZm9Ga0lNNkRESVRr
a0VkQjVrWHhQdFFOVlVFSVVBQwpFb1F5YlNDQUFBS1JFaUFCaWRSdzdScXNmaFAzbE9WVFpPejhz
VEoyd1ZqNWFPRkhzbkQ5d2wwTDhRcUJHQXAwYXRKSkR1bDBpQXpwClBFU0c3REZFK3JUdXd6Zkho
M1djU1VEQ09qTEVoUUFDQ0JSTWdBU2tZUFRaTjZ6ZnE2RkhORFRaMEtUanc0VWZjblFqZTBiV2lL
RkEKcy9yTnZrMUlqR1JFa3hJOVlsSy9ySDRNZXhyQkxwR0FSSERRQ0JrQkJCRElyd0FKU0g1OVBk
V3VSemowSXZFeGM4YklXM1Bma2c4VwpmQ0I4RzdnblVsWXVFZ0g5RnZqQm5RZkxrVjJQbEtPNkhX
VmVVMUtucEU2UjlENWszU1FCQ2RtQUVBNENDQ0JRZUFFU2tNS1B3UzRSCjZCZjZhY0toUCsvTWUw
ZldiRjJ6eTNKZUlJQkE5Z0tWRFNwbGFKZWhaaktpQ1lsK2dTSlRRQUlrSUFGQjB3d0NDQ0FRSFFF
U2tBS1AKbFo1VzlkNzg5K1RsbVMvTEs3TmVrYS9YZkYzZ2lHZ2VnZmdMN0ZtNXB4emY0M2c1b2Vj
SmN0Z2VoM0c2Vmo2SG5BUWtuN3JValFBQwpDRVJTZ0FTa0FNTzJhUDJpMm9SRFQ2M2kyOFFMTUFn
MGljQk9BZjBXZHoxVnkwcElPamJwaUkyZkFpUWdmbXBTRndJSUlCQUxBUktRCmdJWlJUNjE2WnZv
ejVzK25TejZWaFBHUENRRUV3aVZRSWlWeVFQc0Q1SlM5VHpGL09GWExoL0VoQWZFQmtTb1FRQUNC
ZUFtUWdPUngKUEw5YzlxV1pjRHc5N1dtWnNtSktIbHVpYWdRUXlJZEFuMVo5NU5UZXA1ckp5SDV0
OXN0SEUvR3Zrd1FrL21OTUR4RkFBSUVzQlVoQQpzZ1RMVkh6MjZ0bnkrT1RIelo4WnEyWmtLczV5
QkJDSWlFQ3ZGcjNrbkgzUE1YKzZOKzhla2FoREVDWUpTQWdHZ1JBUVFBQ0JjQW1RCmdQZ3dIc3My
THBOUlUwZVpTWWQrK3pnVEFnakVXMEMvbFYyVGtUUDNPVlBhTkdvVDc4NTY3UjBKaUZkQjFrY0FB
UVJpSjBBQ2t1T1EKN3FqZUlTOTg5WUk4K1BtRDhzYnNONlE2VVoxalRheUdBQUpSRlNndEtaVmp1
aDhqRi9lL1dFN2E2eVNwVzFvM3FsM0pYOXdrSVBtegpwV1lFRUVBZ29nSWtJRmtPM1BRVjA4Mms0
NUZKajhpS3pTdXlYSnZpQ0NBUVY0RldEVnZKK1gzUE41T1J2VnZ0SGRkdVp0OHZFcERzCnpWZ0RB
UVFRaUxrQUNZaUxBZGJ2Nm5oaXloTnkzOFQ3NUtORkg3bFlneUlJSUZETUFvZDBQRVIrc3Y5UDVL
dytaL0VkSXlRZ3hmeXIKUU44UlFBQ0JsQUlrSUNsWnZwMjVlUDFpK2RlRWY1bUpCMGM3SEtCWWhB
QUNLUVgwcUlnbUlwY1B2Rnc2Tk9tUXNrenNaNUtBeEg2SQo2U0FDQ0NDUXJRQUpTQXF4RHhaOElD
UEdqVEJ2b1Z1VnFFcFJnbGtJSUlDQWU0R3lrakx6VnI0L0hmUlRHZHg1c1BzVjQxQ1NCQ1FPCm8w
Z2ZFRUFBQVY4RlNFQjJjaVlTQ2ZPaTh0cy91RjI0azVXdjJ4aVZJWUNBVFVEdm9IWHo0SnZOaTla
TDlNMTUzQ2NTa0xpUE1QMUQKQUFFRXNoWW8rZ1NrcXFiS3ZIM3VYejc0aTB4Yk9TMXJRRlpBQUFF
RWNoSG8zYkszM0RqNFJ2TjJ2bVYxeW5LcElocnJrSUJFWTV5SQpFZ0VFRUFoUW9HZ1RrTzNWMitX
Qnp4NFFUVHdXckY4UUlEbE5JWUFBQXQ4SjdORjBEN25oMEJ2a3h3TitMUFZLNjMyM0lDN1BTRURp
Ck1wTDBBd0VFRVBCTm9PZ1NrT3FhYXZuZmwvK1QzNzM3TzVtM2JwNXZrRlNFQUFJSWVCSG8wclNM
L083dzM4bTUrNTBycFhWS3ZWUVYKcm5WSlFNSTFIa1NEQUFJSWhFQ2dhQklRdmNaajlMVFI4cHQz
ZmlNelZzMElBVDBoSUlBQUFyc0w5R3JSUzI0ZGVxdWMxdnMwaWNVMQpJaVFndXc4eWN4QkFBSUVp
RnlpS0JPVERCUi9LTmE5ZEl4TyttVkRrdzAzM0VVQWdLZ0lEMncyVWZ4ejNEem1rMHlGUkNUbDFu
Q1FnCnFWMllpd0FDQ0JTeFFLd1RrRVhyRjhrTmI5NGdJNmVNTE9JaHB1c0lJQkJsZ2JQN25DMTNI
SDJIZEd6U01acmRJQUdKNXJnUk5RSUkKSUpCSGdWZ21JRnVydHNvZEg5NWhYbUMrdVdwekh2bW9H
Z0VFRU1pL1FNT3lodVlkcy9SaTlRWmxEZkxmb0o4dGtJRDRxVWxkQ0NDQQpRQ3dFWXBlQXZEZnZQ
Ym5reFV0azF1cFpzUmdnT29FQUFnaFlBajJhOTVEN2g5OHZoM1U1ekpvVi9rY1NrUENQRVJFaWdB
QUNBUXZFCkpnRlp0M1dkZWJyVi9aL2RMd25qSHhNQ0NDQVFSNEVTS1pGTEJseGlucGJWdEVIVDhI
ZVJCQ1Q4WTBTRUNDQ0FRTUFDc1VoQVh2enEKUmJuc3BjdGt5Y1lsQWZQUkhBSUlJRkFZZ2ZhTjJz
dTlKOTRydy9jYVhwZ0EzTFpLQXVKV2luSUlJSUJBMFFoRU9nSFJhejJ1ZS8wNgorZWVFZnhiTmdO
RlJCQkJBd0M1d3hjQXI1SzVoZDRYMzJoQVNFUHR3OFJ3QkJCQkF3QkNJYkFJeVpma1VPWHYwMlRK
bHhSUUdFZ0VFCkVDaHFnVDZ0K3NqSTAwWktuOVo5d3VkQUFoSytNU0VpQkJCQW9NQUNkUXJjZms3
TjN6ZnhQam5ndmdOSVBuTFNZeVVFRUlpYmdINFEKby90RTNUY3lJWUFBQWdnZ0VIYUJTQjBCMlZH
OVEzNzI2cy9rM29uM2h0MlYrQkJBQUlHQ0NGeTIvMlZ5OTNGM1M5M1N1Z1ZwZjdkRwpPUUt5R3dr
ekVFQUFnV0lYaUV3Q3NuTHpTam50eWRQa3ZmbnZGZnVZMFg4RUVFREFVZUN3UFE2VDBXZU1scFlO
V3pxV0MyUWhDVWdnCnpEU0NBQUlJUkVrZ0Vnbkk5QlhUNWZqSGpwZDU2K1pGeVpaWUVVQUFnWUlK
ZEduYVJWNzU0U3V5ZDZ1OUN4YUQyVEFKU0dIOWFSMEIKQkJBSW9VRG9FNUNKU3liS3NmODdWbFp1
V1JsQ1BrSkNBQUVFd2l2UXNyeWx2SGJ1YTdKLysvMExGeVFKU09Ic2FSa0JCQkFJcVVDbwpMMEov
Zi83N2NzUi9qeUQ1Q09uR1ExZ0lJQkJ1QWYzZ1J2ZWhZK2VQRFhlZ1JJY0FBZ2dnVUZRQ29VMUFY
di82ZGZQSXgvcnQ2NHRxClFPZ3NBZ2dnNEtlQTdrT0gvVytZNkQ2VkNRRUVFRUFBZ1RBSWhQSVVy
UGZtdlNmSFBYYWNiS25hRWdZallrQUFBUVFpTDFCZVZpNnYKL3ZCVk9hekxZY0gyaFZPd2d2V21O
UVFRUUNBQ0FxRkxRQ1l0blNSREhoNGlHN1p2aUFBZklTS0FBQUxSRVdoY3I3R012V2lzOUczYgpO
N2lnU1VDQ3M2WWxCQkJBSUNJQ29Ub0ZhOUg2UmViZHJrZytJckwxRUNZQ0NFUktRUGV0ZWtkQjNk
Y3lJWUFBQWdnZ1VDaUIwQ1FnClc2dTJ5c2xQbkN4TE5pNHBsQVh0SW9BQUFyRVgwSDJzN210MW44
dUVBQUlJSUlCQUlRUkNrNEJjOWNwVk11R2JDWVV3b0UwRUVFQ2cKcUFSMFg2djdYQ1lFRUVBQUFR
UUtJUkNLQk9TSktVL0lnNTgvV0lqKzB5WUNDQ0JRbEFLNno5VjlMeE1DQ0NDQUFBSkJDeFQ4SXZS
dgpObndqKy94ekgxbXpkVTNRZmFjOUJCQkFvS2dGS2h0VXl0UXJwa3E3eHUzeTU4QkY2UG16cFdZ
RUVFQWdvZ0lGUHdKeTVTdFhrbnhFCmRPTWhiQVFRaUxhQWZ2Q2orMkFtQkJCQUFBRUVnaFFvYUFL
aVg0ejE3SXhuZyt3dmJTR0FBQUlJMkFSMEg4eVhGTnBBZUlvQUFnZ2cKa0hlQmdpVWdOWWthdWU2
TjYvTGVRUnBBQUFFRUVIQVcwSDJ4N3BPWkVFQUFBUVFRQ0VLZ1lBbkl5TWtqWmVxS3FVSDBrVFlR
UUFBQgpCQndFZEYrcysyUW1CQkJBQUFFRWdoQW9XQUx5bHcvL0VrVC9hQU1CQkJCQXdJVUErMlFY
U0JSQkFBRUVFUEJGb0NBSnlOdHozNWJKCnl5ZjcwZ0VxUVFBQkJCRHdMcUQ3Wk4wM015R0FBQUlJ
SUpCdmdZSWtJQTkreG5kKzVIdGdxUjhCQkJESVZvQjljN1ppbEVjQUFRUVEKeUVVZzhPOEIyYkpq
aTdTOG82VnNydHFjUzd5c2d3QUNDQ0NRSjRHR1pRMWw1UTBycGJ4dXVYOHQ4RDBnL2xsU0V3SUlJ
QkFUZ2NDUApnSXlaTTRia0l5WWJEOTFBQUlGNENlZ0hRN3FQWmtJQUFRUVFRQ0NmQW9FbklHL05m
U3VmL2FGdUJCQkFBQUVQQXV5alBlQ3hLZ0lJCklJQ0FLNEhBRTVBUEYzem9LakFLSVlBQUFnZ0VM
OEErT25oeldrUUFBUVNLVFNEUUJFUy82R3JLOGluRlpreC9FVUFBZ2NnSTZENmEKTHlXTXpIQVJL
QUlJSUJCSmdVQVRrQVhyRnNqVzZxMlJoQ0pvQkJCQW9CZ0VkQit0KzJvbUJCQkFBQUVFOGlVUWFB
S3laTU9TZlBXRAplaEZBQUFFRWZCSmdYKzBUSk5VZ2dBQUNDS1FVQ0RRQldiTmxUY29nbUlrQUFn
Z2dFQjRCOXRYaEdRc2lRUUFCQk9Jb0VHZ0NzcldLCjA2L2l1QkhSSndRUWlKY0ErK3A0alNlOVFR
QUJCTUltRUdnQ3dvV05ZUnQrNGtFQUFRUjJGMkJmdmJzSmN4QkFBQUVFL0JNSU5BSHgKTDJ4cVFn
QUJCQkJBQUFFRUVFQUFnU2dLa0lCRWNkU0lHUUVFRUVBQUFRUVFRQUNCaUFxUWdFUjA0QWdiQVFR
UVFBQUJCQkJBQUlFbwpDcENBUkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lCRWRPQUlHd0VFRUVB
QUFRUVFRQUNCS0FxUWdFUngxSWdaQVFRUVFBQUJCQkJBCkFJR0lDcENBUkhUZ0NCc0JCQkJBQUFF
RUVFQUFnU2dLa0lCRWNkU0lHUUVFRUVBQUFRUVFRQUNCaUFxUWdFUjA0QWdiQVFRUVFBQUIKQkJC
QUFJRW9DcENBUkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lCRWRPQUlHd0VFRUVBQUFRUVFRQUNC
S0FxUWdFUngxSWdaQVFRUQpRQUFCQkJCQUFJR0lDcENBUkhUZ0NCc0JCQkJBQUFFRUVFQUFnU2dL
a0lCRWNkU0lHUUVFRUVBQUFRUVFRQUNCaUFxUWdFUjA0QWdiCkFRUVFRQUFCQkJCQUFJRW9DcENB
UkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lCRWRPQUlHd0VFRUVBQUFRUVFRQUNCS0FxUWdFUngK
MUlnWkFRUVFRQUFCQkJCQUFJR0lDcENBUkhUZ0NCc0JCQkJBQUFFRUVFQUFnU2dLa0lCRWNkU0lH
UUVFRUVBQUFRUVFRQUNCaUFxUQpnRVIwNEFnYkFRUVFRQUFCQkJCQUFJRW9DcENBUkhIVWlCa0JC
QkJBQUFFRUVFQUFnWWdLa0lCRWRPQUlHd0VFRUVBQUFRUVFRQUNCCktBcVFnRVJ4MUlnWkFRUVFR
QUFCQkJCQUFJR0lDcENBUkhUZ0NCc0JCQkJBQUFFRUVFQUFnU2dLa0lCRWNkU0lHUUVFRUVBQUFR
UVEKUUFDQmlBcVFnRVIwNEFnYkFRUVFRQUFCQkJCQUFJRW9DcENBUkhIVWlCa0JCQkJBQUFFRUVF
QUFnWWdLa0lCRWRPQUlHd0VFRUVBQQpBUVFRUUFDQktBcVFnRVJ4MUlnWkFRUVFRQUFCQkJCQUFJ
R0lDcENBUkhUZ0NCc0JCQkJBQUFFRUVFQUFnU2dLa0lCRWNkU0lHUUVFCkVFQUFBUVFRUUFDQmlB
cVFnRVIwNEFnYkFRUVFRQUFCQkJCQUFJRW9DcENBUkhIVWlCa0JCQkJBQUFFRUVFQUFnWWdLa0lC
RWRPQUkKR3dFRUVFQUFBUVFRUUFDQktBcVFnRVJ4MUlnWkFRUVFRQUFCQkJCQUFJR0lDZ1NhZ05R
dHJSdFJKc0pHQUFFRWlrZUFmWFh4akRVOQpSUUFCQkFvaEVHZ0NVbDVXWG9nKzBpWUNDQ0NBUUJZ
QzdLdXp3S0lvQWdnZ2dFRFdBb0VtSUswcVdtVWRJQ3NnZ0FBQ0NBUXJ3TDQ2CldHOWFRd0FCQklw
TklOQUVwRk9UVHNYbVMzOFJRQUNCeUFtd3I0N2NrQkV3QWdnZ0VDbUJRQk1RL1ZTdFpYbkxTQUVS
TEFJSUlGQk0KQXJxUDVnaElNWTA0ZlVVQUFRU0NGd2cwQWRIdURXZzNJUGhlMGlJQ0NDQ0FnQ3NC
OXRHdW1DaUVBQUlJSU9CQklQQUVaTWdlUXp5RQp5Nm9JSUlBQUF2a1VZQitkVDEzcVJnQUJCQkJR
Z2NBVGtPUDJQQTU1QkJCQUFJR1FDckNQRHVuQUVCWUNDQ0FRSTRIQUU1RDkyKzh2Cm5adDBqaEVo
WFVFQUFRVGlJYUQ3WnQxSE15R0FBQUlJSUpCUGdjQVRFTzNNZVgzUHkyZWZxQnNCQkJCQUlBY0I5
czA1b0xFS0FnZ2cKZ0VEV0FnVkpRQzd1ZjdGeDdsZEJtczRhaUJVUVFBQ0JZaERRZmJMdW01a1FR
QUFCQkJESXQwQkJzb0N1bFYzbDVMMVB6bmZmcUI4QgpCQkJBd0tXQTdwTjEzOHlFQUFJSUlJQkF2
Z1VLa29Cb3AyNzUzaTFTWXZ4alFnQUJCQkFvcklEdWkzV2Z6SVFBQWdnZ2dFQVFBZ1ZMClFQcTE3
U2RuN0hOR0VIMmtEUVFRUUFBQkJ3SGRGK3MrbVFrQkJCQkFBSUVnQkVvU3h1VFlVSWx4bENKREVj
ZjFIUll1V0xkQWV2Mi8KWHJLbGFvdERLUlloZ0FBQ0NPUkxvTHlzWEdaY05VTTZOODNUM1FueitE
Y2tYeWJVaXdBQ0NDQ1FYNEdDSFFIUmJ1a2Z2TjhjOXB2OAo5cERhRVVBQUFRVFNDdWcrT0cvSlI5
cFdXWUFBQWdnZ1VNd0NCVDBDb3ZEVk5kVnkwQU1IeVlSdkpoVHpPTkIzQkJCQUlIQ0JnZTBHCnlp
Yy8va1JLNjVUbXIyMk9nT1RQbHBvUlFBQ0JpQW9VOUFpSW11a2Z2c2RPZlV3YTFXMFVVVUxDUmdB
QkJLSW5vUHRjM2ZmbU5mbUkKSGdzUkk0QUFBZ2dFSUZEd0JFVDcyTE5GVDduM3hIc0Q2QzVOSUlB
QUFnaW9nTzV6ZGQvTGhBQUNDQ0NBUU5BQ29VaEF0Tk0vM08rSApjczJnYTRMdVArMGhnQUFDUlNl
ZysxcmQ1ekloZ0FBQ0NDQlFDSUdDWHdOaTc3UmVEL0w5Sjc0dkw4OTYyVDZiNXdnZ2dBQUNQZ21j
CjBPTUVlZjZzNTRNNzlZcHJRSHdhT2FwQkFBRUU0aU1RcWdSRVdUZHQzeVJIL1BjSUdiOWtmSHlV
NlFrQ0NDQVFBb0VEMng4b2IxL3cKdGxUVXF3Z3VHaEtRNEt4cENRRUVFSWlJUUdoT3diSzg5QS9q
cStlK0t2dTIzdGVheFNNQ0NDQ0FnRWNCM2FmcXZqWFE1TU5qekt5TwpBQUlJSUJCUGdkQWxJTXJj
dkx5NXZIWCtXOUt2RGQvTUc4L05qbDRoZ0VDUUFyb3YxWDJxN2x1WkVFQUFBUVFRS0xSQUtCTVFS
V2xWCjBVcmV2ZkJkT2JUVG9ZVTJvbjBFRUVBZ3NnSzZEOVY5cWU1VG1SQkFBQUVFRUFpRFFHZ1RF
TVZwMnFDcHZISGVHM0pNdDJQQ1lFVU0KQ0NDQVFLUUVkTitwKzFEZGx6SWhnQUFDQ0NBUUZvRlFK
eUNLMUxCdVEzbnhuQmZsb240WGhjV01PQkJBQUlIUUMrZytVL2VkdWc5bApRZ0FCQkJCQUlFd0Nv
VTlBRkt0ZWFUMTU2UHNQeWQrRy9VMUtTMHJENUVjc0NDQ0FRS2dFZEIrcCswcmRaK3Era3drQkJC
QkFBSUd3CkNZVHVOcnlaZ042Yy9hYWNPZnBNV2JOMVRhYWlMRWNBQVFTS1NxQ3lRYVdNT20yVUhO
Mzk2UEQwbTl2d2htY3NpQVFCQkJBSWlVRGsKRWhCMW03Tm1qcHc5K215K0t5UWtHeEZoSUlCQTRR
WDBPejVHbmpaU3VsVjJLM3d3OWdoSVFPd2FQRWNBQVFRUU1BUWljUXBXOGtqcApIOWdQTC81UWJq
cjBKcU1Ea2V4Q2NwZDRqUUFDQ09Ra29QdEEzUmZxUGpGMHlVZE9QV0lsQkJCQUFJRzRDMFR5Q0lo
OVVONmUrN2FjCjk4eDVzbVRqRXZ0c25pT0FBQUt4RjJqZnFMMDhlc3FqY2tUWEk4TGJWNDZBaEhk
c2lBd0JCQkFva0VEa0V4QjFXNzFsdFZ6MytuWHkKbjBuL0tSQWp6U0tBQUFMQkNselk5MEs1YTlo
ZDRmOXlRUktRWURjTVdrTUFBUVFpSUJDTEJNUnlIak5ualB6a3haL0kzTFZ6clZrOApJb0FBQXJF
UzZOcXNxOXczL0Q0NXF0dFIwZWdYQ1VnMHhva29FVUFBZ1FBRllwV0FxTnZtSFp2bGxyZHZrYnZI
M1MzVmllb0FLV2tLCkFRUVF5SitBM2w3M1o0TitKbjg4NG8vUittNFBFcEQ4YlJUVWpBQUNDRVJV
SUhZSmlEVU9VNVpQa1d0ZXUwYmVtdnVXTll0SEJCQkEKSUpJQ1IzWTlVdjUrN04rbFQrcyswWXVm
QkNSNlkwYkVDQ0NBUUo0RllwdUFXRzdQVG45V2Z2SEdMMlRPMmpuV0xCNFJRQUNCU0FoMAphOVpO
N2p6bVRqbDU3NU1qRVcvS0lFbEFVckl3RXdFRUVDaG1nZGduSURxNDI2cTJ5ZDgvK2J2OCtZTS95
OXB0YTR0NXZPazdBZ2hFClFLQlovV1p5MCtDYjVKcURycEg2WmZVakVMRkRpQ1FnRGpnc1FnQUJC
SXBUb0NnU0VHdG8xMjVkSzMvOThLL3lqM0gva0UwN05sbXoKZVVRQUFRUkNJVkJSdDBLdUhuUzFY
SC9vOWRLc1FiTlF4T1E1Q0JJUXo0UlVnQUFDQ01STm9LZ1NFR3Z3bG05YUxyZU52VTN1blhDdgpi
S3ZlWnMzbUVRRUVFQ2lJUVAzUytuTFp3TXZrbDBOK0thMHJXaGNraHJ3MVNnS1NOMW9xUmdBQkJL
SXFVSlFKaURWWWk5WXZranMvCnVsUHVuM2kvYks3YWJNM21FUUVFRUFoRW9HRlpRN2xrLzB2a0Y0
ZjhRam8yNlJoSW00RTNRZ0lTT0RrTklvQUFBbUVYS09vRXhCcWMKbFp0WHlvaHhJMlRFK0JHeVp1
c2FhemFQQ0NDQVFGNEVLaHRVeWs4UC9LbDVXOTBXRFZ2a3BZM1FWRW9DRXBxaElCQUVFRUFnTEFJ
awpJTGFSMkxoOW8veDd3ci9OYTBRV3JsOW9XOEpUQkJCQXdMdEFweWFkekdzOExoMTRxVFNxMTho
N2hWR29nUVFrQ3FORWpBZ2dnRUNnCkFpUWdLYmlyYXFya3VSblBtVjltT0hiQjJCUWxtSVVBQWdp
NEZ4alNlWWg1dE9NSHZYNGdaWFhLM0s4WWg1SWtJSEVZUmZxQUFBSUkKK0NwQUFwS0JjOUxTU2Vh
cFdZOVBmbHkyVkczSlVKckZDQ0NBd0xjQzVXWGxjczYrNTVpbld2VnQyN2Q0V1VoQWluZnM2VGtD
Q0NDUQpSb0FFSkExTTh1eFZtMWZKbzE4K0tnOSs5cUJNV1RFbGVUR3ZFVUFBQVZPZ1Q2cytjdkdB
aStXOC9jNlQyRi9mNFdiTVNVRGNLRkVHCkFRUVFLQ29CRXBBY2hudmNvbkh5NE9jUHloTlRucEFO
Mnpma1VBT3JJSUJBbkFRYTEyc3NaL1U1U3k3dWY3RU02amdvVGwzejNoY1MKRU8rRzFJQUFBZ2pF
VElBRXhNT0FidHErU1o2YytxUjVaT1M5ZWU5SmpmR1BDUUVFaWtPZ2p0U1J3N29jWmg3cE9HT2ZN
NlNpWGtWeApkRHpiWHBLQVpDdEdlUVFRUUNEMkFpUWdQZzN4NHZXTHpTTWllcTNJWjBzLzg2bFdx
a0VBZ2JBSkRHZzd3THkyUTQ5NGRHalNJV3poCmhTOGVFcER3alFrUklZQUFBZ1VXSUFISnd3RE1X
RGxETkJFWk5XV1V6Rnc5TXc4dFVDVUNDQVFwMExONVR6bXp6NWxtNHRHclphOGcKbTQ1K1d5UWcw
UjlEZW9BQUFnajRMRUFDNGpOb2NuVlRsMCtWWjZZL1kvNThzZXlMNU1XOFJnQ0JrQXIwYTlOUFR0
bjdGUE5ubjliNwpoRFRLQ0lSRkFoS0JRU0pFQkJCQUlGZ0JFcEFBdmVlc21XTW1JczlPZjFZK1dm
UUoxNHdFYUU5VENHUVMwR3M2RHVwNGtKeTg5OGxtCjB0R3RzbHVtVlZqdVJvQUV4STBTWlJCQUFJ
R2lFaUFCS2RCd3I5eThVbDc3K2pWNWVlYkw4dnJzMTJYTjFqVUZpb1JtRVNoZWdjb0cKbFRLcyt6
QTVvZWNKY3V5ZXgwckxoaTJMRnlOZlBTY0J5WmNzOVNLQUFBS1JGU0FCQ2NIUVZkZFV5OGVMUHBa
WFpyMWkvbnk1N0V0SgpHUCtZRUVEQVg0RVNLWkg5MnV3bngvYzQzdnc1dU9QQlVscW4xTjlHcUcx
WEFSS1FYVDE0aFFBQ0NDQWdKQ0FoM0FoV2JGb2hiODE5ClM5NmFZL3dZajNQWHpnMWhsSVNFUURR
RXVqYnJLa2QyUFZLTzdHYjhHSSt0S2xwRkkvQzRSRWtDRXBlUnBCOElJSUNBYndJa0lMNVIKNXE4
aXZYYkVTa2Jlbi8rK2ZMUHhtL3cxUnMwSVJGeWdYYU4yOHIwOXZsZWJkSEF0UjRFSGxBU2t3QU5B
OHdnZ2dFRDRCRWhBd2pjbQpHU09hdlhxMmpGMHdWc2JPSHlzZkxQaUFXLzFtRktOQW5BWDBGcm1E
T3crV0lYc01rU0dkaDBqMzV0M2ozTjNvOVkwRUpIcGpSc1FJCklJQkFuZ1ZJUVBJTUhFVDF5ell1
TXhNUnZZNWszS0p4OHRrM244bm1xczFCTkUwYkNBUXEwTENzb1F4b04wQUdkUndrZXYyR0poNXQK
R3JVSk5BWWF5MUtBQkNSTE1Jb2pnQUFDOFJjZ0FZbmhHRmZWVk1tVTVWTmsvT0x4WmtLaWo5TldU
T08ydnpFYzZ6aDNTVytMMjd0Vgpiem13dzRGbXdxR1BmVnIza2JJNlpYSHVkdno2UmdJU3Z6R2xS
d2dnZ0lCSEFSSVFqNEJSV1gzajlvMHlhZWtrK1h6cDUvTEYwaS9rCjgyOCtsNmtycHNxMjZtMVI2
UUp4eGxpZ2ZtbDkyYWZWUHRLL1hYL3AxN2FmOUcvYlgvcTI3U3VONmpXS2NhK0xwR3NrSUVVeTBI
UVQKQVFRUWNDOUFBdUxlS25ZbGQxVHZrT2tycDVzSmlTWWwrcTN0bXBRczNyQTRkbjJsUStFUjZO
QzRnNWxzNkxlTGE3S2hQM3FrZ3lNYgo0UmtqWHlNaEFmR1ZrOG9RUUFDQk9BaVFnTVJoRkgzdXc3
cXQ2OHhFUkJNU1BYVkxreEo5SkRIeEdUcm0xV21pb1ltRkh0a3dINDJFClE1ODNiZEEwNWoybmU3
c0lrSURzd3NFTEJCQkFBQUhoZTBEWUNOd0xiTnErU2I1ZS9iWE1YRFZUWnEyZTllM2pxbG5tOHhX
YlY3aXYKaUpLeEVXalZzSlgwYU41RGVyVG9JVDFiOURTZjYrT2V6ZmVVaW5vVnNla25IZkVnUUFM
aUFZOVZFVUFBZ1hnS2NBUWtudU1hZUsvVwpibDByYzlmTWxYbHI1Nlg4V2I5OWZlQXgwYUIzZ1Ni
MW1raVhabDFTL3VqM2EzQTB3N3R4N0dzZ0FZbjlFTk5CQkJCQUlGc0JFcEJzCnhTaWZrOENhTFd0
a3dib0Y1bWxjaTljdlR2bTRhc3Vxbk9wbXBkd0VXcFMzRUQxTnFrTVQ0eWZGWStlbW5hV3l2REsz
eWxrTEFVdUEKQk1TUzRCRUJCQkJBWUtjQUNRaWJRbWdFdGxWdGsrV2JscWY5MGRPOGRQbnFMYXRG
ajdqb3RTbzF4ajhtTVc1WVc4YzhHdEdzUVROcApYdDVjV2xlMEZqMDlTaC9UL2RRdnF3OGRBdmtY
SUFISnZ6RXRJSUFBQWhFVElBR0oySUFSN25jQ2lVUkMxbTFiSjNwMFpjMVc0MmZuCm95WW5ldHZo
VEQ5YnE3YUtKajE2SzJMN1kxV2k2cnRHOHZDc3JLUk05TTIvM25yVy90aWdySUY1MjFtOTlhelRq
eVlabFEwcXphTVQKMW1QVCtrMmxSTi9vTVNFUU5nRVNrTENOQ1BFZ2dBQUNCUmNnQVNuNEVCQkEy
QVNxYTZwcms1THFSTFhvNjVwRWplaHpmVFNmNzV5bgp6M1dxVTJJY2d6QitTdXVVZnZlODVOdm5P
cS9VZUc0bEcvcWFDWUdpRVNBQktacWhwcU1JSUlDQVd3RVNFTGRTbEVNQUFRUVF5RjZBCkJDUjdN
OVpBQUFFRVlpNVFKK2I5bzNzSUlJQUFBZ2dnZ0FBQ0NDQVFJZ0VTa0JBTkJxRWdnQUFDQ0NDQUFB
SUlJQkIzQVJLUXVJOHcKL1VNQUFRUVFRQUFCQkJCQUlFUUNKQ0FoR2d4Q1FRQUJCQkJBQUFFRUVF
QWc3Z0lrSUhFZllmcUhBQUlJSUlBQUFnZ2dnRUNJQkVoQQpRalFZaElJQUFnZ2dnQUFDQ0NDQVFO
d0ZTRURpUHNMMER3RUVFRUFBQVFRUVFBQ0JFQW1RZ0lSb01BZ0ZBUVFRUUFBQkJCQkFBSUc0CkM1
Q0F4SDJFNlI4Q0NDQ0FBQUlJSUlBQUFpRVNJQUVKMFdBUUNnSUlJSUFBQWdnZ2dBQUNjUmNnQVlu
N0NOTS9CQkJBQUFFRUVFQUEKQVFSQ0pFQUNFcUxCSUJRRUVFQUFBUVFRUUFBQkJPSXVRQUlTOXhH
bWZ3Z2dnQUFDQ0NDQUFBSUloRWlBQkNSRWcwRW9DQ0NBQUFJSQpJSUFBQWdqRVhZQUVKTzRqVFA4
UVFBQUJCQkJBQUFFRUVBaVJBQWxJaUFhRFVCQkFBQUVFRUVBQUFRUVFpTHNBQ1VqY1I1aitJWUFB
CkFnZ2dnQUFDQ0NBUUlnRVNrQkFOQnFFZ2dBQUNDQ0NBQUFJSUlCQjNBUktRdUk4dy9VTUFBUVFR
UUFBQkJCQkFJRVFDWmE1aUtTbHgKVll4Q0NDQ0FBQUlJSUlBQUFnZ2dnSUNUUU9ZRUpKRndXcDls
Q0NDQUFBSUlJSUFBQWdnZ2dJQnJBVTdCY2sxRlFRUVFRQUFCQkJCQQpBQUVFRVBBcVFBTGlWWkQx
RVVBQUFRUVFRQUFCQkJCQXdMVUFDWWhyS2dvaWdBQUNDQ0NBQUFJSUlJQ0FWd0VTRUsrQ3JJOEFB
Z2dnCmdBQUNDQ0NBQUFLdUJVaEFYRk5SRUFFRUVFQUFBUVFRUUFBQkJMd0trSUI0RldSOUJCQkFB
QUVFRUVBQUFRUVFjQzFBQXVLYWlvSUkKSUlBQUFnZ2dnQUFDQ0NEZ1ZZQUV4S3NnNnlPQUFBSUlJ
SUFBQWdnZ2dJQnJBUklRMTFRVVJBQUJCQkJBQUFFRUVFQUFBYThDSkNCZQpCVmtmQVFRUVFBQUJC
QkJBQUFFRVhBdVFnTGltb2lBQ0NDQ0FBQUlJSUlBQUFnaDRGU0FCOFNySStnZ2dnQUFDQ0NDQUFB
SUlJT0JhCmdBVEVOUlVGRVVBQUFRUVFRQUFCQkJCQXdLc0FDWWhYUWRaSEFBRUVFRUFBQVFRUVFB
QUIxd0lrSUs2cEtJZ0FBZ2dnZ0FBQ0NDQ0EKQUFKZUJVaEF2QXF5UGdJSUlJQUFBZ2dnZ0FBQ0NM
Z1dJQUZ4VFVWQkJCQkFBQUVFRUVBQUFRUVE4Q3BBQXVKVmtQVVJRQUFCQkJCQQpBRE9jSWM0QUFB
bWJTVVJCVkFFRUVFREF0UUFKaUdzcUNpS0FBQUlJSUlBQUFnZ2dnSUJYQVJJUXI0S3Nqd0FDQ0ND
QUFBSUlJSUFBCkFxNEZTRUJjVTFFUUFRUVFRQUFCQkJCQUFBRUV2QXFRZ0hnVlpIMEVFRUFBQVFR
UVFBQUJCQkJ3TFVBQzRwcUtnZ2dnZ0FBQ0NDQ0EKQUFJSUlPQlZnQVRFcXlEckk0QUFBZ2dnZ0FB
Q0NDQ0FnR3NCRWhEWFZCUkVBQUVFRUVBQUFRUVFRQUFCcndJa0lGNEZXUjhCQkJCQQpBQUVFRUVB
QUFRUmNDNUNBdUthaUlBSUlJSUFBQWdnZ2dBQUNDSGdWSUFIeEtzajZDQ0NBQUFJSUlJQUFBZ2dn
NEZxQUJNUTFGUVVSClFBQUJCQkJBQUFFRUVFREFxd0FKaUZkQjFrY0FBUVFRUUFBQkJCQkFBQUhY
QWlRZ3Jxa29pQUFDQ0NDQUFBSUlJSUFBQWw0RlNFQzgKQ3JJK0FnZ2dnQUFDQ0NDQUFBSUl1Qlln
QVhGTlJVRUVFRUFBQVFRUVFBQUJCQkR3S2tBQzRsV1E5UkZBQUFFRUVFQUFBUVFRUU1DMQpBQW1J
YXlvS0lvQUFBZ2dnZ0FBQ0NDQ0FnRmNCRWhDdmdxeVBBQUlJSUlBQUFnZ2dnQUFDcmdWSVFGeFRV
UkFCQkJCQUFBRUVFRUFBCkFRUzhDcENBZUJWa2ZRUVFRQUFCQkJCQUFBRUVFSEF0UUFMaW1vcUND
Q0NBQUFJSUlJQUFBZ2dnNEZXQUJNU3JJT3NqZ0FBQ0NDQ0EKQUFJSUlJQ0Fhd0VTRU5kVUZFUUFB
UVFRUUFBQkJCQkFBQUd2QWlRZ1hnVlpId0VFRUVBQUFRUVFRQUFCQkZ3TGtJQzRwcUlnQWdnZwpn
QUFDQ0NDQUFBSUllQlVnQWZFcXlQb0lJSUFBQWdnZ2dBQUNDQ0RnV29BRXhEVVZCUkZBQUFFRUVF
QUFBUVFRUU1DckFBbUlWMEhXClJ3QUJCQkJBQUFFRUVFQUFBZGNDSkNDdXFTaUlBQUlJSUlBQUFn
Z2dnQUFDWGdWSVFMd0tzajRDQ0NDQUFBSUlJSUFBQWdpNEZpQUIKY1UxRlFRUVFRQUFCQkJCQUFB
RUVFUEFxUUFMaVZaRDFFVUFBQVFRUVFBQUJCQkJBd0xVQUNZaHJLZ29pZ0FBQ0NDQ0FBQUlJSUlD
QQpWd0VTRUsrQ3JJOEFBZ2dnZ0FBQ0NDQ0FBQUt1QlVoQVhGTlJFQUVFRUVBQUFRUVFRQUFCQkx3
S2tJQjRGV1I5QkJCQUFBRUVFRUFBCkFRUVFjQzFBQXVLYWlvSUlJSUFBQWdnZ2dBQUNDQ0RnVllB
RXhLc2c2eU9BQUFJSUlJQUFBZ2dnZ0lCckFSSVExMVFVUkFBQkJCQkEKQUFFRUVFQUFBYThDSkNC
ZUJWa2ZBUVFRUUFBQkJCQkFBQUVFWEF1UWdMaW1vaUFDQ0NDQUFBSUlJSUFBQWdoNEZTQUI4U3JJ
K2dnZwpnQUFDQ0NDQUFBSUlJT0JhZ0FURU5SVUZFVUFBQVFRUVFBQUJCQkJBd0tzQUNZaFhRZFpI
QUFFRUVFQUFBUVFRUUFBQjF3SWtJSzZwCktJZ0FBZ2dnZ0FBQ0NDQ0FBQUplQlVoQXZBcXlQZ0lJ
SUlBQUFnZ2dnQUFDQ0xnV0lBRnhUVVZCQkJCQUFBRUVFRUFBQVFRUThDcEEKQXVKVmtQVVJRQUFC
QkJCQUFBRUVFRURBdFFBSmlHc3FDaUtBQUFJSUlJQUFBZ2dnZ0lCWEFSSVFyNEtzandBQ0NDQ0FB
QUlJSUlBQQpBcTRGU0VCY1UxRVFBUVFRUUFBQkJCQkFBQUVFdkFxUWdIZ1ZaSDBFRUVBQUFRUVFR
QUFCQkJCd0xVQUM0cHFLZ2dnZ2dBQUNDQ0NBCkFBSUlJT0JWZ0FURXF5RHJJNEFBQWdnZ2dBQUND
Q0NBZ0dzQkVoRFhWQlJFQUFFRUVFQUFBUVFRUUFBQnJ3SWtJRjRGV1I4QkJCQkEKQUFFRUVFQUFB
UVJjQzVDQXVLYWlJQUlJSUlBQUFnZ2dnQUFDQ0hnVklBSHhLc2o2Q0NDQUFBSUlJSUFBQWdnZzRG
cUFCTVExRlFVUgpRQUFCQkJCQUFBRUVFRURBcXdBSmlGZEIxa2NBQVFRUVFBQUJCQkJBQUFIWEFp
UWdycWtvaUFBQ0NDQ0FBQUlJSUlBQUFsNEZTRUM4CkNySStBZ2dnZ0FBQ0NDQ0FBQUlJdUJZZ0FY
Rk5SVUVFRUVBQUFRUVFRQUFCQkJEd0trQUM0bFdROVJGQUFBRUVFRUFBQVFRUVFNQzEKQUFtSWF5
b0tJb0FBQWdnZ2dBQUNDQ0NBZ0ZjQkVoQ3ZncXlQQUFJSUlJQUFBZ2dnZ0FBQ3JnVklRRnhUVVJB
QkJCQkFBQUVFRUVBQQpBUVM4Q3BDQWVCVmtmUVFRUUFBQkJCQkFBQUVFRUhBdFFBTGltb3FDQ0ND
QUFBSUlJSUFBQWdqOC8vYnIwQVlBQUFCaDJQOWY4d0xKCmJEMll1aEdvQWdLa0N2b1RJRUNBQUFF
Q0JBZ1FJSEFMQ0pDYnlwQUFBUUlFQ0JBZ1FJQUFnU29nUUtxZ1B3RUNCQWdRSUVDQUFBRUMKdDRB
QXVha01DUkFnUUlBQUFRSUVDQkNvQWdLa0N2b1RJRUNBQUFFQ0JBZ1FJSEFMQ0pDYnlwQUFBUUlF
Q0JBZ1FJQUFnU29nUUtxZwpQd0VDQkFnUUlFQ0FBQUVDdDRBQXVha01DUkFnUUlBQUFRSUVDQkNv
QWdLa0N2b1RJRUNBQUFFQ0JBZ1FJSEFMQ0pDYnlwQUFBUUlFCkNCQWdRSUFBZ1NvZ1FLcWdQd0VD
QkFnUUlFQ0FBQUVDdDRBQXVha01DUkFnUUlBQUFRSUVDQkNvQWdLa0N2b1RJRUNBQUFFQ0JBZ1EK
SUhBTENKQ2J5cEFBQVFJRUNCQWdRSUFBZ1NvZ1FLcWdQd0VDQkFnUUlFQ0FBQUVDdDRBQXVha01D
UkFnUUlBQUFRSUVDQkNvQWdLawpDdm9USUVDQUFBRUNCQWdRSUhBTENKQ2J5cEFBQVFJRUNCQWdR
SUFBZ1NvZ1FLcWdQd0VDQkFnUUlFQ0FBQUVDdDRBQXVha01DUkFnClFJQUFBUUlFQ0JDb0FnS2tD
dm9USUVDQUFBRUNCQWdRSUhBTENKQ2J5cEFBQVFJRUNCQWdRSUFBZ1NvZ1FLcWdQd0VDQkFnUUlF
Q0EKQUFFQ3Q0QUF1YWtNQ1JBZ1FJQUFBUUlFQ0JDb0FnS2tDdm9USUVDQUFBRUNCQWdRSUhBTENK
Q2J5cEFBQVFJRUNCQWdRSUFBZ1NvZwpRS3FnUHdFQ0JBZ1FJRUNBQUFFQ3Q0QUF1YWtNQ1JBZ1FJ
QUFBUUlFQ0JDb0FnS2tDdm9USUVDQUFBRUNCQWdRSUhBTENKQ2J5cEFBCkFRSUVDQkFnUUlBQWdT
b2dRS3FnUHdFQ0JBZ1FJRUNBQUFFQ3Q0QUF1YWtNQ1JBZ1FJQUFBUUlFQ0JDb0FnS2tDdm9USUVD
QUFBRUMKQkFnUUlIQUxDSkNieXBBQUFRSUVDQkFnUUlBQWdTb2dRS3FnUHdFQ0JBZ1FJRUNBQUFF
Q3Q0QUF1YWtNQ1JBZ1FJQUFBUUlFQ0JDbwpBZ0trQ3ZvVElFQ0FBQUVDQkFnUUlIQUxDSkNieXBB
QUFRSUVDQkFnUUlBQWdTb2dRS3FnUHdFQ0JBZ1FJRUNBQUFFQ3Q0QUF1YWtNCkNSQWdRSUFBQVFJ
RUNCQ29BZ0trQ3ZvVElFQ0FBQUVDQkFnUUlIQUxDSkNieXBBQUFRSUVDQkFnUUlBQWdTb2dRS3Fn
UHdFQ0JBZ1EKSUVDQUFBRUN0NEFBdWFrTUNSQWdRSUFBQVFJRUNCQ29BZ0trQ3ZvVElFQ0FBQUVD
QkFnUUlIQUxDSkNieXBBQUFRSUVDQkFnUUlBQQpnU29nUUtxZ1B3RUNCQWdRSUVDQUFBRUN0NEFB
dWFrTUNSQWdRSUFBQVFJRUNCQ29BZ0trQ3ZvVElFQ0FBQUVDQkFnUUlIQUxDSkNiCnlwQUFBUUlF
Q0JBZ1FJQUFnU29nUUtxZ1B3RUNCQWdRSUVDQUFBRUN0NEFBdWFrTUNSQWdRSUFBQVFJRUNCQ29B
Z0trQ3ZvVElFQ0EKQUFFQ0JBZ1FJSEFMQ0pDYnlwQUFBUUlFQ0JBZ1FJQUFnU29nUUtxZ1B3RUNC
QWdRSUVDQUFBRUN0NEFBdWFrTUNSQWdRSUFBQVFJRQpDQkNvQWdLa0N2b1RJRUNBQUFFQ0JBZ1FJ
SEFMQ0pDYnlwQUFBUUlFQ0JBZ1FJQUFnU29nUUtxZ1B3RUNCQWdRSUVDQUFBRUN0NEFBCnVha01D
UkFnUUlBQUFRSUVDQkNvQWdPaW1SSUk3dDM5dVFBQUFBQkpSVTVFcmtKZ2dnPT0KCkluZGV4OiBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2ZpbHRlcnMvZmlsdGVyLXdpZHRoLXVwZGF0ZS1l
eHBlY3RlZC5wbmcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmlsZSBtYXJrZWQgYXMgYSBi
aW5hcnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKUHJv
cGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9maWx0ZXJzL2Zp
bHRlci13aWR0aC11cGRhdGUtZXhwZWN0ZWQucG5nCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjptaW1l
LXR5cGUKICAgKyBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCgppVkJPUncwS0dnb0FBQUFOU1Vo
RVVnQUFBeUFBQUFKWUNBWUFBQUNhZG9Kd0FBQURPMmxEUTFCSlEwTWdVSEp2Wm1sc1pRQUFlQUdG
CmxFdG8xRkFVaHYrTUtZSzBncWkxRnBUZ1FvdTBKVDdRaWxEYmFiWFdrWEVZKzlBaXlEUnpaeHBO
TXpHWkdSK0lTRUhjK1ZxS0d4K0kKaXlyaVFycFFjS1VMa1VMcmExRUVjYVVpaUVJM1VzYi9KdTFN
S2xZdkpQbHl6bi9QNjRZQVZROVRqbU5GTkdEWXpydkpycWgyNlBDQQp0bmdDVmFoQk5iaFNodWUw
SnhMN2ZhWldQdWV2NmJkUXBHV3lTY2FLOVIyWStMUnQ5ZjFMajJMdjY1NzIrcDc1K25sdk5TNFRB
b3BHCjY0cHN3RnNsRHdhOFYvTEp2Sk9uNW9oa1l5aVZKanZrUnJjbjJVRytRVjZhRGZGZ2lOUENN
NENxTm1weWh1TXlUbVFGdWFWb1pHWE0KVWJKdXAwMmJQQ1h0YWM4WXBvYjlSbjdJV2RER2xZOEJy
V3VBUlM4cnRnRVBHTDBMckZwZnNUWFVBU3Y3Z2JFdEZkdlBwRDhmcFhiYwp5MnpaN0lkVHFxT3M2
VU9wOUhNOXNQZ2FNSE8xVlBwMXExU2F1YzBjck9PWlpSVGNvcTlsWWNvcklLZzMyTTM0eVRsYWlJ
T2VmRlVMCmNKTno3RjhDeEM0QTF6OENHeDRBeXg4RGlScWdad2NpNTlsdWNPWEZLYzRGNk1nNXAx
MHpPNVRYTnV2NmRxMmRSeXUwYnR0b2J0UlMKbHFYNUxrOXpoU2Zjb2tnM1k5Z3FjTTcrV3NaN3Ri
QjdEL0xKL2lMbmhMZDdscFdSZEtxVHMwUXoyL3FTRnAyN3lZM2tleGx6VHplNQpnZGRVeHQzVEc3
Q3kwY3gzOXdRYzZiT3RPTTlGYWlKMTltRDhBSm54RmRYSlIrVThKSTk0eFlNeXBtOC9sdHFYSU5m
VG5qeWVpMGxOCkxmZTJuUm5xNFJsSlZxd3pReDN4V1g3dEZwSXk3enBxN2ppVy84Mnp0c2h6SElZ
RkFSTTI3elkwSk5HRktKcmd3RVVPR1hwTUtreGEKcFYvUWFzTEQ4YjhxTFNUS3V5d3F1dkNaZXo3
N2UwNmd3TjB5ZmgraWNZdzBsaU5vK2p2OW0vNUd2Nm5mMGI5ZXFTODBWRHdqN2xIVApHTC84blhG
bFpsbU5qQnZVS09QTG1vTDRCcXR0cDlkQ2x0WmhYa0ZQWGxuZkZLNHVZMStwTDNzMG1VTmNqRStI
dWhTaFRFMFlaRHpaCnRleStTTGI0SnZ4OGM5a1dtaDYxTDg0K3FhdmtlcU9PSFptc2ZuRTJYQTFy
LzdPcllOS3lxL0RralpBdVBHdWhybFUzcWQxcWk3b0QKbXJwTGJWTmIxVTYrN1ZUM2wzZjBjbFlt
VHJKdWw5V24ySU9OMC9SV1Ryb3lXd1QvRm40eC9DOTFDVnU0cHFISmYyakN6V1ZNUy9pTwo0UFlm
ZDBqNUwvd05BWVVWRFh4TE96c0FBQ0FBU1VSQlZIZ0I3ZDBMMUczZFB4ZndmUzd2WDFFSmxlUVNK
WFNua2lLcEpCVnBDTjJNCjBtVTBJcFV1dXFKR291Z2loR0YwcFZDRVVkRzlVQkdLeUNYUmhhNmtL
OTM0dis4NXUvbWR6L3F0TS9kNjlyT2Y1em5uelBkLzl2bC8KMW43M21ldTIxMXo3cy9ZNTcveXV1
ZGJlZC9adDJEM21jTlZMcjVxZmFrNHR1MjQzTHIzMnpuV3ZlRWFYYjhUdjNIbjhOM0xxdFZjdAp1
MnIrTTZwbHR3Z1FJRUNBQUFFQ0JKNGpnVHV0VWI5cERsLy83cll2MlU1bkM5dDUyK25kME9iZTcy
NjlDOWZ2NUhPNHhwMUR0SU4zCnVBMFYyK21zdkoyM25UN1lvQWtDQkFnUUlFQ0FBQUVDRXdSdUZV
QzJJV0tjSHNlem4rdDBDeHJiZ0xFdUc5N1FzWG5ENHVPalE0ZzUKdnNJek92Y3g4dGF4c0xDZDF3
UEtzdTFMeTRaZWxsUExubEV4dTBXQUFBRUNCQWdRSVBDY0NOd29nR3pEd1RoZDQxWEdaWC9ub2hW
OApNRy9vYUZubkx3RmluYjRCNmpiTTNPQWx6L1FxQjcwYTErenBHaHlPaEl4MVdkdEdqZC9aUDBw
bzZ6eEI1QnBsaXdrUUlFQ0FBQUVDCkJHWUtYQnRBeG5Cd2JMem1iVVBIT2ovQkk3MGdTd0FaQTBU
TnF6YzRMcXQ1cDhydDYwK3QreXd0cXpCdzAzM2FocFR4OWJXc3p3djEKRWpBdWxVc1kyYzdQUHRT
ODdmaE45ODk2QkFnUUlFQ0FBQUVDQkc0cWNES0FqQTM4R3I5VXR0Nk9TL055MGRVUU9OYnhiUmha
MXFtZAo3UUhrMFVuN21uMVExcllPWnA3eHhOajRQL28yZW40N1JLblg5SElUT3NaQU1vNW4yMW0v
ZWtVT3RyRXNxL3ByV1UwckNSQWdRSUFBCkFRSUVDRHd0Z1NzRHlOalFyL0d4N09OM0wzbzJNdDZm
eTgza0NSS1g1bVdkemZKNkUzMWJOWkhla21XOW1yVXREOWJmTGp5ajZlc2EKK2oxQXRJQlJ3N2gr
eHRlQWtiSHErVmpHankzdjg3TGV3eVdNMUdzMlplcXI3VlhkU2dJRUNCQWdRSUFBQVFKUFErRCtz
WTJNRGZ3YQpUN21PcDljamo0Y1g4NWFwZzlCUjZ6NU1hN2NOOWZwZWJ1NFJxWFg3cFZwdG05c2gy
MzkxR0NwUWpPKzFCNEhsN1Zjb3FIbnB6Y2g0CmZ3YXZEWGZiSTF3MWIxMmVkWWYxKytvRGE5Ykxj
VWlaWVJ6dk0veEJnQUFCQWdRSUVDQkE0Q2tJSEEwZ3RkMEtCaW5YOGVXU3E1cVgKY1BCdy8vQWlZ
Q1NVTEQwZDY3eE1iMSt6VEtlZXZ0MzBlclQxYWhqSGExN0sxSFV3WExTVkQyYWR4Y1NsdDNIOGpW
UVl5SHZxNDB2UApSVTJQZ1NMTE0vM3d6c08rYm9KSW0zUHhXSUxIM1RzWDRXUTFhdFhtTmVXZGJX
UjhySGRkMXdnQkFnUUlFQ0JBZ0FDQnB5QndLWUJVClkzUXMxL0VsT0R4OHVBU09tbDRDU0E4ZFN3
aEp6MGRlMTljZEEwaVdwK2VrSGt2d1dPdG84MnU0RkRocVFTdHIvV0hXV1kyZWF1UW4KTnRSUTQ3
Vit5dld4aEk0K2J4bS9lL2NpZU1TbnoyOEJJOEZqM002ZGgyMnFyWjkxVTlWVklhUzJVZnVpSkVD
QUFBRUNCQWdRSVBDawpBZ2YzZ0ZTamZsc21ST1RLbmpWNHRKQlFQUndWT2xKVzJFaTVCcEFqNFNU
Qm9sNmZOMUJocEk5dkFrbC9nNC9hNDJjZlBQcjdHZjVJCkVGaUhSOWxyN1lXbzVSVTZzbTRQRDB1
b3lIZ2VQV1FrVkdSK3lqd1NSaEpBV2xraFpGMCt2TDRIa1J6aUJKSmwrOGZLdnRBZkJBZ1EKSUVD
QUFBRUNCSjVBNEZJUFNHM3JJSVNjQ0I4OWVDUjg1SkZ5Q1NJOVlDeEJvK1pubTFtdmwrbEZXUjZw
czQ5dndrZnRRKzFUenRabgp5THJQdzVEZzBJZk4yMWxEeHhKT0ttUmszUW9pUFZ3c1FhTUhqaFlv
RWk3R29OR20raU9PZVdaWmhzek5jZWpUcmU0RXhtd3Y2MlJiClZmYVYvVUdBQUFFQ0JBZ1FJRURn
S1Fxc0FTU056Z3hWMXZqQi9SdXQ0VjloWWkyWDNvN3E5WGp3OE1HamRWb2o5OEdEQi8wZWtMNjgK
QWtvclU4OTIyMzNlRWk3NmZyVDIrYmcvZlFlSFAwNHRHMVo3NWtZcllCemJzYjZzSFlwYXB3ZU9G
Z3JXTXVPNXA2TmRSbFdCbzVkTApiOGU5ZS9jdVlrZkN5UDd1N3Q3ZGU3djlnMlo5OXlLRTlMSVpK
NFJrcUJCUzN1R3Z1ak12NDFVZTIxL3pDQkFnUUlBQUFRSUVDTnhHCllBMGc0NHZTNEZ5ZkNSM3By
V2p6Y3RaOERSNUxUOGVEZlFzY0NSb0pIa3ZaNXkzQnBPWm5HelcvYlgzZFRzWjdYVlcyZXRJeGtQ
a1oKc213N3JQT1dEb1R0OG1kK2VubEwxZEFmOTdmbUpYQ0VJTlA5bVFpeUJKRUtIbGtuUFJmMzdy
VFEwY0xHMnJPUnNXVitIRE0vNjNUVApmQ25aUmZaWXErMnZhOGNucjFuWSs3TGFsM1ZGSXdRSUVD
QkFnQUFCQWdTZVVPQWdnS3dOKzdiUkhncUdtOGNUTGpKdkRTQkxvRWlvClNNaW9vTkhIYTk1UzVq
VVZQbnE1OUlTa1FkekRUVzhhdDZtMi9mNVlRa2Z0VCthdHd4QTZhdm02N0V4R0RocjJCMi90NHMz
Vjhnb2MKYTdrRWpoNDhsc3V0N2oxczRTTmhJMldiZDI5L3I0ZU45dWRGRDFPelM4Q0lZWHBEK2pD
RWtHd3IzNXlWQU5NOXN3dEw4TW02bVZmNwowMS9yRHdJRUNCQWdRSUFBQVFKUElOQUR5TmlRejNp
ZnpzbncrcDJQQkpFMmZtWDRhRUhqcGYxTC9YS3JIa2d5L2JCTko1Z2toRlFRClNROUp1eVFyWWFa
dmEra2xTWDJaVGlONXJUOGRBQlZFMGlJK01tVDljeHpTNkQ4MjFQemU0RjlDUUlXUGhJdU0zMzF3
MGJ2UmUwSFMKczVGTHJoNjJzb1dMOUhJa2lHVDgvdjUrRHhZSmVGbW5VdzNCb3gyQzNoUFN3MHdD
eW5LSlZ2YnJ6dDNEcitiTnZCd0xRU1FTQmdJRQpDQkFnUUlBQWdTY1JXSHRBcXJHZmpmVVFNSVNC
TlBTdkNoODlhRlRnV01xRGVTMkUxUFRhVTVJZWtQYklkRzA3ZFdaZXI3dU45LzFKCkNHbVA3ZENY
WmVieGR2eDI5V2R2ZW5sTHh4cjBQWVNNNFNPaG96MTYrRWdJYVk4RWpNenJQUjVMNEVqd3VILzMv
a1g0MkxYdzBZd3oKM1lQRjh1T091ZWVtRDNVSlZnc2hDUnNaK2xmeEx0YmRkOW1ITE12MHNYM05N
Z01CQWdRSUVDQkFnQUNCMndpc0FTUXZTa096Tno2WAozbzgrcnpWYUh6NjQ2SjNvSWFUSGhJdWVq
T3JkU01Eb3p3ZExtZW5XSTFMekV6UU9Ra2oxaUN4QkpHZnBldzlJNmg4dSsrcjdja1VJCjZmdDJK
SnhrL3JNK1ZFL0hkaitQaFk5K3czbENTQzY1YXBkYXJjR2planh5eWRVU1BuSThlczlId3NlZEZq
Nlc0N21HdUhaY2MvTjYKMk83Y1QyM3RrUnZhMi9aekRPN2N1NWlYMXgzckJkbnVyMmtDQkFnUUlF
Q0FBQUVDdHhXNDN4djVtMWVORGRjKzNscXNGUkpTanBkVwpWY2g0cVlXUEZ4KzgySU5ITHl1VURF
R2toNUM2TEdzcCszWVRhdHAyMDFEdVFTUmphVHkzUjRhRGZSeDZQUTdtYjk3RHN6eDUwSnV3CmRF
cGtmMnQrandFdEZPVFJMNzFLV2VFajkzdmtVcXNLSUxuY3F2VjByT0VqWWU3dXhiTUxOc2R4V0hz
OEhyU3R0OTZQL3N3UEV5NlgKWGZWZWt2YVMyS2IrY2VqejJuNFpDQkFnUUlBQUFRSUVDRHl1d05F
ZWtMWGhuMEN3QklQTUczdEFXaE4zbDlDUmhtK0ZqeGYzTFlBawppRHg4c1llUmxBa2R2Vng2Ui9y
NmJWNkZtTDdOOUlRc3oybzByK1VRUkxadnN2WnpPLzlabjk0MjdHdC9NejhocEQ5cnZKVzk5eU05
CklNdXpBa2kvNUtxRmtaVDM3OTNmdlhEM2hkMkR1eGRmZzF3Miszc3RUVHk0cUtGdlB6MGVyZmNq
eHkrUDlJQmt1MWsveDNyc0JhbHQKVkRDcS9WUVNJRUNBQUFFQ0JBZ1FlRnlCOVNiMHRUY2g5d2Uw
ZXdNeVhZOEtCOVZiMGNQRDBvT3g5b0NrcDZPRmpGYytmT1VhUHRJVApVbUdrQjVFMlhRR2s5NGEw
OE5LMzNScSttWjg2MHloZTY2NTlhT1d4b1JySXg1WTl5L01TQkk0TjIrQ1I2Vnh5bFRLaG8vZUN0
TENRCjhSNDZjczlIRzMvaFhnc2VzYnpYOUZxUXErTldQajFVcEpjajRhYjFkT1NtOWV4RDcxMXBB
U1RmZ2xXWFlwVjkxbTFWOTh1MU1pOUQKbjlmSC9FR0FBQUVDQkFnUUlFRGc4UVFPZWtDeWlkNEFU
Y04vK2VhcjNwaHQwejBvdEhDUThKSHhOSGpITURHR2pZU09WNzdVZ3NoUQpiaS9QNnErdnk3SFNl
TTZsUTNta0FaMzY2N0UwZnFzUlBMN05ySE9PdzdFQVVvMzdIaEo2UExnSURMM1hJekdrTHIxcWdh
TXV2MG9JCjZlR2pPYWJzdlZYM20wck1saU5iZGFYTXR2djI4cHNoN1psam1VQVM4LzQxdkhYL1Rm
MW9ZZHRPdmY0Y25lMHpBUUlFQ0JBZ1FJREEKc3lkd0VFQjZ3M1U1T2IrR2dOWUlIVU5CRHg4SkR2
VnM0YUY2UVNxRUpIeTg4c0hGczRlUU5sN0xlaEJaYmxMdjIwaVFhZHZLZHZzagpRU1FocEI2dnhn
R2toNFc2OXlNOUgrTjlIKzBtOHdTUUJMbGNlaFc3YnZaUyt6T1hYV1ZvUjdjSGovWm5iU3ZXYTZo
WkxyM0tzWTc1CkdFTGFTL3FRWlJXT0x1YjRrd0FCQWdRSUVDQkFnTURqQzZ3QnBJZVB0cDBlUEZx
amN5MlhJTkREUVVMQ0VoVFNrSzNnMGIveGFybloKdklKR0R5RHRjcXdLSXhWRStxVll1VGRrdUNj
a2plaHNONzhSa3A2WGZpYS9lbUNXcy9KNWk3V1A5WGI3RGRNMWNVWmxMbmNhaDJyZwo5OTZQM0tP
Um04TnpiMFlMSHluN2IzMHNsMTZ0bDEvbG5vLzk1dEtySExmV0E1S2hiNnZkYUo1THVQcWxXK24x
YUpkZTljY1NadnF4CnpQSE1EeEcyUnc4dzJVWTlFajdhSSs2MWorTitHeWRBZ0FBQkFnUUlFQ0J3
VzRIK0xWalZzRisvQWFrMStsc2I5RkdEdERWQSt5VlMKU3dCWmV5Nlczb3NLSWdrWjYyVlg3WWIw
Q2g5akdPbnI1TnV5cWhkazJVYmZabnBDY2lZLzlhWE1EeUZtUjFwN3ZmYXgzbUNmWHhObgpXS1po
UHc2OWdkL2Y2a1VBU1NESXZKVDE0NExWQTNML1lldjlhTThIOXk1NlA3cFNNNnZoemd0dEd5KzFa
MTF5bGVDeEJKZ0hkeDc5Ck1HVENUQThocmRlcFgzTFh0bEdoYml5enIrVXZpSlN5a2dBQkFnUUlF
Q0JBNEhFRTFoNlFlbkUxTkt0UjI4TkFHcWp0VWIwZmRlYTgKMzhleENTSFZ3MUdYWUtYODdnZmZm
WEJKMW9zdnRhQ3lmR05XMXEvN1FSSTYxbnRCbGpwclA3Si90Vy9ydmlhY25PR1FCdjA0VktNKwpa
VDE2cjBYaVJ5N0Jhcjkrdm9hUCtzYXJoeGVYWGVWWWRLTzY3S3B0dUcrbi9hWkhEeTY1WnlRL1Z0
aktmRU5XOVRhTnh6SmhZKzExCkdrTklHNjk5Ry9mWE9BRUNCQWdRSUVDQUFJSEhGVmdEU0cvY0wr
M2lqUGRubXJhNUJHcTVES28zV3BkN05DbzBWTzlIRHg3NTFxdDYKVm05SUxzT3FFRExjbUo3THR1
cCtrTnBXQWtoNlF0S2c3ZzNycFRHODlvUnMzbVhXTzhkaEcwRHlIbnJ3V0M2OVNxTy92cWtxd2FQ
MwpnaXozZi9RYnozUHBWZXZKNklHdC9lWkhPZlRnc2J5MlhsTmxBc2dZUk5aajJTNi95dXZYNDV6
eDVmaFhUc3EwSUhLT256VDdUSUFBCkFRSUVDQkI0OWdUV0FKSmRxOUJSdTFrTjBaVDlESG5LNVRL
c3VpU3JMc2NhZzBpRmk5NExVamVrcDl6Y0V6SytKdHZKdGhORzBpQmUKQTBnMWlKZXk5cTN2YjV0
M2pzTTJnUFRna0FoU1BTQUpFZTJTcWF5WDROQXZueHArY0RCR3VmRzhCNGZjOC9IU0VtRDZLeTVl
bTlmRgp0OHArdzNxTTh5T0ZDWkVwMDN0U3gzWUptZGxtMjB3Zit2WVRQbXJHT1dMYlp3SUVDQkFn
UUlBQWdXZEs0Q0NBMUo2TlFXUU5JYTFoCldxR2poNUNsdDZLSGh0YXdIWU5JOVd6MFhwR3hKNlJD
U0w0VksvTnpMOGh5ODNwL2ZSckllU1RrYkM3QnluNXNoOTVZM3M0OGcrbGoKRGZycXZjaXlQUHFs
VnkyRXJEMFkrM1lKMVhLNVczN3ZvM3NrS0xUd2tXKzc2amVZNXo2UGRybFZkMisyQ1IwVlBIckFh
NkdqbDh2dgpoYXpPdzlmdUptdFU4TWk0Z1FBQkFnUUlFQ0JBZ01EVEZPZ0JaR3pjMXhud2Z0bFRh
L1QzQUhMUkpMMjRUQ2RCSkQwVlMxam93U0VOCjQvYXNIbzJNMXczcENSbnJiNEswNEZIM2hsd0tJ
TmxHK3hhc3ZMWTNqSE4yUG8vc3czSjJmdnZHcy93Y2h5c0RTTDRCYStrRldRTkYKTHAzS293V1E3
bEtYVEZVZ3U5YzZMUExqZ2k4TllhV0ZrQVNQOFhpTTRhWENTUGVOYlQzcWVHZmI3VWNJUjk4Y2gr
eWJnUUFCQWdRSQpFQ0JBZ01DVENEenFBVW1EODhGRmc3NEhrcHdKVCtPMEdxaEw0N1I2UWJKT0gx
OTZRbm9RU1UvSUVFVDZWKzJtaHlQM2UrVEc4NlUzCkpHV0NTTXJlU0c1Znlkc2J5QWtoMVF1U0hw
RFV2WHdUVmc4aWFSZ1B3OWhBSG1ZLzg2UGJBSExRK3pGOEJlL1krNUZMcWZvdm5SKzcKNTZPRmoz
c3Z0SjZQV09mcmplKzI1M0J6ZngyYi92cTR0aDZQUzcwZmlSdkw4ZTY5SUxIT1p5QmxDemx0c1lF
QUFRSUVDQkFnUUlEQQpFd3VzQWFRM05JZk4xWFExL05QWTcrUDl2SGhyd05hbFVybGNhdHNqa2lE
U25uVUd2bjd6STlQcEVlblB1Z1NyemF2MTFyUDA2ZjFvCmplR0hENFpla05ZUXptTWN0dFBqc21k
NS9GSUFhUzM5TllROHZMajhLbCtqMisvOWFEMGZDUi9wMGVnQ1N3akxOdktvcjlkZGc4ZWQKRnVZ
Vy94N20ydVZXdlZ5T1V3OGU3ZGhkYUxZL0Y5YzZ6bkhMZU52ME9tUTZkUmtJRUNCQWdBQUJBZ1FJ
UEtsQS94MlFjU09YR3FMTAp3ajUvYWJiVzJmTTFoQ3hoWkczNHBpZGplRmJBT0ZadWUwRjZtR212
VFgzWi9saHZla1BHSVNIbEhJZExQMFJZMzM2VlpuNXVRRysvCjI1R3k5M29rT05SbFYwc0E2K3Zr
N3BEbG5vKzYwWHcwcnpEWHcwZHVPRitPVVM5ekUzcENYajBTT0pZaDNza2EzWDBaUDFoV0Uwb0MK
QkFnUUlFQ0FBQUVDanlHdzlvQmM5ZG8xQUxUR2FIK2tISjZYd2tocjJCNDBoSE0yZmdrakNTQVpY
eThWcXQ2UDhVYjAzWElQU0JyTQp1VnhvcVRmN2wvRnhlRzRDU0x2M0kwUHYwMGdBeVc5L3RGOHVU
L0RJL1IrNVpDcjNaRFNTaTNYYW45VTdFdE4rbzNtTVk3Mzgxa2VjCis3RkpnRmtzZStnWWpsM1pq
bVhmRVg4UUlFQ0FBQUVDQkFnUW1DUndaUURwamRLbHdWOE4vNXJYZzBndWtjcFo5Q1VnMUwwaGEy
TjMKT2N2ZXc4ZHdTVkNGa0I1RUVrQnl6MEo3dEtielJkbldyWVp6MzNidVN4Z2F6YVBEY3hOQVd1
Z1lMOEhLKzAvQXlMT0hqN3pwRmo0eQpKS1JrZnZtbDkyUHNlZXAyc2M4emp3U1FCTGs4bW1PbTQx
YlRtWmRoTFB1NEs2NjZpejhJRUNCQWdBQUJBZ1NlcnNCQkFLbEc2RmhGCkdxb1oxa2JyMHBETnV2
MlJJTEkwY0h1anR4cStyZkhiejhKbk9vM2dhZ3kzOFI1S2xsNlJHdS9CWkFrcTYvclZjQjdxUE5p
M1Z2YzUKRHBjdXdhb0FzdlJ2cEFlaysyN2VYNy8wcXZXTWxGbDNHbTJiVnplLzBMNElJWXRoUDBh
YjRMRWN3WDVzNDFqSGVqUTk5cGtZbHhzbgpRSUFBQVFJRUNCQWdjQnVCZ3dDU0YxYXdHRGN5Tmt4
N28zWG9rYWlHYloxWlQ5RElOdnI4bEV2dzZHZnBLM1RrNjNhSHNKSHhyRi9yCnJBM3JuSzFQWFdr
NEw5K0dkYkJmYmRrNUR1bkZHSWNFa255VmJpOWJHT252ZFFrTGphL0hrdlFRSlpoMG8vWXI2UDBy
aTFNdWwxNzEKSHhZOFloKzc5ZGdrakF5LytiRTlydU0rMVhIZTdPcTRpbkVDQkFnUUlFQ0FBQUVD
dHhhNENDQnBENmN0WCtXeW1mSHNkdzhDUTROLwpiYURtcFFrSnc3TTNlTnNHZTVCb2pkNGVTc2Jw
bkxYUC9LVTNaQ3o3YTViUTBsK1g3UTZQWmRkNk1lN2ZPUDlaSDA5UHhqZ2trUFR3CnNmd09TSHU3
NjdISXNvU01MRS9aN3cySlhXNHNYOHI0eEtwTSszU0Z0K0c0cE01K25Ib0ZGM3RReCsxaTZtSjVq
ZmV5ZHJYS2c0VW0KQ0JBZ1FJQUFBUUlFQ054TzRGSVBTTDI4R3ZkVmp2TnpWcjBQclZGYURkZ2VF
b2JHYm9KRUJZZXhZZHpuNWF4OGhZeUVrUnF2c3VhMQpCdmE2M1dNOUlFTkR1dmJ2SE1xRWlYSG9B
U1E5SUhtMHIrR3RHODdiNU1XOUlXMzkxV2l4R1MrSjY2R3RySnBKdHgrT3hXclk1bVdiCkdmcnJN
ejBNL1ZpMzVkdGpQcXhpbEFBQkFnUUlFQ0JBZ01BVENmUUFrZ2JxcVdFTkdVT0RkWjEzRVJINnkz
dEROOVBMNVVOMTJWUTEKZ0N1SXBPeXZYMTdiMTJ2YlhwZW51WjJ6KysweFhvNjBiUmhmdDkrbjN0
T3JjbG1DeGpqMEc5RFQrNUZuQ3lMdGJWK0VrT1NGNVhkQgp1c085UmJpczJyZGtIYlVjajBFYno3
QzhjZzJNZldibXQyM1ZzK1lkSy9QNjdYNGZXODg4QWdRSUVDQkFnQUFCQXFjRXJ1d0J1ZXBGClZ6
Vldld00zamRrOFdwbGhEU0taVjZGa1dkN0RSWTNuckg1NzFtdDdIWm5hL0FwNmJiZjJMZHM4eStI
VWJyZncwZS9UeUh1UFdYdjIKSG83NExMN2RycXpqTk5vdUpyVnVsVnVuUG44NVR0dGxwZ2tRSUVD
QUFBRUNCQWpNRWxnRFNCcWtmY2pKK1dvZ0g1Nm9QOWlIMXV3OQplQndzekNiU1FCNmZZNWhJZzdt
V0hXeWx6YS9HZEpiWGVyWE8wcml1dXRvYU5YcGU1UW5YZEk3a2ZmWDNYaGIxL2xPVzIyZ1QyL0ht
CjhyYk9kdWpiSExhelhiNU9qL3UyaktmTzdYMHI2L3BHQ0JBZ1FJQUFBUUlFQ054Q1lBMGdCNjlK
d3pNL2ZQZGdtVHMyU2c5V2ZEVFIKRzhaakE3a2F5a3RqT0EzZzdWQ3ZxZmw5dW9KS2xkbE9QWlp0
cmVzZjJXWXRPNnN5dmdOUGQ2aEFrUjhockNBUWg0MUIzbWZaOXRmRgphM3hlOFpwTFB1TXh6ckVm
cHkrdGJBWUJBZ1FJRUNCQWdBQ0J4eE00SGtBZWIxdFh2cW9helFjTjR6U1M4MGpRMkRhWUw1WTht
bDluCis5dDY0NURYUHpmREVFTFdYcUE0akRheHluMGc0N3pGSlBNTUJBZ1FJRUNBQUFFQ0JKNTFn
WnpydnQzZ3pQanR2SjdsdFIzTFovbm8KMkRjQ0JBZ1FJRUNBd0hNcGNES0FQRmM5RE0vbDRYdjZi
OG94Zi9xbXRraUFBQUVDQkFnUUlQQkk0R1FBZWJSYUczTzIvSURqdVpwdwpiSitydytuTkVDQkFn
QUFCQWdTZVpZSDc2eG52MWdnOWVtL0JjUC9GcFcrbHFuczFyaXFQZll2VGR0MnNNejdyL29aYWI3
T05FVE92Ck84dmhxdDFlZ2tDT1NUOFdvMHVObDh0VjVjYXJiK3VxZFdPZDljdThqV2RZcC9PNnpC
djI2eXk5N1RRQkFnUUlFQ0JBZ01BekkzRHoKSHBCblpwZnRDQUVDQkFnUUlFQ0FBQUVDNXlvZ2dK
enJrYlBmQkFnUUlFQ0FBQUVDQk01UVFBQTV3NE5tbHdrUUlFQ0FBQUVDQkFpYwpxNEFBY3E1SHpu
NFRJRUNBQUFFQ0JBZ1FPRU1CQWVRTUQ1cGRKa0NBQUFFQ0JBZ1FJSEN1QWdMSXVSNDUrMDJBQUFF
Q0JBZ1FJRURnCkRBVUVrRE04YUhhWkFBRUNCQWdRSUVDQXdMa0tDQ0RuZXVUc053RUNCQWdRSUVD
QUFJRXpGQkJBenZDZzJXVUNCQWdRSUVDQUFBRUMKNXlvZ2dKenJrYlBmQkFnUUlFQ0FBQUVDQk01
UVFBQTV3NE5tbHdrUUlFQ0FBQUVDQkFpY3E0QUFjcTVIem40VElFQ0FBQUVDQkFnUQpPRU1CQWVR
TUQ1cGRKa0NBQUFFQ0JBZ1FJSEN1QWdMSXVSNDUrMDJBQUFFQ0JBZ1FJRURnREFVRWtETThhSGFa
QUFFQ0JBZ1FJRUNBCndMa0tDQ0RuZXVUc053RUNCQWdRSUVDQUFJRXpGQkJBenZDZzJXVUNCQWdR
SUVDQUFBRUM1eW9nZ0p6cmtiUGZCQWdRSUVDQUFBRUMKQk01UVFBQTV3NE5tbHdrUUlFQ0FBQUVD
QkFpY3E0QUFjcTVIem40VElFQ0FBQUVDQkFnUU9FTUJBZVFNRDVwZEprQ0FBQUVDQkFnUQpJSEN1
QWdMSXVSNDUrMDJBQUFFQ0JBZ1FJRURnREFVRWtETThhSGFaQUFFQ0JBZ1FJRUNBd0xrS0NDRG5l
dVRzTndFQ0JBZ1FJRUNBCkFJRXpGQkJBenZDZzJXVUNCQWdRSUVDQUFBRUM1eW9nZ0p6cmtiUGZC
QWdRSUVDQUFBRUNCTTVRUUFBNXc0Tm1sd2tRSUVDQUFBRUMKQkFpY3E0QUFjcTVIem40VElFQ0FB
QUVDQkFnUU9FTUJBZVFNRDVwZEprQ0FBQUVDQkFnUUlIQ3VBZ0xJdVI0NSswMkFBQUVDQkFnUQpJ
RURnREFVRWtETThhSGFaQUFFQ0JBZ1FJRUNBd0xrS0NDRG5ldVRzTndFQ0JBZ1FJRUNBQUlFekZC
QkF6dkNnMldVQ0JBZ1FJRUNBCkFBRUM1eW9nZ0p6cmtiUGZCQWdRSUVDQUFBRUNCTTVRUUFBNXc0
Tm1sd2tRSUVDQUFBRUNCQWljcTRBQWNxNUh6bjRUSUVDQUFBRUMKQkFnUU9FTUJBZVFNRDVwZEpr
Q0FBQUVDQkFnUUlIQ3VBZ0xJdVI0NSswMkFBQUVDQkFnUUlFRGdEQVVFa0RNOGFIYVpBQUVDQkFn
UQpJRUNBd0xrS0NDRG5ldVRzTndFQ0JBZ1FJRUNBQUlFekZCQkF6dkNnMldVQ0JBZ1FJRUNBQUFF
QzV5b2dnSnpya2JQZkJBZ1FJRUNBCkFBRUNCTTVRUUFBNXc0Tm1sd2tRSUVDQUFBRUNCQWljcTRB
QWNxNUh6bjRUSUVDQUFBRUNCQWdRT0VNQkFlUU1ENXBkSmtDQUFBRUMKQkFnUUlIQ3VBdmZ2N083
czl1MlIvekorNTA3L3M1ZDVVM2YyeTd6TXIvR0xOYS8vTSt0Zjk4ZzY0elByVjExdFBQdVY0dWlR
WldjNAp4R1FjVnFQUnQ0N0RhSlB4Nng0M1dhZTJVYzRwbC9Ic1Z4K3ZlZG5YNVJpa2JnTUJBZ1FJ
RUNCQWdBQ0JKeEc0ZVEvSW1UYjJud1RuCjFlYTFqdTJyemFIMlJna1FJRUNBQUFFQ3IycUJrd0hF
R2U5WDllRjUrZXQzekY5K2N6VVNJRUNBQUFFQ0JGNmRCRTRHa0tNUXpwWWYKWlRuTG1ZN2xXUjQy
TzAyQUFBRUNCQWdRT0dlQit5L0h6dWVlZ2d3SDl4YmtIb004N3JabjNmdXczSWV3TE9ucnIvdjNI
TjEra1BjMwpEdDBsRnNOOUY2UEJPajlXNDNyTCt0bFcxakVRSUVDQUFBRUNCQWdRZU5ZRmpnZVFu
QmwvT096NkRjNlVYMnBFVjJONmFSaW40YndkCittdGErS2loVDFjZ1djcGFWamRDcjlOblBMSzFX
RVBGa1hBeEJvdGFiL3ZXYTN2ZGIzRHYwOHMydDYrNU5EMGU0eHo3SEpaSGgrYlMKNm1ZUUlFQ0FB
QUVDQkFnUWVCeUJOWUQwaG00YW9XTkRkQnpmYkwwM2h0TzRYUjZieFkvTzVsZURlRHg3UC9aNHJG
dFl0cFJsZWVZeApoSk8rL2UzK25Ha0RlZnUrMXFDd3ZPYytYUWJ4R3gvbG1lVzFMTFkxZnlrdkhZ
OXhHMjM4eWlIR3RYZ1p6N1lOQkFnUUlFQ0FBQUVDCkJKNkd3QnBBYnJxeGF1aHUxKytONUdvUUx3
M1dOVWlrOFZzTjZveTM1WGZibzE1ejkwNmJhcytIKzRlUEd0SVAyOUxXc080OU1jOVoKKzNmYm9D
L1RibFJCcmNxbVZENTl2VXpIcnF5ak9OcTI4UXpyOG1XOVM4Y3I4OXZUUUlBQUFRSUVDQkFnUU9E
bEZPZ0JKRUdnL3hiSQpGVFgzeHV5bXdick9Td080UFRKY2pMVS9xMEdjUnZTRFpXNTcvZDI3cmVu
OHNEMWJ1VGFRODZxczExNlQrZnVIN2JSN3pyem45dmgyCktkRCtidmFzUGZidGVTY0xIZzJaZjQ1
RFJNYWhDeTIrR2U5T2lSa0pabVUxQkpMWTlYWEc1YVZmNjlVeFdPcnFkV1NkcTQ1am0zOXEKeU9z
TkJBZ1FJRUNBQUFFQ0JKNVU0TW9la0RSVU0xUlpGZlVHN0hLV1BlMy9hdEQyQnU3U3VNMjhOSjZy
MGRzYnl5MTQxSFFQRzlYQQpUaU42ZjlIWVhrTkdxczU5Q0MyRUpKQWtlRlFRcWYxSW1mWFBjYmhr
V3NFZ29hRUZpS2J4S0lTVVU1WHhhbzgxNUxYWHJrRmxFZTcyCnc3RVlqMDFsdHY3NjVSaVhZZTFY
bFRWZlNZQUFBUUlFQ0JBZ1FPQnBDVndFa0dySFY3bHN2VGRFbDNrWkh4dW0xYWpOcXJXc3lnb2YK
MVREdURlYWhvVnk5SUFrZTkrN2MyejI4ODdDWFBXaWtoWnc2RTBJeW12Q1JaM3BBK29MVWVERmsv
amtPc1J1SHN1eGxPUTJCSTBheApySExzL1ZpdHMzNTZtSmJnMThzeGhDeGhveCtqb2Y0NlpyVS9t
VDRZaXJpT3ljRkNFd1FJRUNCQWdBQUJBZ1J1SjNDcEI2UTNTS3VIClk5blcyR0JlRzh0TDR6YU4z
dDZqa1ladmUxMFBHMjFabjU5eWFVamZ1M3V2TjZEVGlMNTNyejMzRjgvYzk1RmxDUmR0VHUvNVdP
dG8KOTRGVUtPazlJSnNlajdNTklGdmZ4YkxDUVE4U2cxdW1ZOVJEU0J6empHRXM4MXlXSGJNL09E
WjFPVmZWTndhUllUeUh2WTdCN1Q1TwoxaVpBZ0FBQkFnUUlFQ0J3V3VBZ2dQU3ozM1hHZTNsZGhZ
OSt5YzVGcy9SUmowZW1FenJTc0cyUDNuQnU0L1hvWit3enZWdzIxTXZsClRINDFudFA3c1EwU3Zh
NWx1ejJBcFBkamVZNXZaL3U2Y2RtelBKNzNOdzQ5ZUZRb2FNc3l2VnExY0hILzd2MkwwSkdJVnFH
amxiVk8KOTQ1eHMrN21kUVJpMzU1MWJOWmpXSFgxSlJmSE1QdVQ5YlpELzB4c1o1b21RSUFBQVFJ
RUNCQWc4SmdDQndGazNFWTFpak92R3FFMQpMdzNWSGp6UzY1SEdWY2IwSHdBQUlBQkpSRUZVYkh2
MDhGRkJZMm40cG9IY0c4eDExajZONmYzOTNZUDlnejQvRGV0K1dWVkN6L0s3Ckk3a0hJcjBpL2ZH
d2haTUVqMXhxMWRyRzIzcytucWNBMHAwam1YdEE0bGM5SUwxZjZDS0UzTDl6L3lLTUxDRmtEU2Js
VzZHay9KZHQKVkFqSnNjb3gyUWFSWThjNDh3d0VDQkFnUUlBQUFRSUVucmJBbFFHa0txcUFjVkRX
R2ZTbFFUczJtTmZRVVdmcTB6Z2VHc3dQSGo3WQpwU0g5OEY0TEY4dWpiamp2RGVSMlgwZ0NTc0pH
WHljQnBCNzVocXhoZUc0Q1NIMXpWUUpJVE5zalplL05XRUpjaFkrRWp2djMyck1aClpua1BJVWVz
NjdXOWx5UmJUQ2hKK0JpT1hSOWY2dXd4c2kwekVDQkFnQUFCQWdRSUVKZ3BjRCtOMExGbm9ScW9y
YzNmRzZ0VitkcFkKYlEzVzNxaE5nL2JCUmFPMi9kbm45WHNUaHNBeEJvODBsQk1zSHR4OXNQWndW
TDI5OFp2dEpueTBnSkl5NGVKaGVrRHlXQzYvMnQvYgpCSkRzNUJrT2ViL2pVSTMvTXU0OUZya0VM
ZUZqOGV6QkkrSGp4TE84MTNMcEdWbERTTnRlZjFRWVNmaklZd2dlTmQ3M1paaWYvYTFsCjQ3NGJK
MENBQUFFQ0JBZ1FJSEFiZ2JVSFpOdTQ3Tk5MQ09tTjBhV2h1alJaTHhxeWFkQXV6MzRqZEFza2F3
aHBqZC9lV0c2WFhQVXoKOWc4dkFzaEJ6MGZiMDlwMnR0TUR5cDBXVVBKSStMamZ3a2UraG5jSUll
T2J5L3h6SEdJNER0MmdOZmI3STcwaENSLzNMc0pDQlpDRQppdTdZQXNnTGQxL1l2WER2NHJrR2t2
U0tMT0ZrUEFiWlNqODJ3N0hLdktXMjFiLzJJZnVWOFhIbzArZEpQYjRONHdRSUVDQkFnQUFCCkFz
K0F3QnBBY2hsVU5UUjdtZW5jRUoxbkhta2d0MmUvbENlLzZWSGptOUJ4NytFU1BOSVlUcU80Qlk5
Y0x2VEMvUmQ2ejBmMVp1UzkKWjdzVllIcjRlTkI2U0JKQWNnOUliazdQSTEvQm0yZnJCZGtPV1g2
T1E5NzNkdWkrc1k3ejROSjdNNVp2dk9vQkk1WUpId2toOVd5MgovUkt0dHF4Q1N0YnRyMTE2UVhv
SVNXeHN2Ui85MkNXUUxPTlZaeDN2c09aZWxBeFoxaStSdTd6TDI3ZGdtZ0FCQWdRSUVDQkFnTUMx
CkFqMkFwSkZaRGZ6ZU9FNEROQTNoZXZZbWNadGV3a2hDUTIvUVZ2aG9vYU9mb2E4ejhPMXNmUnJI
dWR6cXdiMmxSK09sRmloeUNkWFMKa08zYlRrTzdYVzdWZXovYXBWZDU5TjZQQkpDNi9Db2haTGtF
YS90dW5yc0FFdS9sMFlOZVFzTFNneEh2YlFCNXhmMVg3RjV4OXhYZApPdU5qTU5rZWp3b2p0YjJZ
OTdvcVlHYXFqbmNyZXdoSnVReFpaaUJBZ0FBQkFnUUlFQ0R3cEFLUGVrQ0dMZldHYUd1WVpsZ2Jw
YTJCCjJodkZTMkJZRzdLdE55U040LzVjYm9wT1F6ZzlHbWt3SjRqMEhvMjdyVXNsdGIzVW51M25Q
ckxkSG1TVzhOSjdQdG82ZVYyQ1JWN1QKZzBjRmtLWE1QdFh3dkFTUWJsd0JZQ2tySUNRNGRLY0tJ
RXZJaTJ2Q3h4aENNcStIbExpM1k3RHRCYW50OUZpVGNKTm5la0dxN2lWawoxSFE1S3drUUlFQ0FB
QUVDQkFnOExZR0RBRElHajFRd05veDdRN1dGa3Q1b1hScXUrVVh6SGp5R3k2NTY4Rmd1RStvaG9z
ZUpSSVhXCis5SEN4NTM3dlhuYlgvZmlneGZYbnBQY2ZKN2VqNVFIQVNTWFh5MzNnV3pmZE4vbWR1
WVpURWRnTzNTVjVmNlBDbWVaRjk4S2U5V3IKMGNORk0rNjlIZ2tpNlFtNXQ0U1JWdGJ5Q2lOakVL
blFVY2V4MXpWZWlqWDBkUFI5eW5RN2RBWUNCQWdRSUVDQUFBRUNUME5nRFNCcAppRmFEdmdlUE5s
MzNCSXlYWHZWZWtBU1BkbVkramVQK3V4NjUxS3IxWEtUaFd5R2lYMHJWZWpSNkw4Ynk3VlZwMENh
MDVQSGkvaUo4CnZQVHdwWXViejVjQWtrdXYrbU84Qk92dVJRdTRMaE9yTjE3N1c5UG5Vc1poSE9L
ZG9idTNaZDJwaFlMK1dNcXhoeW4zZWJ4d3A5MEQKMHU3OTZEMGhDUjk1THBkalpWNk9SVDBQZ2to
NnE1WmVsWDRzeDB1eGNqbFdqdnZ5ckgycy9hdHBKUUVDQkFnUUlFQ0FBSUhIRlZnRApTRzJnTnpi
N3JScVBHcUs5OStQQjB2dVJadkZ5K1U0UEljZUNTR3NBYjI4Yzc0M2FCSkM4dGoxeXMvcExkeCtG
ai9SODlGNlEvRDVJCnUrY2pJV1R0K2NoSitNMU42T2NhUGxibll5R2szRnRQU0l4aTFxMFNHdXJa
dk9zM1FYckFxQjZRWEk1VlFTVDNnN1NBY2l4NHJPRmoKT1E0NUhoVjQrakZLK0ZqMnJYOFdhb2VW
QkFnUUlFQ0FBQUVDQko2Q1FQOGRrR3duRGZ6MGRLUmhuekpEYjRvdVo4T3I1eU1OMXQ0WQpYdTdk
cUY2UXVzK2pYM2FWcjg5OXFUMWJXVU1Ga0FTUHZPYWxCeS90MXQ2UDViZEJIclJ2d1ZwLy82TXV2
UnErQWV0U0NHbkx6bkVvCjM5cjNhdWgzby9SQzFGZng1dEtvTm4ydmZRdFdkMC9ZU3dESmZTRHBC
V25oSStNSkhtdFB5QkkrNnZLc1dpZnI5ZU8yYkNQalBRd20KaUl5WFlGWDR5R2NnLzFXNTZSV3Bm
VmNTSUVDQUFBRUNCQWdRdUkzQTJnT1N4bThQSVV0RDgrSThlUHN6RGVMMnlKbjR0Y0hheHRmZwpr
YjZLWERiVnZqYjNZYnZrS285c3AzNDBzTi96MGJaWlAxcFk5MzMwM28vMGV1VEhDWFA1VmI3NTZu
NTdabHU1QWIwZVM4L0hObnprClRXYWRjeHppdVIwT1FrZ1hiMlpMT0NqN05VQzA4TER0QlVsdnlC
aEU2aktzSGxieTlieDVKcmdzUWFTMjJldG94L1BpS0xjLzYvZ3YKWllocjM3YjdiSm9BQVFJRUNC
QWdRSURBYlFYV0FKSVg5aEN5Tk9wN1F6VGhJK0doTllRVE1CSkdNcDZHY0lKR2dzSzkvY1VaK1RF
MAo5Rys3V3JaMzU2V0xwbTBhdk5XQVhucytLb0MwRUxMZSt6RisrMVVpeHF0eEFDbjdIaFphTDhW
NHlWdjFoQ1I0SkZ5TWwyUDEzcEQwCmhDejNncXpCSTcwZjdkalZNOGV5SDUzbEdQZGpuamx0dW9a
eHZPWXBDUkFnUUlBQUFRSUVDRHl1d0VFQXlVWjZJelJudng5ZU5FUjcKRDhqU1FLMFEwWU5IYTh3
bWxLUngyM3M4bHVDeTlrcTBMZDlwOTQxa2UrbjlTS00zdlI5WlB3R2tRa2kybGZEUnYzNjNoWTBF
bTlyZQpXQjU3ZzJ0ZHh4WSt3L09heXRHOTYvWkxBTWc2M1M2OUU4MnczN3VSRzlJVEFPc3lyUFJt
dFBFZVF0cDRoWkJqNVVFSWFhK3BJTm5EClRZSklqbm5WbmVDWnk4RGF2T1d3SHQxZk13a1FJRUNB
QUFFQ0JBamNWcUFIa043UWJLL3N2UTN0NXpveXJBM1MxaWhOWXpYM1p1UmUKZ2F5VE1KSEdmNExE
dm4xRFZROEtiZjU2MmRWRlU3Yi9tZGYyeHU2RGkvc1hFalI2K0ZoNlAzb0FTUWhabnRudUdEeHEv
R0t2RHYvTQp1dWM0cEtGL2JGZ0R3QmdHRnY5eTdKWXRRT1FZSkZTc1lXUzRKNlI2UGxMMlgwWWZM
NzlhWHB2WGo5dk0rRnAvN1Y4K0MyMVgrMmNoClljUkFnQUFCQWdRSUVDQkE0QWtGRG5wQUtvaWtJ
WnFHZjhvZU90cnZjUFR4QkpFMnY1ODFiMyttY2J0K1UxVjI1RUZyck42N2FLalcKK21ubzFqZGVq
Y0dqZit2VmVPbFZ3a3hDVFM3QnlpT0JwajB5Wkh3ZGhuYnd3ZngxaFdkL3BKejdubzV2Yldua3g2
NENZQVdEL2lVQQprYTlMc2VJNkJKSHE0Ump2OWVnOUk4dmxXVGxXRlZycStQV3lnc2R5ckZOM2hx
ci9ZRi83RW44UUlFQ0FBQUVDQkFnUWVIeUIvaTFZCjI0WjhiM3d1bDk5VVE3U0NTSG84MHZDdDEy
UjZIUHFsVzB0anR2L21SLzFtU0h0Tkdza1ZQTlliejNQUlZkMTRudEN4Zk90VnR0L3IKYU8zaENp
SmpQUm0vYXY1MnZXZHR1aHI1Mi8zcTh4dG4rZmR5dUE5bkRTRXROUFJnVjcwWmkyMEZqQjVHaGw2
UDNndlM3S3ZIcEFlWAo1WnUxZWk5SUN6V3B1NDUxMWIva3YzVTNNOTlBZ0FBQkFnUUlFQ0JBNEVr
RWp2YUFwRmNqamMwRWdIN2plUzY5YXZQU1dPM0JvTFZNCjg5V3dMVHYwK2UzRWZCL1dSbXg3N2Qx
OU83K2VobkpySEw5MDU2WGVZTzdoNDg3eWpWZnQ5ejR5blJEUmV6MWFYZXY5SDllRWp4NU0KVXVP
NXRvZVh6SGFzUVg4c2hLU25JdXRXYjBpQ1J2VmU5Q0N5OUliMGdOSEdLMmowSUpMTHRJWjV0WDUv
ZmJheTlJQWszT1JZeDdUdgpWenUyNjMwZ0Y0Zlhud1FJRUNCQWdBQUJBZ1NlV0dBTklCVTRzc1hl
QUsyR2FLYmJJdzNWREwzSFk3bFBaQTBlYWJpMm9kK3duaC9SCmErdm1jcXMwY2grMHdKRkdiKy94
U09ob3YvV1JvTkh2K1VqUFIzc2tVQnhjZXRXbTB4Q3VvSEZWVDhkVjgvdk9QTU4vOUpCeFpQOXEK
ZnZjZmUwSVcvOHp2d2FHRmhSam4wWDhqSk9VU1FzYkxzdnI0MGt0U29XUmNyL2VvWkR2dG1XMzNS
OHBsdkhheDcwOU5LQWtRSUVDQQpBQUVDQkFnOGdjQjZFM28xOXF1eFdiMGcyWFo5STFZYXZMM1Ju
eXd5aHBDTXQ4Qnc5MzVibzExeVZiMGZEOW9QRE5hbFZobnYzM1pWClBTQzUxK05lQ3g3THZSL1pi
dmFoeXRSYis1UjU2M0NSZGZwa0xWK1huY2xJR1YrOGlVYzdmUkJBMnV3S0FtdVpJTEpjTHRVRFNB
c08KQ1JtWjE4dE1WeEFaeWh5M0NpWVZTaTZGai9HYnI0NzBmaHpzODZOZE5rYUFBQUVDQkFnUUlF
RGdWZ0pyRDBoZWxVWm1OZXA3Z3pQdAovdGJnejNoQ1JiNTJONDNaUGd3aEpEZWU1NUhlakQ3V0dy
TzkwYnRyUFI4SkhIbTBvRkVoSklHaTk0QXNJV1FNSHIzKzlINHNvYVAyCjU2TFNpei9YZVVNWUda
Yy84K05MbmpyV3FLOTVQWXhzZWtHeUxJOEtIMzI4d2tkNlJkb2pBYVNQTGZOcmV1MHBXUUxMdW8w
YzIvYm8KMjg3MkUwUmFXY000WHZPVUJBZ1FJRUNBQUFFQ0JCNVg0Q0NBMUVZT0dwMnRMWnF6NVFr
UWFhZ2VERXNJU1VNNDl3dFVBS213a3VtOApKamVXOTE5S3oxZnQ1dGZTRXp6UzJ6SGVjSjdJc2ZT
QXBJNGVNaEpFY2puV0ZjT3BaVmU4NUptWWZlQzcyYU8rYkFrZVdkUnRsK0NSClpmMjVoSVFLRWIx
c3h5amhvWUpHTGFzQTBxZHpOQkpVbHN1dXFrd2RtZCszblJxWGVqYTdacElBQVFJRUNCQWdRSURB
RXd1c0FTU04KempUb3E4eVdNOTQ3SWxwUjQybTA5bVVYVGVPTEc1WFRJRTR2U0g2OHNKVUpLM1ZQ
Unk3NTZiMGRyZmNrMjA4bzZlVnc2VlcybHg2UApDaFRic2xkNFVXa2Z6YnJQdzlDMEx0N0c1dTEw
Njdaa0xHdmRsSGxVWUVqQXkzb1ZKbEwyNVFrWkNSc1ZPbElPd2FOZTA3ZTJCSTZyCmVqOXFQNTRI
YysrQkFBRUNCQWdRSUVEZ1ZTdXdCcER0YnFUUm1TRFF5M3dEVm12TUpsaWs3WitHYklKRUdyY1pz
azQxWG12WkdqU1cKM280S0pObG1IdWtKV1lOR24zUFJDbC9udGZYV1lXbW5aN3FXcjh2T2ZPU2dj
VCsrNVdhYW9aYjNvTkNpUmMycm9OSHRFMGdTUE5wcgoxbklKSGprdW1WZnJyOHV6Zmg1NVRUdTI3
WEQyTUZuYjd4WDVnd0FCQWdRSUVDQkFnTUJURnJqVEd2UkRzL2RSQTc5bXAxekhsMHVtCkVrVDYv
Sm8rRWpMV0FKSjFyN2pVcWtlUnBmcTFqaVNjWmNqeXE0WmEvNnJsei9yOENoYkg5alBCb0lZYXIv
VlRybzhhVDVsbndzWnkKS1ZYQ1lhMTdFRHFXOWJLczFzM3JNdlQxMi93YUg4cysweDhFQ0JBZ1FJ
QUFBUUlFbmxEZ1VnREo5cXB4UDVicitCZ21FazdhWTcybgpJMVBiZVpuZXZtYVpYdXRxYmQ3YS9q
b3ZJNXNoZFIwTWo5cnBCN09mK1lsTGIrUDRHMGtncUtHUHQ5ZlZ2QjRXY3VsYkFrVTloK25xCjhl
akxxcWRqNlBVWVg1TTZhcnJHeHpMakJnSUVDQkFnUUlBQUFRSlBRK0RLUzdDeThUUktFd3hTWnVq
ak9WditxRjNjWmw1Y2tyV0cKaklTUTltak40cjVlZWtMcXRUMmNMSUdrNXExbHR0bWVZeERKc2d5
WGdzZkY3T2Z1ejI2MmVWZmRmZ2tzdWRFL1F4MlB1dXd0MHpYdgo0TEs0SElVS0ovMklETk9aZjZM
blk3TWJKZ2tRSUVDQUFBRUNCQWc4RllHalBTRFo4aGdFYW53cyszaTdkU0RsK214Um9iODJrYUht
CjE3eE0xL2l5dksrOHFhdUhrR1c5V3I0dGU5M2JtV2M0WGFIaHFsMXZFU0hwYXgzRzlYdXd5UEky
WkwxYVZ1UEhsdmQ1Q1pPNTMyTUkKTGV0cnMyd1phbDVOS3drUUlFQ0FBQUVDQkFnOERZRXJBMGcy
UGpiMGEveFN1YjJjS3E4YkFzYkJlQXNodlUyZGNyUDlQcDNXOXFNMgpjRjluKzBmVnY1MS9ydFBY
TnZRN3lTRkt2YWFYV2I0RWg1UjVaTmlPci9PR1hvK2FONWJiOFV3YkNCQWdRSUFBQVFJRUNEd3Rn
Wk1CCkpKV01EZjVqNHpVdmwyQ042Ni96dDZGak9LVmY2L1FYcHE1aFdjMDdWVzVmZjJyZFoybFpC
WWFiN2xPRmlscC9mSDB0Ni9NMllTVHIKMTdyajVWYmovRlBqV1dZZ1FJQUFBUUlFQ0JBZzhEUUZy
ZzBncVd6YjBCK25hN3pLdnY0bWpHeTNzYTY3bk5oZnA3UGlOY050UThvMQptM3VWTDY0QWNaTWRx
VEJST1cyZGJpOCtObDZoSTl1dTVWV084ektlWVZ4Mk1jZWZCQWdRSUVDQUFBRUNCSjZ1d0kwQ1NG
VzVEUXJqCjlEaWU5ZGZwRmpLMm9XRmRWaHNlMXgvbVhUdDZlR1hTdGFzL015dGNkQmJkYW5lT2hZ
UHR2QjVtbG0xZlduYmkvbzd0dXJmYU1Tc1QKSUVDQUFBRUNCQWdRdUlYQXhTOEozdkFGYWFpT2pk
Vnh1c1l2bGUyZWhQNmJGUG1LMk9XWjZYeE5iRDN6bXZ3bXhmYjVmLy92LzkzOQp4Ly80SHkvTlg5
Y2J0bEhidWszNTRpdGYzSDM1bDM3NXVoL2IxKzdiRHpCKzB6ZCswNVhMdCt2ZmVQckllMTNmMHhY
THV0SDRmdk03Ckh4dlRCSkJML3NNeHEyVjF1TGZUTlg5MitiLy85Ly91eC9XcWVyNzd1Nzk3OTQv
KzBUKzZhdkhMTXYvQmd3ZTdmL0V2L3NYTFV0ZkwKV2NuVHNQM1diLzNXM1JkOHdSZnMvdnQvLys4
djU2NWZxdXUvL3RmL3VudnBwWmN1emE4WjJiOFhYM3l4Sm05ZHp0NytWVHYwMy83YgpmOXY5eTMv
NUw2OWF2TXZmbjMvLzcvLzlsY3VmZE1GMTlWLzNkK09tKy9kdDMvWnQvVE4wMC9XUHZhL3I5blg3
bWllcGE3dXQvL2YvCi90OTIxanA5M1dmdnV1WHJob3dRSUVEZ09SVzQrN2YrMXQvYS9lZ2YvYU43
dy9WTjMvUk5kNW11NGIvOGwvK3krNTIvODNmMlpiL3gKTi83R1hmNnh6N0J0dU5aMGxlTTZOYThh
MkRYZEc4djlsdW1MZ05KRFNZOHFGMk9mKzltZnUzdmpOM3pqM1dkODJtZXNjOGNHZHg5ZgpYajl1
NjZialgva1ZYN2w3eDNkNHg5Mzd2UGY3SE4zS1YzL1ZWKy9lN20zZmJ2ZUJIL0NCUjVmZnRKNmo2
dzNCSWU5ais5NnZtajdZCjFoSXNMcmtlQ1J4bDNnL2VrZU5YODErTzhzLysyVCs3ZTczWGU3M2RY
L3BMZitsb2RWL3hGVit4KzhrLytTZnZmc0V2K0FWSGw3OGMKTTcvcXE3NXE5K04vL0kvZi9kcGYr
MnRmanVwZXRqcWVodTNIZmR6SDdUNzNjeiszQjhRZjhTTit4QzZCNXVVZXZ2ekx2M3ozenUvOAp6
cnMzZnVNMzNyM2hHNzdoN2pmLzV0Kzh5OG1LR3I3KzY3KytmMzZ5bngvMllSKzIrKzIvL2JmWG9o
dVZzN2QvM1U3ODN0LzdlNi84Ci9ILzJaMy8yN2czZTRBMTJmLzdQLy9uck52UFl5MC9WZjkzZmpk
dnNYNDdMcDMvNnB6L1Irem0xcjF1QTIremI5clhqOUwvNU4vOW0KOS83di8vNjdkM3UzZHh0bjkv
SHJQbnZYTGIrMFFUTUlFQ0R3dkFxMHk2SDI3V3pNL29mOXNCKzIvejdmNS92cy84Ti8rQStadFE0
ZgovdUVmdnY4RGYrQVByTk12NTBocjRPdy84aU0vY2xxVkgvTXhIN04vL2RkLy9TdTMveHQrdzIv
WS80eWY4VE91WEc3QjR3bjh3Qi80CkEvZC83SS85c1N0ZmZOMXh1ZktGVDNIQnkzbnMyMW5aL2Vk
Ly91Yy94YjIvZWxOUFl2dWQzL21kKysveFBiN0gvdUhEaDcyQ2IvekcKYjd5Nm9rbEwvc2YvK0Iv
NzkzbWY5OWwveVpkOHlmNS8vYS8vdGYvWWovM1lYSFM0LzEyLzYzZjFHbHV2eGI0Rmt3UFBkM3Fu
ZDlyLwprVC95UjI2MFI3TzNmNU9kK0QvLzUvL3NXKy9BdXVyMjh6SDczOFZ0L2V1T0xDUGJ2eHVQ
czMrdFoyci9EdS93RG4yTFQvSitydHZYCjdiNWZWOWYydld4Zm44L2NWMy8xVis5L3pzLzVPZnQy
b3VSZzhYV2Z2ZXVXSDJ6TUJBRUNCSjV6Z1g0SjF1dTh6dXZzUHVkelBxZWYKelJ6UCtuN1ROMzNU
N3V1Kzd1dDI3WC91TDB2K2F0WUg5ZHkvZjcvM3Roek1mSW9UVjIyL05iQjZMZmZ1M2V1WGYxMVg1
WGEvcjF2Lwp0c3R2Y3huSjdIMjU3YjRmVy84cTkxcjN1dVcxM296eXRzZitTZmZobGE5ODVlNFgv
K0pmdlB2S3IvektTNXU2elhIZnZ2aXF6OEdUCjJPYmZnbHgra3g2MURHL3hGbSt4clhiNjlELyt4
Lzk0OTRtZitJbTd0My83dDk5OXIrLzF2WFlmOUVFZnRIdXJ0M3FyWFhwM011U00KK25kOTEzZnRm
dTdQL2JucnZyemYrNzNmN2kvK3hiKzRUcDhhbWIzOVUzWFhzdGQ4emRmY3RSTWpmZkxZNStOSmpt
SFZjYW9jNngvWApPL1ozNDNIMzd4Lyt3Mys0ZThkM2ZNZSsrU2Q1UDFmdDYrTjgvbys5bC9IOVp6
eWZ1Ui83WTMvczdnZi80Qis4L2oyb2RhNzc3RjIzCnZMYWpKRUNBd0t1RHdIb1BTQzdEK3RBUC9k
RGRYL3RyZjIzMzUvN2NuK3Mza2YvVzMvcGJkKzNNNFNXSGRpWjA5K3QvL2Evdmx6YTgKMTN1OVZ4
OXZaNkw2ZXJtMEpwZEYvUEUvL3NmNzlHZCs1bWZ1M3ZJdDM3SjNXVi9hMERMakwveUZ2N0Q3NUUv
KzVGNVhHaGJqa0FiUApoM3pJaCt6ZTVFM2VaUGNqZitTUDNQM3JmLzJ2MThWUGV6L2EyYS9kQjN6
QUIreGFqOC91QXovd0EzZi81Si84azdXdVl5Tlg3WGV1CmtZOWQ2ejNaL2JnZjkrTU83bWM0dFd4
Yng5LzVPMzluOTlFZi9kRzdkcFozMTg0Vzd2N1pQL3RuMjFYVzZmai84bC8reTNlLzZUZjkKcHQy
N3Z1dTc3bjdSTC9wRi9YMzhnMy93RDNacFZQMmFYL05yK3ZIOS9iLy85KysrMy9mN2ZydGNabkpx
WDY1YTl2ZiszdC9yMi83ZwpELzdnM1ovNEUzOWk5ME4vNkEvdHh6ZVhKZHhteVA3K2x0L3lXM3BE
SzBacDNCNGJydnM4SFh0dmYrYlAvSmxidjkvYkhQdGpkVjduCm1mZjd1My8zNzk3OTRULzhoM3Zn
K0VOLzZBLzF0NXUvSnpuT2YrV3YvSlhkci83VnYzcVg5YTQ2N2pleFAvVTVPT1o3MVhIZXJodlQK
MWh2YTc3bkk1WmkvNDNmOGppcy9WNmYrWHVha1JqNDd1V3dxN3puSFBwZTd0UjZOL3ZsKzcvZCs3
MzVKemtkOHhFZHNkNkZQLzZ5Zgo5Yk4yMy8vN2YvK0RaUWxDYi83bWI5N24vZDIvKzNmN2VJV2t6
TXhuTkg5M2NzMytQLzJuLzdULy9XaG53bmQvLysvLy9UNmRCbVZkCjB2U2syei9Zc1RieGwvL3lY
KzUvMzNKSjRmLzhuLyt6Lzl1YS9VODk5VzlaNnczYy9kU2YrbFA3Q2FEYzgvWUgvK0FmM1Aya24v
U1QKK3FhT2ZUNnk0TlMvaS8yRnl4OVBXbjgyYytydnh1UHVYNDc5ei8vNVAzL2QxVlB2NTZyUDZO
WXFHN3ZKNS8rcXVxNTZMK3RPWGpOeQozV2Z2dXVYWGJONWlBZ1FJUEY4QzdVelJPclF6UVBzZjlh
TisxTDcxaU94YlEzWGZydmRlbDlWSUxyOW9JV0gvR1oveEdYMVd1dExUCkZkMGF2YlhLL28zZTZJ
ME9McDNLc2x3MmNXeEluYTBSc2k1cWpaTjkreDlFbi80eFArYkg3Ti82cmQ5NjN4clIrL1kvb1gy
Nnoxc2oKclM5N0d2dng4Ui8vOGZ0Y0RsUkQ5ck5kSjd4dVArL2pYZDdsWFdyeFFYblZmc2ZqWi8v
c243MVBWMzcyc1FXWmZidm5ZZC91bjltZgpXbmF3OFRiUnp1THUyN1hlK3kvOHdpL3NpMzdmNy90
OSs5YUkyYTYyVHVkU2xCWSsrdlEvLytmL3ZGK1drc3RPMnMycSszWjJ2ZTlECmEyanQvK3BmL2F2
N2R0WjRuOHRuSG1jL2N4bEJPK1BjbisxK29YMXJCT3gvK0EvLzRldHhXWGZveEVoYzh6bkw2Ny80
aTc5NDN4cVAKKzNiLzBUNm1HYmJINWRUbjZkaDdhNDJiVzczZjFIbWJZMytzemxPZTJYNjdaMkhm
Z2t0RzkrMDYrbjU4V3NEdDAzbnZkWm5qcWVOKwpFL3RUbjROVU50cmU1dk9ZMTM3V1ozM1d2dDF6
bE5FK0hIUDRWLy9xWDUzODkrRmJ2dVZiOWovaEoveUUvUS81SVQra2Z4YmJQU1Q3ClgvSkxmc24r
emQ3c3pmcGxVcTJSM3YvdGFQL0s5cjh6VmRkVlpmNnRhQ2NuK21VeFdTZmJIdjh0eXJ3V09ycDNP
K3VleWYwWGZkRVgKOWVuUCs3elA2L3ZRR3A1OS9yRS9IbWY3MisyODdkdSs3ZjVYL0lwZnNjN09a
K0g5M3UvOTF1bnNSenZwMDZkek9Xdzd1Yk52SnduVwo1ZVBuSXpOUC9idTR2bWdZZWRMNnIvdTc4
VGo3MXdMV2VpbmZxZmR6NmpONnpPcTZ6LytwdWtLMmZTOEQ0OEZvdXdla2Y4N0htZGQ5CjlxNWJQ
bTdMT0FFQ0JKNTNnYlVISkxIcWhSZGUyUDNKUC9rbis1bTYzTENYWG83dGtCNlNuTzF0Z2FJdlN2
ZjVyL3BWdjZyZnZKNXUKOVF6dE92R0Q3dW52K1QyLzU4RjBYMm41bzExVHUvdWFyL21hOWFia1hB
TFcwTmRWY3FOZnV1cGJVTmo5OUovKzA5ZHZKbnJhKzlFYQp3djNNY3dzY3ZlNmNRUjB2NDFoMzZK
cjlic0dzbnlWdWpZcGRlbi9TWlorYjk5TVRjV3JaZHZ1dmVNVXJkci95Vi83SzNkdTh6ZHYwClJh
LzkycSs5KzRaditJYnRhdXYwcDMzYXAvVXpyWm5SQWtIdldjaVp2dFo0NzJlWjB3dlZHdjI3bi9m
emZsN3ZVZm15TC91eXg5clAKM0VEZUdvdjlpd3R5RnZjSC9hQWYxSTlMem16ZlptZ05zSDRXT0Qw
N0gvVlJIN1ZyRGRQZDMvN2JmL3ZvSms1OW5uSUdmZnZlM3VNOQozdVBTdkZQdjk3YkgvbGlkcDdh
Zjk1VmoxeHFDL2YyMVVMM0w4YXF6OXBsWloreFBIZmViMkovNkhHeHhiL041M0w0MjA4Y2M4ajVQ
Ci9mdVFTMWZTMjVyUGFENkxlYjhwMjcxbnZkY3duL1A2ZHllZmlldUc5RUttMXlTOUdCbHkrVlgr
VFJxSG12N1AvL2svOTludG5wRGUKVzVoTFMvTjM5TmY5dWw4M3JuNHcvampiUDloQW04amY0Ny81
Ti85bTc3WElzcC8yMDM3YXJwMEkyTFhBM1ZmTjV5TTl5Umx5T1d4cwp4bjhETTc4K0h4blBjTlcv
aXhkTEQvOThrdnB2K25mak52dVgzcWo2NHBQYTA2dmV6Nm5QNkRHcm0zeityNnFyOW1YN1htcitk
ZVYxCm43M3JsbCszZmNzSkVDRHdQQWtjQkpDOHNYVDl2OFpydkVadndPVWJsclpETGt2S0pRVDFQ
L1VzZjd1M2U3dStXcnM1Yjd2NnRkT3YKKzdxdnUwdGo5QmYrd2wrNCs2Vy85SmYyUm5UdXZhaGgv
SjlCR2lmcFlzL3d0UGNqQVNILzQyODM0bGZWdTF4ZlBOYS9MbWdqVisxMwpHbCs1WEt6ZDFOK2ZD
V3E1UGowTjdWUEx4bTFuUFBXMkcvQjMzL3pOMzl3YjZIbHRMb1c0YXNobFZibU1wWVkwVm5OWlJ3
MXB4R2RlCkRhZjI1ZFN5dkQ3N05yb2taTjMyMjVDKzkvZiszclVyNitVbWRVbkt1dUNHSTl2M2xw
ZHQ1NTE2VDdjOTlyZmRmaHB4OVhlazN0TDcKdnUvNzdyN3Y5LzIrTmJsNlhuZmNyN08vN25Pd1Z0
aEdUcG1NNjUwYTN6cmY1Ty9sc2ZjdzFwSFBVNGI2MXIxeDJUaWViK2xyTisvMwp5eFJyZmdMeDlu
WDFEVm5qUFN1NUZDNWZaWnVHOExGLzU3SzlKOWwrN1UvSzNPUFRibTd2WDEyYzZhLzkycS90NFNQ
Zk9Gai9udVhmCm1ocTJQcG1mZWVNd1RvLy9MbzdyMVBpVDFIL1R2eHZqL3FUZWNYcTdmN244S2lj
Snh1R3E5YS83ak9aMTQydHY4dmtmMTkvdTIzYmYKeDMyOGJ2eTZ6OTUxeTYvYnZ1VUVDQkI0bmdR
T1R4WGU0SjIxTHZGZHppVG1ldVpxUU9WNjZnU1NMSHVjNFUvOXFUL1Z6d2JuS3hVVApZdkkvdmZ5
UDVOVHd0UGZqUC8ybi83VExNMmNleC85QmplUGIvVG0yMzkveEhkL1J0NUhyMnJmRHFXWGJkVE9k
QUpMcm5IUFRiZTZSCkdRUEdkdjJjemMxOUg3bFBJSTNDaEtDNmpueTdicVpQN2N1cFpjZTI5YVR6
Y3M5UUFrbk9hTTRhVHIybnh6bjIyLzA4dGYxMjZWUy8KMTJEN21uRjYvSnpkNXJpUDI4ajRiVDRI
cC9aNXU5MmJUai9PMzhzRWdQSDlqK05YMVpzYm9uL1A3L2s5dTNaSjJjSEprSHp1OHhzbAo0NUI3
VXJMTnNjY3BaNk4vd0EvNEFUM2Nwd2QzZTEvSmsyNS9yRCtmNi9UeTVENlRmTTUveWsvNUtidjBD
dWZzZm9KSjlYNk1yOW1PCjM4UmsrNXFhZnBMNmIvcDM0emI3bDNzaGJ2clZ5TGY5ak43bTgxOCsy
L0kyNzJWODdYV2Z2ZXVXajlzeVRvQUFnZWRkNEhJWHh6WHYKT0pmeHBKR2VHM0ZyU0NNNVB3aVda
VFdjK29Hd1dpZGx6a0xtVW92ODNrZ3VZL24yYi8vMi9qL21jWjFqNDA5N1AzSnBTQm9EVjkwTQp2
ZDJIcS9iQUx4MnNBQUFnQUVsRVFWUTdqWnkvOFRmK3hpNk5uaHBpOGRmLytsL3ZEYUNybHRXNlZl
Wm0yWHdwUUc0YXY4bi9FUFBiCkdibUJQamRzcG5HVk04T25ocWUxbjZmcXVPbXlmL3R2LzIzdjNX
blhTRi81a3B0K25xN2F3S24zZTl0amY2eU9VOXR2OXp2czhoN0gKejFZYTZsLzZwVis2YnFvdXVi
bnRjVjgzc0l6YzVuTndhcCszMjczcDlFMy9YdDUwZTFldGx5OW55QmN1ak1FaFg0U1F5N0h5QTNk
agpqMXk3SjZwZi9wWkdmdzBKTCszK3F0NlRtUnZxdDhPVGJuKzd2WFlQU1AvOWxFLzZwRS9hWlR5
OXZya01LNWRtalQyVjI5ZlZkSDArCmF2cTI1ZVBXZjlPL0d6ZmR2L3k3bVdPV2t5UTNHVzc3R2Iz
TjUvK3ErbS82WHJhdnYrNnpkOTN5N2ZaTUV5QkE0SGtXdUJSQTB0REwKLzd6cmV1bnRtOC9adWpT
b2NnOUdEYm5FS05kZy84eWYrVFA3ckRRazI0MmV1OXpma1d2Q2MzOUFHc2JIaGpUVTZ5c3ljNzlE
dXpHNgovOEJZMXMwbFI5bEdEWm11eTVDZXhuN2tXM0dxb2RKdWhPMlhudjNSUC9wSGUzVzVmeUtO
d1p3QnJFczRhajlTWHJYZnYreVgvYkxlCnU1RHRKVmpsdmVjYnNYTDkvNmxsNDdZei91LyszYi9y
cy9LTDROblBCSmhjcnBHR2E4N09ib2ZmOXR0K1cyOU01UmprY3AvdFpTVzUKM3J6czh0cFQrM0px
V1Y2YmdCT2ZHbktNc2w4MTVGZCswK0JKQSsrcW9hNS96L0pjQTUvTDczSUpYSWJ4dUdUNnVzL1Q5
cjNsTmR0NQpwOTdUYlkvOWJiZWY5L1phci9WYS9UM21jcXpjSzVVZk1zdTN1bVhJNVh6dDV1MGU3
T3N5eHF1TyszWDIxMzBPUnR0VEpuM0hObjhrCm9PZXpOLzZkM0RyZjVPOWwvczZOZ1RMdnFmN2RT
WlgxMlJqWEdYY2w5Nm5sTXF2ODNjcTlWdm1tcDN4VFhnSkk3a3ZLdDE3bDNvMGEKOHZuS044blZr
SzhjLzRrLzhTZjJiK3ZMcFZpZjhpbWZzc3R4cWVGSnQxL2JHY3QySTNlL0h5eVhRYVlYSlBlQnBD
R2VTelczSnhqaQptNy9yOWZkOC9IemszOUZUL3k2T2RZN2pqMXYvVGY1dTNHYi9qbDErZGVyOVhQ
Y1ozVnBkOS9rL1ZWZTh0dTlsTkJ6SDgvK0U3ZWZ6CnVzL2VkY3ZIN1JzblFJREFjeS9RenZhc1E3
NmRwMzNGWnYrR21IYUdxbjh6VDc3bGFEdTBYM1B0MzJLVWIrN0pENmkxUzMvMjdmcjkKZGJWMkNV
VC9GcUoyemV1Ky9ROWgzODdNOTI4QnlyY2ViWWQyVnJoLzgwZzdNN2h2RFlsOXV5RjAzLzVoMzdl
YlEvczM3dVFibC9JdApOdm5HblhhejhiN2RIOUxYeTNhZVpEOWFiOHUrQlo3K1h2TXRPSzFSdEc4
TmszMjdKcmgvcTA2N1pHTC9udS81bnYyYlR0cU5qZHZkCjNsKzEzMW14TldqMjdXeHIzM1pyWkJ6
OEtOcXBaV01sN1g5d2ZmOXlIRm9EZHQ4dVc5aTM2OFQ3dDRtMUJ0cTRhaDl2WDJuYjYyc2YKMkY2
MkJ1KyszWHphMzFlNzlLTy9Oais2MkJwbTYydFA3Y3RWeS9LdFhESEtOM1MxTS9qOUc1M3lqVWJ0
WnVMK3JWYlplRDVITFFEdAoyMlZvYTEzalNMNWhyWVdOZmZ1cTFmNk5SOW4zMWpEdXF4dzdMcWMr
VDhmZTI3RjUyZmhWN3luTGJuUHNIMmY3TFVEMkg3M004V2tOCjVIMEw3YW0yRCszWHV2c3h5M0hP
RDRIbWMzbnN1TGV2NTczVy90VG40Smp0S1pQYXY1UTUxdm4ydSt4Lyt3cmQvdmY5S29kVGZ5K3oK
blh6elhMdjhhWi9qMmtKRC96YTJiTGYxK08zekxWajU4ZE5NdHpCejZZZFI4NXAydVdkZm5uWHEy
UzdqVzc4OUwvOW10WHNNK3JkcQpmY0luZk1MQnQvbTFTeFQzK1R2WmJvVHViNitkSU9uYnk0OFh4
dWRKdHorYWJjZnpiMkcrSmF5R0hQZngzODNNeno2MEV3ajlmZVZiCjdQTHYwdmo1K05OLytrOWYr
KzlpYlg5YlBtNzkxLzNkdU0zKzVadjM4bTF1TmR6azMvbXJQcVBIckU1OS9tOVMxL2hlV3NpdDNW
ekwKRnBiM24vcXBuOW8vdysxTFcvYjVPekN1ZCtxemw0MWN0M3l0eUFnQkFnU2VjNEU3ZVgvdGYr
S1BOZVNzYlc0WWY3UDJyVWpiSVdjeApjNVk4bHozazdIaStZZXZZa0xOOE9WdWZlMHF5VHM0VTMz
WjRHdnRSZFdaL2NnWS85NkRrek94Vmx3cGN0OTk1ejduY0lKY3dqRGZWCnA1NVR5Mm8vcXN3WjY3
cDA1SlJqZmpzZ1hmelo1NXdWakdmNzJ0UmRibmF1Yi9hcWJZN2xxWDA1dFd6Y3hySHhYTHVkczg2
NXIrZXEKSWIxc2NkNzZIRnYvcHArblk2OGQ1NTE2VHpjOTl1UDJ0dU9udHArL2FybkVzSDVrYm54
dDdoTVo3M3U2NlhFZnQ1SHh4L2tjbk5ybgo3Zlp2TTMzcTcrVnR0dk80NjZiSFp1WjlSYmZkZm5w
KzhnVWZOV3luYS82eGN2djVPTGJPZGZPMjlXMm5UNzMrdXI4Yk45Mi9YTHFiCjNxZmJEamY5akQ3
TzUzKzdMemQ5TDl2WGpkUFhmVGF1V3o1dXl6Z0JBZ1NlUjRFbkNpRFBJOGc1dnFmOElHRENSbTd1
SElkOHkwNHUKUjhsMTFDLzNrQit1UzBOanZDL281ZDZIVjdmNm5zWFB3YXZiTWZCK1gzVUNQdit2
T25zMUV5QkE0TFlDQXNodHhaN0I5Zk8xbnJuSApKTiswazIvZnl0bno5QzY4Kzd1L2UzKytLbmJa
R2I2WFgvMVovQnk4L0FwcWZIVVY4UGwvZFQzeTNqY0JBdWNvSUlDYzQxRTdzcys1CjVDbGZYNXh2
QU1vUE5yNHFlajJPN0paWkw3T0F6OEhMREs2NlowckE1LytaT2h4MmhnQUJBbGNLQ0NCWDBsaEFn
QUFCQWdRSUVDQkEKZ01EVEZyajBOYnhQdXdMYkkwQ0FBQUVDQkFnUUlFQ0FRQWtJSUNXaEpFQ0FB
QUVDQkFnUUlFQmd1b0FBTXAxWUJRUUlFQ0JBZ0FBQgpBZ1FJbElBQVVoSktBZ1FJRUNCQWdBQUJB
Z1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWdRSUJBQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2CmdBQXlu
VmdGQkFnUUlFQ0FBQUVDQkFpVWdBQlNFa29DQkFnUUlFQ0FBQUVDQktZTENDRFRpVlZBZ0FBQkFn
UUlFQ0JBZ0VBSkNDQWwKb1NSQWdBQUJBZ1FJRUNCQVlMcUFBREtkV0FVRUNCQWdRSUFBQVFJRUNK
U0FBRklTU2dJRUNCQWdRSUFBQVFJRXBnc0lJTk9KVlVDQQpBQUVDQkFnUUlFQ0FRQWtJSUNXaEpF
Q0FBQUVDQkFnUUlFQmd1b0FBTXAxWUJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0FnUUlFQ0JBCmdB
QUJBZ1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWdRSUJBQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2Z0FB
eW5WZ0ZCQWdRSUVDQUFBRUMKQkFpVWdBQlNFa29DQkFnUUlFQ0FBQUVDQktZTENDRFRpVlZBZ0FB
QkFnUUlFQ0JBZ0VBSkNDQWxvU1JBZ0FBQkFnUUlFQ0JBWUxxQQpBREtkV0FVRUNCQWdRSUFBQVFJ
RUNKU0FBRklTU2dJRUNCQWdRSUFBQVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFBa0lJQ1do
CkpFQ0FBQUVDQkFnUUlFQmd1b0FBTXAxWUJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0FnUUlFQ0JB
Z0FBQkFnU21Dd2dnMDRsVlFJQUEKQVFJRUNCQWdRSUJBQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2
Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQQpBQUVDQktZTENDRFRpVlZB
Z0FBQkFnUUlFQ0JBZ0VBSkNDQWxvU1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JBZ1FJQUFB
UUlFCkNKU0FBRklTU2dJRUNCQWdRSUFBQVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFBa0lJ
Q1doSkVDQUFBRUNCQWdRSUVCZ3VvQUEKTXAxWUJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0FnUUlF
Q0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFawpRSUFBQVFJRUNCQWdR
R0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NEVGlW
VkFnQUFCCkFnUUlFQ0JBZ0VBSkNDQWxvU1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JBZ1FJ
QUFBUUlFQ0pTQUFGSVNTZ0lFQ0JBZ1FJQUEKQVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFB
a0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSQpsSUFBVWhKS0Fn
UUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlFQ0JB
Z1FHQzZnQUF5Cm5WZ0ZCQWdRSUVDQUFBRUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NE
VGlWVkFnQUFCQWdRSUVDQkFnRUFKQ0NBbG9TUkEKZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JB
Z1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQwpCQWdRSUVD
QVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFVaEpL
QWdRSUVDQkFnQUFCCkFnU21Dd2dnMDRsVlFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlF
Q0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNBQUFFQ0JBaVUKZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lM
Q0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZApXQVVF
Q0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JBZ1FJ
RUNBUUFrSUlDV2hKRUNBCkFBRUNCQWdRSUVCZ3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFV
aEpLQWdRSUVDQkFnQUFCQWdTbUN3Z2cwNGxWUUlBQUFRSUUKQ0JBZ1FJQkFDUWdnSmFFa1FJQUFB
UUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFFQwpC
S1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZFdB
VUVDQkFnUUlBQUFRSUVDSlNBCkFGSVNTZ0lFQ0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JB
Z1FJRUNBUUFrSUlDV2hKRUNBQUFFQ0JBZ1FJRUJndW9BQU1wMVkKQlFRSUVDQkFnQUFCQWdRSWxJ
QUFVaEpLQWdRSUVDQkFnQUFCQWdTbUN3Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2dKYUVrUUlB
QQpBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFF
Q0JLWUxDQ0RUaVZWQWdBQUJBZ1FJCkVDQkFnRUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURL
ZFdBVUVDQkFnUUlBQUFRSUVDSlNBQUZJU1NnSUVDQkFnUUlBQUFRSUUKcGdzSUlOT0pWVUNBQUFF
Q0JBZ1FJRUNBUUFrSUlDV2hKRUNBQUFFQ0JBZ1FJRUJndW9BQU1wMVlCUVFJRUNCQWdBQUJBZ1FJ
bElBQQpVaEpLQWdRSUVDQkFnQUFCQWdTbUN3Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2dKYUVr
UUlBQUFRSUVDQkFnUUdDNmdBQXluVmdGCkJBZ1FJRUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNB
QUFFQ0JLWUxDQ0RUaVZWQWdBQUJBZ1FJRUNCQWdFQUpDQ0Fsb1NSQWdBQUIKQWdRSUVDQkFZTHFB
QURLZFdBVUVDQkFnUUlBQUFRSUVDSlNBQUZJU1NnSUVDQkFnUUlBQUFRSUVwZ3NJSU5PSlZVQ0FB
QUVDQkFnUQpJRUNBUUFrSUlDV2hKRUNBQUFFQ0JBZ1FJRUJndW9BQU1wMVlCUVFJRUNCQWdBQUJB
Z1FJbElBQVVoSktBZ1FJRUNCQWdBQUJBZ1NtCkN3Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2dK
YUVrUUlBQUFRSUVDQkFnUUdDNmdBQXluVmdGQkFnUUlFQ0FBQUVDQkFpVWdBQlMKRWtvQ0JBZ1FJ
RUNBQUFFQ0JLWUxDQ0RUaVZWQWdBQUJBZ1FJRUNCQWdFQUpDQ0Fsb1NSQWdBQUJBZ1FJRUNCQVlM
cUFBREtkV0FVRQpDQkFnUUlBQUFRSUVDSlNBQUZJU1NnSUVDQkFnUUlBQUFRSUVwZ3NJSU5PSlZV
Q0FBQUVDQkFnUUlFQ0FRQWtJSUNXaEpFQ0FBQUVDCkJBZ1FJRUJndW9BQU1wMVlCUVFJRUNCQWdB
QUJBZ1FJbElBQVVoSktBZ1FJRUNCQWdBQUJBZ1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWcKUUlCQUNR
Z2dKYUVrUUlBQUFRSUVDQkFnUUdDNmdBQXluVmdGQkFnUUlFQ0FBQUVDQkFpVWdBQlNFa29DQkFn
UUlFQ0FBQUVDQktZTApDQ0RUaVZWQWdBQUJBZ1FJRUNCQWdFQUpDQ0Fsb1NSQWdBQUJBZ1FJRUNC
QVlMcUFBREtkV0FVRUNCQWdRSUFBQVFJRUNKU0FBRklTClNnSUVDQkFnUUlBQUFRSUVwZ3NJSU5P
SlZVQ0FBQUVDQkFnUUlFQ0FRQWtJSUNXaEpFQ0FBQUVDQkFnUUlFQmd1b0FBTXAxWUJRUUkKRUNC
QWdBQUJBZ1FJbElBQVVoSktBZ1FJRUNCQWdBQUJBZ1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWdRSUJB
Q1FnZ0phRWtRSUFBQVFJRQpDQkFnUUdDNmdBQXluVmdGQkFnUUlFQ0FBQUVDQkFpVWdBQlNFa29D
QkFnUUlFQ0FBQUVDQktZTENDRFRpVlZBZ0FBQkFnUUlFQ0JBCmdFQUpDQ0Fsb1NSQWdBQUJBZ1FJ
RUNCQVlMcUFBREtkV0FVRUNCQWdRSUFBQVFJRUNKU0FBRklTU2dJRUNCQWdRSUFBQVFJRXBnc0kK
SU5PSlZVQ0FBQUVDQkFnUUlFQ0FRQWtJSUNXaEpFQ0FBQUVDQkFnUUlFQmd1b0FBTXAxWUJRUUlF
Q0JBZ0FBQkFnUUlsSUFBVWhKSwpBZ1FJRUNCQWdBQUJBZ1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWdR
SUJBQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2Z0FBeW5WZ0ZCQWdRCklFQ0FBQUVDQkFpVWdBQlNF
a29DQkFnUUlFQ0FBQUVDQktZTENDRFRpVlZBZ0FBQkFnUUlFQ0JBZ0VBSkNDQWxvU1JBZ0FBQkFn
UUkKRUNCQVlMcUFBREtkV0FVRUNCQWdRSUFBQVFJRUNKU0FBRklTU2dJRUNCQWdRSUFBQVFJRXBn
c0lJTk9KVlVDQUFBRUNCQWdRSUVDQQpRQWtJSUNXaEpFQ0FBQUVDQkFnUUlFQmd1b0FBTXAxWUJR
UUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0FnUUlFQ0JBZ0FBQkFnU21Dd2dnCjA0bFZRSUFBQVFJRUNC
QWdRSUJBQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNCQWlVZ0FC
U0Vrb0MKQkFnUUlFQ0FBQUVDQktZTENDRFRpVlZBZ0FBQkFnUUlFQ0JBZ0VBSkNDQWxvU1JBZ0FB
QkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JBZwpRSUFBQVFJRUNKU0FBRklTU2dJRUNCQWdRSUFBQVFJ
RXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRCklFQmd1b0FBTXAx
WUJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0FnUUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFBUUlF
Q0JBZ1FJQkEKQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNCQWlV
Z0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NEVAppVlZBZ0FBQkFnUUlFQ0JBZ0VBSkNDQWxvU1JB
Z0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFCkNCQWdRSUFB
QVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3VvQUFN
cDFZQlFRSUVDQkEKZ0FBQkFnUUlsSUFBVWhKS0FnUUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFB
UUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlFQ0JBZwpRR0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNC
QWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKCkNDQWxv
U1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JBZ1FJ
QUFBUUlFcGdzSUlOT0oKVlVDQUFBRUNCQWdRSUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3Vv
QUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFVaEpLQWdRSQpFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJ
QUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNBCkFB
RUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKQ0NB
bG9TUkFnQUFCQWdRSUVDQkEKWUxxQUFES2RXQVVFQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JB
Z1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JBZ1FJRUNBUUFrSQpJQ1doSkVDQUFBRUNCQWdRSUVC
Z3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFVaEpLQWdRSUVDQkFnQUFCQWdTbUN3Z2cwNGxW
ClFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNB
QUFFQ0JBaVVnQUJTRWtvQ0JBZ1EKSUVDQUFBRUNCS1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFK
Q0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZFdBVUVDQkFnUUlBQQpBUUlFQ0pTQUFGSVNTZ0lF
Q0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JBZ1FJRUNBUUFrSUlDV2hKRUNBQUFFQ0JBZ1FJ
RUJnCnVvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFVaEpLQWdRSUVDQkFnQUFCQWdTbUN3Z2cw
NGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2cKSmFFa1FJQUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJ
RUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFFQ0JLWUxDQ0RUaVZWQQpnQUFCQWdRSUVDQkFn
RUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZFdBVUVDQkFnUUlBQUFRSUVDSlNBQUZJU1Nn
SUVDQkFnClFJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JBZ1FJRUNBUUFrSUlDV2hKRUNBQUFFQ0JB
Z1FJRUJndW9BQU1wMVlCUVFJRUNCQWdBQUIKQWdRSWxJQUFVaEpLQWdRSUVDQkFnQUFCQWdTbUN3
Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2dKYUVrUUlBQUFRSUVDQkFnUUdDNgpnQUF5blZnRkJB
Z1FJRUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFFQ0JLWUxDQ0RUaVZWQWdBQUJBZ1FJRUNC
QWdFQUpDQ0FsCm9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZFdBVUVDQkFnUUlBQUFRSUVDSlNBQUZJ
U1NnSUVDQkFnUUlBQUFRSUVwZ3NJSU5PSlZVQ0EKQUFFQ0JBZ1FJRUNBUUFrSUlDV2hKRUNBQUFF
Q0JBZ1FJRUJndW9BQU1wMVlCUVFJRUNCQWdBQUJBZ1FJbElBQVVoSktBZ1FJRUNCQQpnQUFCQWdT
bUN3Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2dKYUVrUUlBQUFRSUVDQkFnUUdDNmdBQXluVmdG
QkFnUUlFQ0FBQUVDCkJBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFFQ0JLWUxDQ0RUaVZWQWdBQUJBZ1FJ
RUNCQWdFQUpDQ0Fsb1NSQWdBQUJBZ1FJRUNCQVlMcUEKQURLZFdBVUVDQkFnUUlBQUFRSUVDSlNB
QUZJU1NnSUVDQkFnUUlBQUFRSUVwZ3NJSU5PSlZVQ0FBQUVDQkFnUUlFQ0FRQWtJSUNXaApKRUNB
QUFFQ0JBZ1FJRUJndW9BQU1wMVlCUVFJRUNCQWdBQUJBZ1FJbElBQVVoSktBZ1FJRUNCQWdBQUJB
Z1NtQ3dnZzA0bFZRSUFBCkFRSUVDQkFnUUlCQUNRZ2dKYUVrUUlBQUFRSUVDQkFnUUdDNmdBQXlu
VmdGQkFnUUlFQ0FBQUVDQkFpVWdBQlNFa29DQkFnUUlFQ0EKQUFFQ0JLWUxDQ0RUaVZWQWdBQUJB
Z1FJRUNCQWdFQUpDQ0Fsb1NSQWdBQUJBZ1FJRUNCQVlMcUFBREtkV0FVRUNCQWdRSUFBQVFJRQpD
SlNBQUZJU1NnSUVDQkFnUUlBQUFRSUVwZ3NJSU5PSlZVQ0FBQUVDQkFnUUlFQ0FRQWtJSUNXaEpF
Q0FBQUVDQkFnUUlFQmd1b0FBCk1wMVlCUVFJRUNCQWdBQUJBZ1FJbElBQVVoSktBZ1FJRUNCQWdB
QUJBZ1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWdRSUJBQ1FnZ0phRWsKUUlBQUFRSUVDQkFnUUdDNmdB
QXluVmdGQkFnUUlFQ0FBQUVDQkFpVWdBQlNFa29DQkFnUUlFQ0FBQUVDQktZTENDRFRpVlZBZ0FB
QgpBZ1FJRUNCQWdFQUpDQ0Fsb1NSQWdBQUJBZ1FJRUNCQVlMcUFBREtkV0FVRUNCQWdRSUFBQVFJ
RUNKU0FBRklTU2dJRUNCQWdRSUFBCkFRSUVwZ3NJSU5PSlZVQ0FBQUVDQkFnUUlFQ0FRQWtJSUNX
aEpFQ0FBQUVDQkFnUUlFQmd1b0FBTXAxWUJRUUlFQ0JBZ0FBQkFnUUkKbElBQVVoSktBZ1FJRUNC
QWdBQUJBZ1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWdRSUJBQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2
Z0FBeQpuVmdGQkFnUUlFQ0FBQUVDQkFpVWdBQlNFa29DQkFnUUlFQ0FBQUVDQktZTENDRFRpVlZB
Z0FBQkFnUUlFQ0JBZ0VBSkNDQWxvU1JBCmdBQUJBZ1FJRUNCQVlMcUFBREtkV0FVRUNCQWdRSUFB
QVFJRUNKU0FBRklTU2dJRUNCQWdRSUFBQVFJRXBnc0lJTk9KVlVDQUFBRUMKQkFnUUlFQ0FRQWtJ
SUNXaEpFQ0FBQUVDQkFnUUlFQmd1b0FBTXAxWUJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0FnUUlF
Q0JBZ0FBQgpBZ1NtQ3dnZzA0bFZRSUFBQVFJRUNCQWdRSUJBQ1FnZ0phRWtRSUFBQVFJRUNCQWdR
R0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNCQWlVCmdBQlNFa29DQkFnUUlFQ0FBQUVDQktZTENDRFRp
VlZBZ0FBQkFnUUlFQ0JBZ0VBSkNDQWxvU1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2QKV0FVRUNCQWdR
SUFBQVFJRUNKU0FBRklTU2dJRUNCQWdRSUFBQVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFB
a0lJQ1doSkVDQQpBQUVDQkFnUUlFQmd1b0FBTXAxWUJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0Fn
UUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFBUUlFCkNCQWdRSUJBQ1FnZ0phRWtRSUFBQVFJRUNC
QWdRR0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUMKQktZTEND
RFRpVlZBZ0FBQkFnUUlFQ0JBZ0VBSkNDQWxvU1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JB
Z1FJQUFBUUlFQ0pTQQpBRklTU2dJRUNCQWdRSUFBQVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVD
QVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3VvQUFNcDFZCkJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhK
S0FnUUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUEKQVFJ
RUNCQWdRR0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lM
Q0NEVGlWVkFnQUFCQWdRSQpFQ0JBZ0VBSkNDQWxvU1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVF
Q0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JBZ1FJQUFBUUlFCnBnc0lJTk9KVlVDQUFBRUNCQWdR
SUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUEK
VWhKS0FnUUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFB
UUlFQ0JBZ1FHQzZnQUF5blZnRgpCQWdRSUVDQUFBRUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNC
S1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKQ0NBbG9TUkFnQUFCCkFnUUlFQ0JBWUxxQUFES2RX
QVVFQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JB
Z1EKSUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJ
QUFVaEpLQWdRSUVDQkFnQUFCQWdTbQpDd2dnMDRsVlFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJ
QUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNBQUFFQ0JBaVVnQUJTCkVrb0NCQWdRSUVDQUFB
RUNCS1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURL
ZFdBVUUKQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFF
Q0JBZ1FJRUNBUUFrSUlDV2hKRUNBQUFFQwpCQWdRSUVCZ3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdR
SWxJQUFVaEpLQWdRSUVDQkFnQUFCQWdTbUN3Z2cwNGxWUUlBQUFRSUVDQkFnClFJQkFDUWdnSmFF
a1FJQUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNB
QUFFQ0JLWUwKQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFB
QURLZFdBVUVDQkFnUUlBQUFRSUVDSlNBQUZJUwpTb0taZURjQUFBWDRTVVJCVkFJRUNCQWdRSUFB
QVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRCklFQmd1b0FB
TXAxWUJRUUlFQ0JBZ0FBQkFnUUlsSUFBVWhKS0FnUUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJQUFB
UUlFQ0JBZ1FJQkEKQ1FnZ0phRWtRSUFBQVFJRUNCQWdRR0M2Z0FBeW5WZ0ZCQWdRSUVDQUFBRUNC
QWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NEVAppVlZBZ0FBQkFnUUlFQ0JBZ0VBSkNDQWxv
U1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFCkNCQWdR
SUFBQVFJRXBnc0lJTk9KVlVDQUFBRUNCQWdRSUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVCZ3Vv
QUFNcDFZQlFRSUVDQkEKZ0FBQkFnUUlsSUFBVWhKS0FnUUlFQ0JBZ0FBQkFnU21Dd2dnMDRsVlFJ
QUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlFQ0JBZwpRR0M2Z0FBeW5WZ0ZCQWdRSUVDQUFB
RUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFKCkND
QWxvU1JBZ0FBQkFnUUlFQ0JBWUxxQUFES2RXQVVFQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lFQ0JB
Z1FJQUFBUUlFcGdzSUlOT0oKVlVDQUFBRUNCQWdRSUVDQVFBa0lJQ1doSkVDQUFBRUNCQWdRSUVC
Z3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFVaEpLQWdRSQpFQ0JBZ0FBQkFnU21Dd2dnMDRs
VlFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJRUNB
CkFBRUNCQWlVZ0FCU0Vrb0NCQWdRSUVDQUFBRUNCS1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFnRUFK
Q0NBbG9TUkFnQUFCQWdRSUVDQkEKWUxxQUFES2RXQVVFQ0JBZ1FJQUFBUUlFQ0pTQUFGSVNTZ0lF
Q0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JBZ1FJRUNBUUFrSQpJQ1doSkVDQUFBRUNCQWdR
SUVCZ3VvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFVaEpLQWdRSUVDQkFnQUFCQWdTbUN3Z2cw
NGxWClFJQUFBUUlFQ0JBZ1FJQkFDUWdnSmFFa1FJQUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJBZ1FJ
RUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1EKSUVDQUFBRUNCS1lMQ0NEVGlWVkFnQUFCQWdRSUVDQkFn
RUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZFdBVUVDQkFnUUlBQQpBUUlFQ0pTQUFGSVNT
Z0lFQ0JBZ1FJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JBZ1FJRUNBUUFrSUlDV2hKRUNBQUFFQ0JB
Z1FJRUJnCnVvQUFNcDFZQlFRSUVDQkFnQUFCQWdRSWxJQUFVaEpLQWdRSUVDQkFnQUFCQWdTbUN3
Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2cKSmFFa1FJQUFBUUlFQ0JBZ1FHQzZnQUF5blZnRkJB
Z1FJRUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFFQ0JLWUxDQ0RUaVZWQQpnQUFCQWdRSUVD
QkFnRUFKQ0NBbG9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZFdBVUVDQkFnUUlBQUFRSUVDSlNBQUZJ
U1NnSUVDQkFnClFJQUFBUUlFcGdzSUlOT0pWVUNBQUFFQ0JBZ1FJRUNBUUFrSUlDV2hKRUNBQUFF
Q0JBZ1FJRUJndW9BQU1wMVlCUVFJRUNCQWdBQUIKQWdRSWxJQUFVaEpLQWdRSUVDQkFnQUFCQWdT
bUN3Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2dKYUVrUUlBQUFRSUVDQkFnUUdDNgpnQUF5blZn
RkJBZ1FJRUNBQUFFQ0JBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFFQ0JLWUxDQ0RUaVZWQWdBQUJBZ1FJ
RUNCQWdFQUpDQ0FsCm9TUkFnQUFCQWdRSUVDQkFZTHFBQURLZFdBVUVDQkFnUUlBQUFRSUVDSlNB
QUZJU1NnSUVDQkFnUUlBQUFRSUVwZ3NJSU5PSlZVQ0EKQUFFQ0JBZ1FJRUNBUUFrSUlDV2hKRUNB
QUFFQ0JBZ1FJRUJndW9BQU1wMVlCUVFJRUNCQWdBQUJBZ1FJbElBQVVoSktBZ1FJRUNCQQpnQUFC
QWdTbUN3Z2cwNGxWUUlBQUFRSUVDQkFnUUlCQUNRZ2dKYUVrUUlBQUFRSUVDQkFnUUdDNmdBQXlu
VmdGQkFnUUlFQ0FBQUVDCkJBaVVnQUJTRWtvQ0JBZ1FJRUNBQUFFQ0JLWUxDQ0RUaVZWQWdBQUJB
Z1FJRUNCQWdFQUpDQ0Fsb1NSQWdBQUJBZ1FJRUNCQVlMcUEKQURLZFdBVUVDQkFnUUlBQUFRSUVD
SlNBQUZJU1NnSUVDQkFnUUlBQUFRSUVwZ3NJSU5PSlZVQ0FBQUVDQkFnUUlFQ0FRQW44ZjBrawpW
d0NQR3NFUEFBQUFBRWxGVGtTdVFtQ0MKCg==
</data>
<flag name="review"
          id="48085"
          type_id="1"
          status="+"
          setter="krit"
    />
          </attachment>
      

    </bug>

</bugzilla>