<?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>68071</bug_id>
          
          <creation_ts>2011-09-14 02:39:23 -0700</creation_ts>
          <short_desc>Rename FrameLoaderClient::allowImages to FrameLoaderClient::allowImage and include the image URL as parameter</short_desc>
          <delta_ts>2011-09-16 22:51:24 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>jochen</reporter>
          <assigned_to>jochen</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>fishd</cc>
    
    <cc>marja</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>466942</commentid>
    <comment_count>0</comment_count>
    <who name="">jochen</who>
    <bug_when>2011-09-14 02:39:23 -0700</bug_when>
    <thetext>Include the image URL in the call to FrameLoaderClient::allowImages</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466947</commentid>
    <comment_count>1</comment_count>
      <attachid>107312</attachid>
    <who name="">jochen</who>
    <bug_when>2011-09-14 02:41:03 -0700</bug_when>
    <thetext>Created attachment 107312
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466965</commentid>
    <comment_count>2</comment_count>
      <attachid>107312</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-14 04:13:00 -0700</bug_when>
    <thetext>Comment on attachment 107312
Patch

Attachment 107312 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/9661453</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467042</commentid>
    <comment_count>3</comment_count>
      <attachid>107312</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-09-14 08:52:37 -0700</bug_when>
    <thetext>Comment on attachment 107312
Patch

Could you please provide rationale for this change?

The patch is not acceptable as is because &quot;allowImages&quot; function name becomes incorrect, but let&apos;s take a step back to figure out whether this is something that should be in WebKit, and whether there is already a way to achieve what you need.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467191</commentid>
    <comment_count>4</comment_count>
    <who name="">jochen</who>
    <bug_when>2011-09-14 11:50:38 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 107312 [details])
&gt; Could you please provide rationale for this change?

sorry for not including that info in the first place.

I want to be able to block images from certain security origins. A user might want to allow images from the first party origin only, or always block images from a certain origin.

&gt; 
&gt; The patch is not acceptable as is because &quot;allowImages&quot; function name becomes incorrect, but let&apos;s take a step back to figure out whether this is something that should be in WebKit, and whether there is already a way to achieve what you need.

That&apos;s a good point. The least would be to rename allowImages to allowImage, as it would now talk about a specific image.

An alternative would be to fail the network requests for the unwanted images, however, this would display the &quot;broken image&quot; icons instead of just nothing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467192</commentid>
    <comment_count>5</comment_count>
      <attachid>107312</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-14 11:51:18 -0700</bug_when>
    <thetext>Comment on attachment 107312
Patch

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

&gt; Source/WebCore/ChangeLog:7
&gt; +        Include the image URL in the call to FrameLoaderClient::allowImages
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=68071
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +

One thing that might be helpful is to add more information to the ChangeLog explaining why you&apos;re interested in making this change.  The ChangeLog entry is an important part of communicating the &quot;why&quot; behind a change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467214</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-09-14 12:08:48 -0700</bug_when>
    <thetext>&gt; An alternative would be to fail the network requests for the unwanted images, however, this would display the &quot;broken image&quot; icons instead of just nothing.

WebCore asks whether to display it via shouldPaintBrokenImage() FrameLoaderClient call.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467223</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-14 12:11:46 -0700</bug_when>
    <thetext>Failing the request at the network level doesn&apos;t seem like the best approach.  Whether to load an image seems like a policy decision and policy decisions should be made by the Client not the Platform.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467237</commentid>
    <comment_count>8</comment_count>
      <attachid>107373</attachid>
    <who name="">jochen</who>
    <bug_when>2011-09-14 12:27:35 -0700</bug_when>
    <thetext>Created attachment 107373
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467239</commentid>
    <comment_count>9</comment_count>
      <attachid>107373</attachid>
    <who name="">jochen</who>
    <bug_when>2011-09-14 12:28:38 -0700</bug_when>
    <thetext>Comment on attachment 107373
Patch

I&apos;ve changed allowImages to allowImage and added more information to the changelog entry in WebCore/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467246</commentid>
    <comment_count>10</comment_count>
      <attachid>107373</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-14 12:34:10 -0700</bug_when>
    <thetext>Comment on attachment 107373
Patch

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

This is looking good, but we probably should iterate another time.

&gt; Source/WebCore/loader/FrameLoaderClient.h:307
&gt;          virtual bool allowJavaScript(bool enabledPerSettings) { return enabledPerSettings; }
&gt;          virtual bool allowPlugins(bool enabledPerSettings) { return enabledPerSettings; }
&gt; -        virtual bool allowImages(bool enabledPerSettings) { return enabledPerSettings; }
&gt; +        virtual bool allowImage(const KURL&amp; imageURL, bool enabledPerSettings) { return enabledPerSettings; }
&gt;          virtual bool allowDisplayingInsecureContent(bool enabledPerSettings, SecurityOrigin*, const KURL&amp;) { return enabledPerSettings; }
&gt;          virtual bool allowRunningInsecureContent(bool enabledPerSettings, SecurityOrigin*, const KURL&amp;) { return enabledPerSettings; }

To make these consistent, perhaps the URL should be the last parameter?  Do we also need a didNotAllowImage to parallel didNotAllowPlugins?  Perhaps there isn&apos;t any code that needs to know whether images are allowed without being about to load an image.

&gt; Source/WebCore/loader/cache/CachedResourceLoader.cpp:131
&gt; +        KURL requestURL = request.url();
&gt; +        if (!f-&gt;loader()-&gt;client()-&gt;allowImage(requestURL, !settings || settings-&gt;areImagesEnabled()))

I see that the loading-from-the-MemoryCache case is handled here.

&gt; Tools/DumpRenderTree/chromium/WebPermissions.h:42
&gt; -    virtual bool allowImages(WebKit::WebFrame*, bool enabledPerSettings);
&gt; +    virtual bool allowImage(WebKit::WebFrame*, const WebKit::WebURL&amp; imageURL, bool enabledPerSettings);

It would be ideal to add a LayoutTest to exercise this new policy lever.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467256</commentid>
    <comment_count>11</comment_count>
    <who name="">jochen</who>
    <bug_when>2011-09-14 12:40:30 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 107373 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=107373&amp;action=review
&gt; 
&gt; This is looking good, but we probably should iterate another time.
&gt; 
&gt; &gt; Source/WebCore/loader/FrameLoaderClient.h:307
&gt; &gt;          virtual bool allowJavaScript(bool enabledPerSettings) { return enabledPerSettings; }
&gt; &gt;          virtual bool allowPlugins(bool enabledPerSettings) { return enabledPerSettings; }
&gt; &gt; -        virtual bool allowImages(bool enabledPerSettings) { return enabledPerSettings; }
&gt; &gt; +        virtual bool allowImage(const KURL&amp; imageURL, bool enabledPerSettings) { return enabledPerSettings; }
&gt; &gt;          virtual bool allowDisplayingInsecureContent(bool enabledPerSettings, SecurityOrigin*, const KURL&amp;) { return enabledPerSettings; }
&gt; &gt;          virtual bool allowRunningInsecureContent(bool enabledPerSettings, SecurityOrigin*, const KURL&amp;) { return enabledPerSettings; }
&gt; 
&gt; To make these consistent, perhaps the URL should be the last parameter?  Do we also need a didNotAllowImage to parallel didNotAllowPlugins?  Perhaps there isn&apos;t any code that needs to know whether images are allowed without being about to load an image.

Right, I didn&apos;t see a place where we&apos;d just check the setting.

&gt; 
&gt; &gt; Source/WebCore/loader/cache/CachedResourceLoader.cpp:131
&gt; &gt; +        KURL requestURL = request.url();
&gt; &gt; +        if (!f-&gt;loader()-&gt;client()-&gt;allowImage(requestURL, !settings || settings-&gt;areImagesEnabled()))
&gt; 
&gt; I see that the loading-from-the-MemoryCache case is handled here.
&gt; 
&gt; &gt; Tools/DumpRenderTree/chromium/WebPermissions.h:42
&gt; &gt; -    virtual bool allowImages(WebKit::WebFrame*, bool enabledPerSettings);
&gt; &gt; +    virtual bool allowImage(WebKit::WebFrame*, const WebKit::WebURL&amp; imageURL, bool enabledPerSettings);
&gt; 
&gt; It would be ideal to add a LayoutTest to exercise this new policy lever.

I have a patch that adds layoutTestController.dumpPermissionClientCallbacks() and it would then print the URL passed the allowImage(). However, the layout test is run from file: so the URL depends on the location of your checkout.

A possible solution was to run this test over http. Or to strip everything before LayoutTests/ if the URL is a file: URL.

wdyt?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467259</commentid>
    <comment_count>12</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-09-14 12:43:17 -0700</bug_when>
    <thetext>I just noticed that this functionality is Chromium only.

I guess one thing for you to consider in review is whether you want to make policy decision based on original or final URL in case of redirect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467260</commentid>
    <comment_count>13</comment_count>
    <who name="">jochen</who>
    <bug_when>2011-09-14 12:46:09 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; I just noticed that this functionality is Chromium only.
&gt; 
&gt; I guess one thing for you to consider in review is whether you want to make policy decision based on original or final URL in case of redirect.

Good point. We should probably check the policy for both URLs (actually all URLs if it&apos;s a redirect chain, but I guess that&apos;s not yet possible).

Adam, what do you think?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467268</commentid>
    <comment_count>14</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-14 12:57:21 -0700</bug_when>
    <thetext>&gt; I have a patch that adds layoutTestController.dumpPermissionClientCallbacks() and it would then print the URL passed the allowImage(). However, the layout test is run from file: so the URL depends on the location of your checkout.
&gt; 
&gt; A possible solution was to run this test over http. Or to strip everything before LayoutTests/ if the URL is a file: URL.

This issue comes up in a bunch of places.  DumpRenderTree should already have code to normalize file URLs.  I know that happens for console messages, for example.

&gt; &gt; I guess one thing for you to consider in review is whether you want to make policy decision based on original or final URL in case of redirect.
&gt; 
&gt; Good point. We should probably check the policy for both URLs (actually all URLs if it&apos;s a redirect chain, but I guess that&apos;s not yet possible).
&gt; 
&gt; Adam, what do you think?

I would go with the final URL.  This is also an important case to test.  Basically, the question boils down to whether you want to control which sorts of images are displayed or whether you want to control which sorts of network requests the user agent makes.  In this case, it seems clear we&apos;re talking about which sorts of images are displayed, so, like canvas taint, we want to use the final URL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467843</commentid>
    <comment_count>15</comment_count>
    <who name="">jochen</who>
    <bug_when>2011-09-15 09:13:40 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; &gt; I have a patch that adds layoutTestController.dumpPermissionClientCallbacks() and it would then print the URL passed the allowImage(). However, the layout test is run from file: so the URL depends on the location of your checkout.
&gt; &gt; 
&gt; &gt; A possible solution was to run this test over http. Or to strip everything before LayoutTests/ if the URL is a file: URL.
&gt; 
&gt; This issue comes up in a bunch of places.  DumpRenderTree should already have code to normalize file URLs.  I know that happens for console messages, for example.
&gt; 
&gt; &gt; &gt; I guess one thing for you to consider in review is whether you want to make policy decision based on original or final URL in case of redirect.
&gt; &gt; 
&gt; &gt; Good point. We should probably check the policy for both URLs (actually all URLs if it&apos;s a redirect chain, but I guess that&apos;s not yet possible).
&gt; &gt; 
&gt; &gt; Adam, what do you think?
&gt; 
&gt; I would go with the final URL.  This is also an important case to test.  Basically, the question boils down to whether you want to control which sorts of images are displayed or whether you want to control which sorts of network requests the user agent makes.  In this case, it seems clear we&apos;re talking about which sorts of images are displayed, so, like canvas taint, we want to use the final URL.

I think the first URL is as import, as we can here still avoid any network traffic. If the user uses this option to save network traffic, we should also check the policy before starting the request at all</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467940</commentid>
    <comment_count>16</comment_count>
      <attachid>107373</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-15 11:34:37 -0700</bug_when>
    <thetext>Comment on attachment 107373
Patch

Ok.  The safest thing is to put the check in CachedResourceLoader::canRequest, which gets called for the first and final URLs.  It&apos;s supposed to get called for each redirect too, but I think that doesn&apos;t work quite right in 100% of cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468462</commentid>
    <comment_count>17</comment_count>
      <attachid>107643</attachid>
    <who name="">jochen</who>
    <bug_when>2011-09-16 07:05:56 -0700</bug_when>
    <thetext>Created attachment 107643
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468506</commentid>
    <comment_count>18</comment_count>
      <attachid>107643</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-09-16 08:45:13 -0700</bug_when>
    <thetext>Comment on attachment 107643
Patch

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

&gt; Source/WebCore/loader/FrameLoaderClient.h:305
&gt; +        virtual bool allowImage(bool enabledPerSettings, const KURL&amp; imageURL) { return enabledPerSettings; }

Seems like this will break some builds (unused argument).

&gt; Source/WebCore/loader/cache/CachedResourceLoader.cpp:295
&gt; +        if (Frame* f = frame()) {

Please don&apos;t abbr.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468588</commentid>
    <comment_count>19</comment_count>
      <attachid>107643</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-16 10:36:08 -0700</bug_when>
    <thetext>Comment on attachment 107643
Patch

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

&gt;&gt; Source/WebCore/loader/cache/CachedResourceLoader.cpp:295
&gt;&gt; +        if (Frame* f = frame()) {
&gt; 
&gt; Please don&apos;t abbr.

We do occasionally abbreviate Frame as f if the current object has a method called frame() to avoid shadowing.  You can see some other examples of that in this file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468590</commentid>
    <comment_count>20</comment_count>
      <attachid>107643</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-16 10:38:38 -0700</bug_when>
    <thetext>Comment on attachment 107643
Patch

Once we have a test for the redirect case (and the build fix), this is probably ready to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468593</commentid>
    <comment_count>21</comment_count>
      <attachid>107682</attachid>
    <who name="">jochen</who>
    <bug_when>2011-09-16 10:39:08 -0700</bug_when>
    <thetext>Created attachment 107682
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468609</commentid>
    <comment_count>22</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-09-16 10:54:30 -0700</bug_when>
    <thetext>&gt; We do occasionally abbreviate Frame as f if the current object has a method called frame() to avoid shadowing.  You can see some other examples of that in this file.

Yes, it&apos;s visible even in patch context. I agree with Darin when he tells to not copy such style issues to new code even if they are present elsewhere in old code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468625</commentid>
    <comment_count>23</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-16 11:06:27 -0700</bug_when>
    <thetext>&gt; Yes, it&apos;s visible even in patch context. I agree with Darin when he tells to not copy such style issues to new code even if they are present elsewhere in old code.

Is there a better way to handle this situation?  Shadowing the frame() member function seems suboptimal.  I guess we could use a name other than &quot;f&quot; and other than &quot;frame&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468680</commentid>
    <comment_count>24</comment_count>
    <who name="">jochen</who>
    <bug_when>2011-09-16 11:51:24 -0700</bug_when>
    <thetext>(In reply to comment #23)
&gt; &gt; Yes, it&apos;s visible even in patch context. I agree with Darin when he tells to not copy such style issues to new code even if they are present elsewhere in old code.
&gt; 
&gt; Is there a better way to handle this situation?  Shadowing the frame() member function seems suboptimal.  I guess we could use a name other than &quot;f&quot; and other than &quot;frame&quot;.

I could just invoke frame() everytime. I&apos;d expect the compiler to optimize this away</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468792</commentid>
    <comment_count>25</comment_count>
      <attachid>107719</attachid>
    <who name="">jochen</who>
    <bug_when>2011-09-16 13:47:25 -0700</bug_when>
    <thetext>Created attachment 107719
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468795</commentid>
    <comment_count>26</comment_count>
      <attachid>107719</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-16 13:55:38 -0700</bug_when>
    <thetext>Comment on attachment 107719
Patch

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

&gt; Source/WebKit/chromium/public/WebPermissionClient.h:52
&gt; +    virtual bool allowImage(WebFrame* frame, bool enabledPerSettings, const WebURL&amp; imageURL) { return allowImages(frame, enabledPerSettings); }
&gt; +    // FIXME: remove once chromium side has landed.
&gt;      virtual bool allowImages(WebFrame*, bool enabledPerSettings) { return enabledPerSettings; }

Technically we need fishd to review this part of the change, but I think this case is ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468796</commentid>
    <comment_count>27</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-09-16 13:56:14 -0700</bug_when>
    <thetext>@fishd: There&apos;s a tiny WebKit API change in this patch, which you might want to look at.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468824</commentid>
    <comment_count>28</comment_count>
      <attachid>107719</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2011-09-16 14:55:44 -0700</bug_when>
    <thetext>Comment on attachment 107719
Patch

API changes LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>469039</commentid>
    <comment_count>29</comment_count>
      <attachid>107719</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-16 22:51:17 -0700</bug_when>
    <thetext>Comment on attachment 107719
Patch

Clearing flags on attachment: 107719

Committed r95369: &lt;http://trac.webkit.org/changeset/95369&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>469040</commentid>
    <comment_count>30</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-16 22:51:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107312</attachid>
            <date>2011-09-14 02:41:03 -0700</date>
            <delta_ts>2011-09-14 12:27:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68071-20110914114101.patch</filename>
            <type>text/plain</type>
            <size>9798</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUwMjYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlZGMzZTYwMjMyZjcxYTJk
NmU1MDFiZmQ3ODdkYmEzMDg5NTU1YmMwLi5kZDMzZWM4MjE1ZTIxZmJiZThhYTRhNmQwZGIzOGQ3
ZjkzMjlkZDUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDktMTQgIEpvY2hl
biBFaXNpbmdlciAgPGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5jbHVkZSB0aGUg
aW1hZ2UgVVJMIGluIHRoZSBjYWxsIHRvIEZyYW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlcwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0bWwvSW1h
Z2VEb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZURvY3VtZW50UGFyc2VyOjph
cHBlbmRCeXRlcyk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAg
ICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZXMpOgorICAgICAgICAq
IGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdEltYWdlKToKKwogMjAxMS0wOS0xMyAgU2hl
cmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZp
ZXdlZCwgcm9sbGluZyBvdXQgcjk1MDI1LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9JbWFnZURvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEb2N1bWVudC5j
cHAKaW5kZXggZGRjYjAzZmI0ZGE2OGFhOTdjNmUxMDQ3YjQ2MzllZmZlZmFkY2IyZC4uNmMxNTI1
Y2EyMjI0NTg4ZWRlZjE5NmNiZTZiNmZkYjQ5MzMxNjk3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9JbWFnZURvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lt
YWdlRG9jdW1lbnQuY3BwCkBAIC0xMjgsNyArMTI4LDcgQEAgdm9pZCBJbWFnZURvY3VtZW50UGFy
c2VyOjphcHBlbmRCeXRlcyhEb2N1bWVudFdyaXRlciosIGNvbnN0IGNoYXIqLCBzaXplX3QpCiB7
CiAgICAgRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJhbWUoKTsKICAgICBTZXR0aW5ncyog
c2V0dGluZ3MgPSBmcmFtZS0+c2V0dGluZ3MoKTsKLSAgICBpZiAoIWZyYW1lLT5sb2FkZXIoKS0+
Y2xpZW50KCktPmFsbG93SW1hZ2VzKCFzZXR0aW5ncyB8fCBzZXR0aW5ncy0+YXJlSW1hZ2VzRW5h
YmxlZCgpKSkKKyAgICBpZiAoIWZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCktPmFsbG93SW1hZ2Vz
KGRvY3VtZW50KCktPnVybCgpLCAhc2V0dGluZ3MgfHwgc2V0dGluZ3MtPmFyZUltYWdlc0VuYWJs
ZWQoKSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIENhY2hlZEltYWdlKiBjYWNoZWRJbWFnZSA9
IGRvY3VtZW50KCktPmNhY2hlZEltYWdlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxv
YWRlckNsaWVudC5oCmluZGV4IGMyMTE3ZWIyNGEzOWU4ZGNlMTJmMjdmMjljMGZmMDgzOTVlNjNk
YjcuLjQ4YjczMzFhMTU0NTg3MWE1ZDc0MWQwMmQzZTZlYjJhMDUyYTdjYzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCkBAIC0zMDIsNyArMzAyLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1YWwgYm9vbCBhbGxvd0phdmFTY3JpcHQo
Ym9vbCBlbmFibGVkUGVyU2V0dGluZ3MpIHsgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsgfQog
ICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dQbHVnaW5zKGJvb2wgZW5hYmxlZFBlclNldHRpbmdz
KSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7IH0KLSAgICAgICAgdmlydHVhbCBib29sIGFs
bG93SW1hZ2VzKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSB7IHJldHVybiBlbmFibGVkUGVyU2V0
dGluZ3M7IH0KKyAgICAgICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2VzKGNvbnN0IEtVUkwmIGlt
YWdlVVJMLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gZW5hYmxlZFBlclNldHRp
bmdzOyB9CiAgICAgICAgIHZpcnR1YWwgYm9vbCBhbGxvd0Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRl
bnQoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsIFNlY3VyaXR5T3JpZ2luKiwgY29uc3QgS1VSTCYp
IHsgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsgfQogICAgICAgICB2aXJ0dWFsIGJvb2wgYWxs
b3dSdW5uaW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBTZWN1cml0
eU9yaWdpbiosIGNvbnN0IEtVUkwmKSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7IH0KICAg
ICAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlTG9hZGVyLmNwcAppbmRleCAyYjkzMmM1MmE3MzM2ZWIyOTQ0ZTVmNjQ4MmQ4NTVmZjAwOGVi
NDM5Li4xYTcwMmE3YzJmOGEwYmNlNTk3ZGRjMGEyMzA1YjA2MDc0NmI3NzU1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAK
QEAgLTEyNywxMSArMTI3LDExIEBAIENhY2hlZEltYWdlKiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
cmVxdWVzdEltYWdlKFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBpZiAoRnJhbWUq
IGYgPSBmcmFtZSgpKSB7CiAgICAgICAgIFNldHRpbmdzKiBzZXR0aW5ncyA9IGYtPnNldHRpbmdz
KCk7Ci0gICAgICAgIGlmICghZi0+bG9hZGVyKCktPmNsaWVudCgpLT5hbGxvd0ltYWdlcyghc2V0
dGluZ3MgfHwgc2V0dGluZ3MtPmFyZUltYWdlc0VuYWJsZWQoKSkpCisgICAgICAgIEtVUkwgcmVx
dWVzdFVSTCA9IHJlcXVlc3QudXJsKCk7CisgICAgICAgIGlmICghZi0+bG9hZGVyKCktPmNsaWVu
dCgpLT5hbGxvd0ltYWdlcyhyZXF1ZXN0VVJMLCAhc2V0dGluZ3MgfHwgc2V0dGluZ3MtPmFyZUlt
YWdlc0VuYWJsZWQoKSkpCiAgICAgICAgICAgICByZXR1cm4gMDsKIAogICAgICAgICBpZiAoZi0+
bG9hZGVyKCktPnBhZ2VEaXNtaXNzYWxFdmVudEJlaW5nRGlzcGF0Y2hlZCgpICE9IEZyYW1lTG9h
ZGVyOjpOb0Rpc21pc3NhbCkgewotICAgICAgICAgICAgS1VSTCByZXF1ZXN0VVJMID0gcmVxdWVz
dC51cmwoKTsKICAgICAgICAgICAgIGlmIChyZXF1ZXN0VVJMLmlzVmFsaWQoKSAmJiBjYW5SZXF1
ZXN0KENhY2hlZFJlc291cmNlOjpJbWFnZVJlc291cmNlLCByZXF1ZXN0VVJMKSkKICAgICAgICAg
ICAgICAgICBQaW5nTG9hZGVyOjpsb2FkSW1hZ2UoZiwgcmVxdWVzdFVSTCk7CiAgICAgICAgICAg
ICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMDE2ZWNmOTgzZDgyNmJm
MzZjMDA2ZmM0ZTNkODVkNDAwMzVkYzE4MS4uZTVjOGY2Yzk2MWNmYTU2MGQzZmQ4ZjNiNzFlNDhl
MGEwMzJkN2M2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAor
MjAxMS0wOS0xNCAgSm9jaGVuIEVpc2luZ2VyICA8am9jaGVuQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBJbmNsdWRlIHRoZSBpbWFnZSBVUkwgaW4gdGhlIGNhbGwgdG8gRnJhbWVMb2FkZXJDbGll
bnQ6OmFsbG93SW1hZ2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD02ODA3MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogcHVibGljL1dlYlBlcm1pc3Npb25DbGllbnQuaDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGVybWlzc2lvbkNsaWVudDo6YWxsb3dJbWFnZXMpOgorICAgICAgICAqIHNyYy9GcmFtZUxv
YWRlckNsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpGcmFtZUxvYWRlckNsaWVudElt
cGw6OmFsbG93SW1hZ2VzKToKKyAgICAgICAgKiBzcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmg6
CisKIDIwMTEtMDktMTIgIEZ1bWl0b3NoaSBVa2FpICA8dWthaUBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgVW5yZXZpZXdlZC4gUm9sbCBERVBTIGFnYWluLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViUGVybWlzc2lvbkNsaWVudC5oIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViUGVybWlzc2lvbkNsaWVudC5oCmluZGV4IGIwMDFiMjI2Njc3
MTViZWZmZjE1MjA3NWQyZjYwNTliNTQ4ZTQyOGQuLjhkZGNlMjU3NTEyM2FlZDNjMWIyYThjMmM5
YWE0NGE3YmZmNDgwM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYlBlcm1pc3Npb25DbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJQZXJtaXNzaW9uQ2xpZW50LmgKQEAgLTQ3LDYgKzQ3LDggQEAgcHVibGljOgogICAgIHZp
cnR1YWwgYm9vbCBhbGxvd0ZpbGVTeXN0ZW0oV2ViRnJhbWUqKSB7IHJldHVybiB0cnVlOyB9CiAK
ICAgICAvLyBDb250cm9scyB3aGV0aGVyIGltYWdlcyBhcmUgYWxsb3dlZCBmb3IgdGhpcyBmcmFt
ZS4KKyAgICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFnZXMoV2ViRnJhbWUqIGZyYW1lLCBjb25zdCBX
ZWJVUkwmIGltYWdlVVJMLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gYWxsb3dJ
bWFnZXMoZnJhbWUsIGVuYWJsZWRQZXJTZXR0aW5ncyk7IH0KKyAgICAvLyBGSVhNRTogcmVtb3Zl
IG9uY2UgY2hyb21pdW0gc2lkZSBoYXMgbGFuZGVkLgogICAgIHZpcnR1YWwgYm9vbCBhbGxvd0lt
YWdlcyhXZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSB7IHJldHVybiBlbmFibGVk
UGVyU2V0dGluZ3M7IH0KIAogICAgIC8vIENvbnRyb2xzIHdoZXRoZXIgYWNjZXNzIHRvIEluZGV4
ZWQgREIgYXJlIGFsbG93ZWQgZm9yIHRoaXMgZnJhbWUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcAppbmRleCBlMjRiZDNhNjA5
YTU2NjU4Nzg0NjAzMWY2ZDYwZmRiYTRiNTU5OGFkLi5kNjhhNjZlODFmM2RhNzFhZDcxNWFkNjQy
ZGY2MzJkOTI0NGM5ZWJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9G
cmFtZUxvYWRlckNsaWVudEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKQEAgLTIwMiwxMSArMjAyLDExIEBAIGJvb2wgRnJh
bWVMb2FkZXJDbGllbnRJbXBsOjphbGxvd1BsdWdpbnMoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3Mp
CiAgICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsKIH0KIAotYm9vbCBGcmFtZUxvYWRlckNs
aWVudEltcGw6OmFsbG93SW1hZ2VzKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKQorYm9vbCBGcmFt
ZUxvYWRlckNsaWVudEltcGw6OmFsbG93SW1hZ2VzKGNvbnN0IEtVUkwmIGltYWdlVVJMLCBib29s
IGVuYWJsZWRQZXJTZXR0aW5ncykKIHsKICAgICBXZWJWaWV3SW1wbCogd2VidmlldyA9IG1fd2Vi
RnJhbWUtPnZpZXdJbXBsKCk7CiAgICAgaWYgKHdlYnZpZXcgJiYgd2Vidmlldy0+cGVybWlzc2lv
bkNsaWVudCgpKQotICAgICAgICByZXR1cm4gd2Vidmlldy0+cGVybWlzc2lvbkNsaWVudCgpLT5h
bGxvd0ltYWdlcyhtX3dlYkZyYW1lLCBlbmFibGVkUGVyU2V0dGluZ3MpOworICAgICAgICByZXR1
cm4gd2Vidmlldy0+cGVybWlzc2lvbkNsaWVudCgpLT5hbGxvd0ltYWdlcyhtX3dlYkZyYW1lLCBp
bWFnZVVSTCwgZW5hYmxlZFBlclNldHRpbmdzKTsKIAogICAgIHJldHVybiBlbmFibGVkUGVyU2V0
dGluZ3M7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxv
YWRlckNsaWVudEltcGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVy
Q2xpZW50SW1wbC5oCmluZGV4IDFhZmI4MTEyZDY3MGJhNWUxNGNlNDNkYWQxMzJmMjJmM2I2N2I3
ZjEuLjAzOTNkYjNmMWFjMzBmNDY3ZjBkMzEzNmI1YTg1YWRhNjQ4MzI1OTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oCkBAIC0y
MDcsNyArMjA3LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkaWRDaGFuZ2VTY3JvbGxP
ZmZzZXQoKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dKYXZhU2NyaXB0KGJvb2wgZW5hYmxlZFBl
clNldHRpbmdzKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dQbHVnaW5zKGJvb2wgZW5hYmxlZFBl
clNldHRpbmdzKTsKLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFnZXMoYm9vbCBlbmFibGVkUGVy
U2V0dGluZ3MpOworICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlcyhjb25zdCBXZWJDb3JlOjpL
VVJMJiBpbWFnZVVSTCwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpOwogICAgIHZpcnR1YWwgYm9v
bCBhbGxvd0Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnQoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3Ms
IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6S1VSTCYpOwogICAgIHZp
cnR1YWwgYm9vbCBhbGxvd1J1bm5pbmdJbnNlY3VyZUNvbnRlbnQoYm9vbCBlbmFibGVkUGVyU2V0
dGluZ3MsIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6S1VSTCYpOwog
ICAgIHZpcnR1YWwgdm9pZCBkaWROb3RBbGxvd1NjcmlwdCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMv
Q2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDc1YjM2YTczYmEwZjNhZmRjMDIyOTAz
Mzg5YTk0MDA3ZWM1ZmY1NzcuLmFiYzU0MmFjMTE2ZDVlN2MyNTUxZTdhMWM4NjUyYWI0MGM2NzQ4
YTIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNCBAQAorMjAxMS0wOS0xNCAgSm9jaGVuIEVpc2luZ2VyICA8am9jaGVuQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBJbmNsdWRlIHRoZSBpbWFnZSBVUkwgaW4gdGhlIGNhbGwgdG8g
RnJhbWVMb2FkZXJDbGllbnQ6OmFsbG93SW1hZ2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD02ODA3MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlz
c2lvbnMuY3BwOgorICAgICAgICAoV2ViUGVybWlzc2lvbnM6OmFsbG93SW1hZ2VzKToKKyAgICAg
ICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5oOgorCiAyMDExLTA5
LTEyICBMZWFuZHJvIFBlcmVpcmEgIDxsZWFuZHJvQHByb2Z1c2lvbi5tb2JpPgogCiAgICAgICAg
IFtFRkxdIERSVDogQWRkIER1bXBSZW5kZXJUcmVlRWZsLmgKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcCBiL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcAppbmRleCBiMjM4ZDVmYzUzN2EzYjE3
MTM2ZjFjZmE3YjU4OWJjMGU2MmFjOTRmLi4xNjUyNTExYzQyNjhlZDYzOGY1MGU0YzEwMGU4NmE3
ZDM4MGJkNjU4IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQ
ZXJtaXNzaW9ucy5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVy
bWlzc2lvbnMuY3BwCkBAIC00MCw3ICs0MCw3IEBAIFdlYlBlcm1pc3Npb25zOjp+V2ViUGVybWlz
c2lvbnMoKQogewogfQogCi1ib29sIFdlYlBlcm1pc3Npb25zOjphbGxvd0ltYWdlcyhXZWJLaXQ6
OldlYkZyYW1lKiwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpCitib29sIFdlYlBlcm1pc3Npb25z
OjphbGxvd0ltYWdlcyhXZWJLaXQ6OldlYkZyYW1lKiwgY29uc3QgV2ViS2l0OjpXZWJVUkwmIGlt
YWdlVVJMLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncykKIHsKICAgICByZXR1cm4gZW5hYmxlZFBl
clNldHRpbmdzICYmIG1faW1hZ2VzQWxsb3dlZDsKIH0KQEAgLTYwLDcgKzYwLDcgQEAgYm9vbCBX
ZWJQZXJtaXNzaW9uczo6YWxsb3dEaXNwbGF5aW5nSW5zZWN1cmVDb250ZW50KFdlYktpdDo6V2Vi
RnJhbWUqLCBib29sIGVuYWIKIHsKICAgICByZXR1cm4gZW5hYmxlZFBlclNldHRpbmdzIHx8IG1f
ZGlzcGxheWluZ0luc2VjdXJlQ29udGVudEFsbG93ZWQ7CiB9Ci0gCisKIGJvb2wgV2ViUGVybWlz
c2lvbnM6OmFsbG93UnVubmluZ0luc2VjdXJlQ29udGVudChXZWJLaXQ6OldlYkZyYW1lKiwgYm9v
bCBlbmFibGVkUGVyU2V0dGluZ3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgV2ViS2l0OjpXZWJTZWN1cml0eU9yaWdpbiYsIGNvbnN0IFdl
YktpdDo6V2ViVVJMJikKIHsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1dlYlBlcm1pc3Npb25zLmggYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQ
ZXJtaXNzaW9ucy5oCmluZGV4IDc4ZDk2YmFjNGVhZTQ2ZmNhMWUzYmI2ZGEzZjZlYzAyMzg4ZGEx
MTguLmVlOTYwZmRlYWMxNDVmYWJlMjJiMzA4NDVhN2VjYjkyN2I0ZjE4MDcgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmgKKysrIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlzc2lvbnMuaApAQCAtMzksNyArMzks
NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB+V2ViUGVybWlzc2lvbnMoKTsKIAogICAgIC8vIE92
ZXJyaWRlIFdlYlBlcm1pc3Npb25DbGllbnQgbWV0aG9kcy4KLSAgICB2aXJ0dWFsIGJvb2wgYWxs
b3dJbWFnZXMoV2ViS2l0OjpXZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKTsKKyAg
ICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFnZXMoV2ViS2l0OjpXZWJGcmFtZSosIGNvbnN0IFdlYktp
dDo6V2ViVVJMJiBpbWFnZVVSTCwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpOwogICAgIHZpcnR1
YWwgYm9vbCBhbGxvd1N0b3JhZ2UoV2ViS2l0OjpXZWJGcmFtZSosIGJvb2wgbG9jYWwpOwogICAg
IHZpcnR1YWwgYm9vbCBhbGxvd1BsdWdpbnMoV2ViS2l0OjpXZWJGcmFtZSosIGJvb2wgZW5hYmxl
ZFBlclNldHRpbmdzKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dEaXNwbGF5aW5nSW5zZWN1cmVD
b250ZW50KFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107373</attachid>
            <date>2011-09-14 12:27:35 -0700</date>
            <delta_ts>2011-09-16 07:05:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68071-20110914212732.patch</filename>
            <type>text/plain</type>
            <size>10050</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUwMjYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlZGMzZTYwMjMyZjcxYTJk
NmU1MDFiZmQ3ODdkYmEzMDg5NTU1YmMwLi44YjkyMGE2ZjQ1YTYwZGRhZDFjZTliMjZjODEwNjU2
YzAyNGJkYmEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDktMTQgIEpvY2hl
biBFaXNpbmdlciAgPGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1l
TG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFn
ZSBhbmQgaW5jbHVkZSB0aGUgaW1hZ2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBUaGlzIHdp
bGwgYWxsb3cgZW1iZWRkZXJzIHRvIGJsb2NrIGltYWdlcyBiYXNlZCBvbiB3aGVyZSB0aGUgaW1h
Z2UgaXMgbG9hZGVkIGZyb20sIGluc3RlYWQgb2YganVzdCBibG9ja2luZyBhbGwgaW1hZ2VzIGlu
IGEgZ2l2ZW4gZnJhbWUuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBodG1sL0ltYWdlRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1h
Z2VEb2N1bWVudFBhcnNlcjo6YXBwZW5kQnl0ZXMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxv
YWRlckNsaWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnQ6OmFsbG93
SW1hZ2UpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdEltYWdlKToK
KwogMjAxMS0wOS0xMyAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+
CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjk1MDI1LgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9JbWFnZURvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSW1hZ2VEb2N1bWVudC5jcHAKaW5kZXggZGRjYjAzZmI0ZGE2OGFhOTdjNmUxMDQ3YjQ2Mzll
ZmZlZmFkY2IyZC4uYjg0ZTI3YzQwYjgwODkyMmIyZTc0NjBhMDViMGE3OTgzZTIyNzkyNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbWFnZURvY3VtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwCkBAIC0xMjgsNyArMTI4LDcgQEAgdm9p
ZCBJbWFnZURvY3VtZW50UGFyc2VyOjphcHBlbmRCeXRlcyhEb2N1bWVudFdyaXRlciosIGNvbnN0
IGNoYXIqLCBzaXplX3QpCiB7CiAgICAgRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJhbWUo
KTsKICAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBmcmFtZS0+c2V0dGluZ3MoKTsKLSAgICBpZiAo
IWZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCktPmFsbG93SW1hZ2VzKCFzZXR0aW5ncyB8fCBzZXR0
aW5ncy0+YXJlSW1hZ2VzRW5hYmxlZCgpKSkKKyAgICBpZiAoIWZyYW1lLT5sb2FkZXIoKS0+Y2xp
ZW50KCktPmFsbG93SW1hZ2UoZG9jdW1lbnQoKS0+dXJsKCksICFzZXR0aW5ncyB8fCBzZXR0aW5n
cy0+YXJlSW1hZ2VzRW5hYmxlZCgpKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgQ2FjaGVkSW1h
Z2UqIGNhY2hlZEltYWdlID0gZG9jdW1lbnQoKS0+Y2FjaGVkSW1hZ2UoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggYzIxMTdlYjI0YTM5ZThkY2UxMmYy
N2YyOWMwZmYwODM5NWU2M2RiNy4uZjhhMzg0MWJkMGRhNTNiODZlZjhlY2M4YzYwNTNkOTRjMTIw
MzE3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTMw
Miw3ICszMDIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgdmlydHVhbCBib29s
IGFsbG93SmF2YVNjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gZW5hYmxl
ZFBlclNldHRpbmdzOyB9CiAgICAgICAgIHZpcnR1YWwgYm9vbCBhbGxvd1BsdWdpbnMoYm9vbCBl
bmFibGVkUGVyU2V0dGluZ3MpIHsgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsgfQotICAgICAg
ICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFnZXMoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpIHsgcmV0
dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsgfQorICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFn
ZShjb25zdCBLVVJMJiBpbWFnZVVSTCwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpIHsgcmV0dXJu
IGVuYWJsZWRQZXJTZXR0aW5nczsgfQogICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dEaXNwbGF5
aW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBTZWN1cml0eU9yaWdp
biosIGNvbnN0IEtVUkwmKSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7IH0KICAgICAgICAg
dmlydHVhbCBib29sIGFsbG93UnVubmluZ0luc2VjdXJlQ29udGVudChib29sIGVuYWJsZWRQZXJT
ZXR0aW5ncywgU2VjdXJpdHlPcmlnaW4qLCBjb25zdCBLVVJMJikgeyByZXR1cm4gZW5hYmxlZFBl
clNldHRpbmdzOyB9CiAgICAgICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggMmI5MzJjNTJhNzMzNmViMjk0NGU1
ZjY0ODJkODU1ZmYwMDhlYjQzOS4uNzg1NDkwYTFlYWY2MmQwYzllMDMyZGFiM2E5Y2VlNGRlYTdh
ZWY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwCkBAIC0xMjcsMTEgKzEyNywxMSBAQCBDYWNoZWRJbWFnZSogQ2FjaGVk
UmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RJbWFnZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7
CiAgICAgaWYgKEZyYW1lKiBmID0gZnJhbWUoKSkgewogICAgICAgICBTZXR0aW5ncyogc2V0dGlu
Z3MgPSBmLT5zZXR0aW5ncygpOwotICAgICAgICBpZiAoIWYtPmxvYWRlcigpLT5jbGllbnQoKS0+
YWxsb3dJbWFnZXMoIXNldHRpbmdzIHx8IHNldHRpbmdzLT5hcmVJbWFnZXNFbmFibGVkKCkpKQor
ICAgICAgICBLVVJMIHJlcXVlc3RVUkwgPSByZXF1ZXN0LnVybCgpOworICAgICAgICBpZiAoIWYt
PmxvYWRlcigpLT5jbGllbnQoKS0+YWxsb3dJbWFnZShyZXF1ZXN0VVJMLCAhc2V0dGluZ3MgfHwg
c2V0dGluZ3MtPmFyZUltYWdlc0VuYWJsZWQoKSkpCiAgICAgICAgICAgICByZXR1cm4gMDsKIAog
ICAgICAgICBpZiAoZi0+bG9hZGVyKCktPnBhZ2VEaXNtaXNzYWxFdmVudEJlaW5nRGlzcGF0Y2hl
ZCgpICE9IEZyYW1lTG9hZGVyOjpOb0Rpc21pc3NhbCkgewotICAgICAgICAgICAgS1VSTCByZXF1
ZXN0VVJMID0gcmVxdWVzdC51cmwoKTsKICAgICAgICAgICAgIGlmIChyZXF1ZXN0VVJMLmlzVmFs
aWQoKSAmJiBjYW5SZXF1ZXN0KENhY2hlZFJlc291cmNlOjpJbWFnZVJlc291cmNlLCByZXF1ZXN0
VVJMKSkKICAgICAgICAgICAgICAgICBQaW5nTG9hZGVyOjpsb2FkSW1hZ2UoZiwgcmVxdWVzdFVS
TCk7CiAgICAgICAgICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
MDE2ZWNmOTgzZDgyNmJmMzZjMDA2ZmM0ZTNkODVkNDAwMzVkYzE4MS4uODE4MDg2OTUwY2MzZGM0
ZmQzY2E1NjBiNGVkNjE0MzUxNzY3MzVlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNiBAQAorMjAxMS0wOS0xNCAgSm9jaGVuIEVpc2luZ2VyICA8am9jaGVuQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZW5hbWUgRnJhbWVMb2FkZXJDbGllbnQ6OmFsbG93SW1hZ2Vz
IHRvIEZyYW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlIGFuZCBpbmNsdWRlIHRoZSBpbWFnZSBV
UkwgYXMgcGFyYW1ldGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD02ODA3MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogcHVibGljL1dlYlBlcm1pc3Npb25DbGllbnQuaDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGVybWlzc2lvbkNsaWVudDo6YWxsb3dJbWFnZSk6CisgICAgICAgICogc3JjL0ZyYW1lTG9h
ZGVyQ2xpZW50SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OkZyYW1lTG9hZGVyQ2xpZW50SW1w
bDo6YWxsb3dJbWFnZSk6CisgICAgICAgICogc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oOgor
CiAyMDExLTA5LTEyICBGdW1pdG9zaGkgVWthaSAgPHVrYWlAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQuIFJvbGwgREVQUyBhZ2Fpbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYlBlcm1pc3Npb25DbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYlBlcm1pc3Npb25DbGllbnQuaAppbmRleCBiMDAxYjIyNjY3NzE1
YmVmZmYxNTIwNzVkMmY2MDU5YjU0OGU0MjhkLi42OTZhM2NjNjY4NTQ1ZmRmMzE5ZmQ0NGUwMzJi
MzcyNzQ5Nzc0NTdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9X
ZWJQZXJtaXNzaW9uQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViUGVybWlzc2lvbkNsaWVudC5oCkBAIC00Nyw2ICs0Nyw4IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIGJvb2wgYWxsb3dGaWxlU3lzdGVtKFdlYkZyYW1lKikgeyByZXR1cm4gdHJ1ZTsgfQogCiAg
ICAgLy8gQ29udHJvbHMgd2hldGhlciBpbWFnZXMgYXJlIGFsbG93ZWQgZm9yIHRoaXMgZnJhbWUu
CisgICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2UoV2ViRnJhbWUqIGZyYW1lLCBjb25zdCBXZWJV
UkwmIGltYWdlVVJMLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gYWxsb3dJbWFn
ZXMoZnJhbWUsIGVuYWJsZWRQZXJTZXR0aW5ncyk7IH0KKyAgICAvLyBGSVhNRTogcmVtb3ZlIG9u
Y2UgY2hyb21pdW0gc2lkZSBoYXMgbGFuZGVkLgogICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdl
cyhXZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSB7IHJldHVybiBlbmFibGVkUGVy
U2V0dGluZ3M7IH0KIAogICAgIC8vIENvbnRyb2xzIHdoZXRoZXIgYWNjZXNzIHRvIEluZGV4ZWQg
REIgYXJlIGFsbG93ZWQgZm9yIHRoaXMgZnJhbWUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcAppbmRleCBlMjRiZDNhNjA5YTU2
NjU4Nzg0NjAzMWY2ZDYwZmRiYTRiNTU5OGFkLi5iNDNkMWJjMGQ3OWRlY2ViYmY5ZTc0MmIyNjVl
MDc4ZjY4MGUyODcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFt
ZUxvYWRlckNsaWVudEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0Zy
YW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKQEAgLTIwMiwxMSArMjAyLDExIEBAIGJvb2wgRnJhbWVM
b2FkZXJDbGllbnRJbXBsOjphbGxvd1BsdWdpbnMoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpCiAg
ICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsKIH0KIAotYm9vbCBGcmFtZUxvYWRlckNsaWVu
dEltcGw6OmFsbG93SW1hZ2VzKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKQorYm9vbCBGcmFtZUxv
YWRlckNsaWVudEltcGw6OmFsbG93SW1hZ2UoY29uc3QgS1VSTCYgaW1hZ2VVUkwsIGJvb2wgZW5h
YmxlZFBlclNldHRpbmdzKQogewogICAgIFdlYlZpZXdJbXBsKiB3ZWJ2aWV3ID0gbV93ZWJGcmFt
ZS0+dmlld0ltcGwoKTsKICAgICBpZiAod2VidmlldyAmJiB3ZWJ2aWV3LT5wZXJtaXNzaW9uQ2xp
ZW50KCkpCi0gICAgICAgIHJldHVybiB3ZWJ2aWV3LT5wZXJtaXNzaW9uQ2xpZW50KCktPmFsbG93
SW1hZ2VzKG1fd2ViRnJhbWUsIGVuYWJsZWRQZXJTZXR0aW5ncyk7CisgICAgICAgIHJldHVybiB3
ZWJ2aWV3LT5wZXJtaXNzaW9uQ2xpZW50KCktPmFsbG93SW1hZ2UobV93ZWJGcmFtZSwgaW1hZ2VV
UkwsIGVuYWJsZWRQZXJTZXR0aW5ncyk7CiAKICAgICByZXR1cm4gZW5hYmxlZFBlclNldHRpbmdz
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJD
bGllbnRJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVu
dEltcGwuaAppbmRleCAxYWZiODExMmQ2NzBiYTVlMTRjZTQzZGFkMTMyZjIyZjNiNjdiN2YxLi5k
NDRhMDViNjRiNDExNDRiZDMzZDcwZTlkMDAzM2ZjMDQyOGRkYWU4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuaApAQCAtMjA3LDcg
KzIwNyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGlkQ2hhbmdlU2Nyb2xsT2Zmc2V0
KCk7CiAgICAgdmlydHVhbCBib29sIGFsbG93SmF2YVNjcmlwdChib29sIGVuYWJsZWRQZXJTZXR0
aW5ncyk7CiAgICAgdmlydHVhbCBib29sIGFsbG93UGx1Z2lucyhib29sIGVuYWJsZWRQZXJTZXR0
aW5ncyk7Ci0gICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2VzKGJvb2wgZW5hYmxlZFBlclNldHRp
bmdzKTsKKyAgICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFnZShjb25zdCBXZWJDb3JlOjpLVVJMJiBp
bWFnZVVSTCwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxv
d0Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnQoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsIFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6S1VSTCYpOwogICAgIHZpcnR1YWwg
Ym9vbCBhbGxvd1J1bm5pbmdJbnNlY3VyZUNvbnRlbnQoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3Ms
IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luKiwgY29uc3QgV2ViQ29yZTo6S1VSTCYpOwogICAgIHZp
cnR1YWwgdm9pZCBkaWROb3RBbGxvd1NjcmlwdCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdl
TG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDc1YjM2YTczYmEwZjNhZmRjMDIyOTAzMzg5YTk0
MDA3ZWM1ZmY1NzcuLmM5MDlhYzgwNjRlMmE0ZmRhM2ZiNDVjZjJjMWQ4MDI4NDRjMTFmNTAgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNCBAQAorMjAxMS0wOS0xNCAgSm9jaGVuIEVpc2luZ2VyICA8am9jaGVuQGNocm9taXVtLm9y
Zz4KKworICAgICAgICBSZW5hbWUgRnJhbWVMb2FkZXJDbGllbnQ6OmFsbG93SW1hZ2VzIHRvIEZy
YW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlIGFuZCBpbmNsdWRlIHRoZSBpbWFnZSBVUkwgYXMg
cGFyYW1ldGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02ODA3MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlzc2lvbnMuY3BwOgorICAgICAgICAo
V2ViUGVybWlzc2lvbnM6OmFsbG93SW1hZ2UpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2No
cm9taXVtL1dlYlBlcm1pc3Npb25zLmg6CisKIDIwMTEtMDktMTIgIExlYW5kcm8gUGVyZWlyYSAg
PGxlYW5kcm9AcHJvZnVzaW9uLm1vYmk+CiAKICAgICAgICAgW0VGTF0gRFJUOiBBZGQgRHVtcFJl
bmRlclRyZWVFZmwuaApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
V2ViUGVybWlzc2lvbnMuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVy
bWlzc2lvbnMuY3BwCmluZGV4IGIyMzhkNWZjNTM3YTNiMTcxMzZmMWNmYTdiNTg5YmMwZTYyYWM5
NGYuLmNjY2VhZTUxNDJhMTIzOTVlZmMwMTAyNjk2ODk1Mzc3MjI1MDEwZTYgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcAorKysgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5jcHAKQEAgLTQwLDcg
KzQwLDcgQEAgV2ViUGVybWlzc2lvbnM6On5XZWJQZXJtaXNzaW9ucygpCiB7CiB9CiAKLWJvb2wg
V2ViUGVybWlzc2lvbnM6OmFsbG93SW1hZ2VzKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJs
ZWRQZXJTZXR0aW5ncykKK2Jvb2wgV2ViUGVybWlzc2lvbnM6OmFsbG93SW1hZ2UoV2ViS2l0OjpX
ZWJGcmFtZSosIGNvbnN0IFdlYktpdDo6V2ViVVJMJiwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3Mp
CiB7CiAgICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5ncyAmJiBtX2ltYWdlc0FsbG93ZWQ7CiB9
CkBAIC02MCw3ICs2MCw3IEBAIGJvb2wgV2ViUGVybWlzc2lvbnM6OmFsbG93RGlzcGxheWluZ0lu
c2VjdXJlQ29udGVudChXZWJLaXQ6OldlYkZyYW1lKiwgYm9vbCBlbmFiCiB7CiAgICAgcmV0dXJu
IGVuYWJsZWRQZXJTZXR0aW5ncyB8fCBtX2Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnRBbGxvd2Vk
OwogfQotIAorCiBib29sIFdlYlBlcm1pc3Npb25zOjphbGxvd1J1bm5pbmdJbnNlY3VyZUNvbnRl
bnQoV2ViS2l0OjpXZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFdlYktpdDo6V2Vi
U2VjdXJpdHlPcmlnaW4mLCBjb25zdCBXZWJLaXQ6OldlYlVSTCYpCiB7CmRpZmYgLS1naXQgYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5oIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlzc2lvbnMuaAppbmRleCA3OGQ5NmJhYzRlYWU0
NmZjYTFlM2JiNmRhM2Y2ZWMwMjM4OGRhMTE4Li41MDFhMGUzYWFjZmNkNGNmMmE1MjIzNjVhZjJi
ZDk0NjA5ODc4OGJkIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9X
ZWJQZXJtaXNzaW9ucy5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBl
cm1pc3Npb25zLmgKQEAgLTM5LDcgKzM5LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgfldlYlBl
cm1pc3Npb25zKCk7CiAKICAgICAvLyBPdmVycmlkZSBXZWJQZXJtaXNzaW9uQ2xpZW50IG1ldGhv
ZHMuCi0gICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2VzKFdlYktpdDo6V2ViRnJhbWUqLCBib29s
IGVuYWJsZWRQZXJTZXR0aW5ncyk7CisgICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2UoV2ViS2l0
OjpXZWJGcmFtZSosIGNvbnN0IFdlYktpdDo6V2ViVVJMJiBpbWFnZVVSTCwgYm9vbCBlbmFibGVk
UGVyU2V0dGluZ3MpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxvd1N0b3JhZ2UoV2ViS2l0OjpXZWJG
cmFtZSosIGJvb2wgbG9jYWwpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxvd1BsdWdpbnMoV2ViS2l0
OjpXZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKTsKICAgICB2aXJ0dWFsIGJvb2wg
YWxsb3dEaXNwbGF5aW5nSW5zZWN1cmVDb250ZW50KFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVu
YWJsZWRQZXJTZXR0aW5ncywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107643</attachid>
            <date>2011-09-16 07:05:56 -0700</date>
            <delta_ts>2011-09-16 10:38:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68071-20110916160553.patch</filename>
            <type>text/plain</type>
            <size>18888</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUyODUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5MmFlNDhkMmZlM2MzYzcyMWMxMTAx
YzJiNzIyNDQ0ZDFjZWZlMTdmLi43MDYxZDNmMmVjOWVmZDg0OWVjZjNlNzIyYTcwMWEzOTllMDdk
MmQyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDktMTYgIEpvY2hlbiBFaXNpbmdlciAg
PGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVyQ2xpZW50
OjphbGxvd0ltYWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQgaW5jbHVk
ZSB0aGUgaW1hZ2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQv
aW1hZ2UtcGVybWlzc2lvbnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMuaHRtbDoKKwogMjAxMS0wOS0x
NSAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIElu
c3BlY3RvcjogcmVuYW1lIENvbnNvbGUuY2xlYXJDb25zb2xlTWVzc2FnZXMgdG8gQ29uc29sZS5j
bGVhck1lc3NhZ2VzLCBicnVzaCB1cCBjb25zb2xlIGRvbWFpbiBkb2MuCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L2ltYWdlLXBlcm1p
c3Npb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Blcm1p
c3Npb25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMtZXhwZWN0ZWQudHh0CmluZGV4IDNkOTc4NDVk
NTY2Y2FkNTUzOTNlMDUyOGQxMGFlYzgyYWQxMTJjYjkuLmU2MDdhMTAxMzExMjgzYjdhNGZjMDU3
OWJjNmFiNWEyZmUyNDEyMTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2UtcGVy
bWlzc2lvbnMtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNyBAQAorUEVSTUlTU0lPTiBDTElFTlQ6
IGFsbG93SW1hZ2UoKGZpbGUgdGVzdCk6cGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lvbmNsaWVu
dC9yZXNvdXJjZXMvYm9zdG9uLmdpZik6IHRydWUKK1BFUk1JU1NJT04gQ0xJRU5UOiBhbGxvd0lt
YWdlKChmaWxlIHRlc3QpOnBsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvcmVzb3Vy
Y2VzL2Jvc3Rvbi5naWY/bm9jYWNoZSk6IGZhbHNlCitQRVJNSVNTSU9OIENMSUVOVDogYWxsb3dJ
bWFnZSgoZmlsZSB0ZXN0KTpwbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L3Jlc291
cmNlcy9ib3N0b24uZ2lmKTogZmFsc2UKK1BFUk1JU1NJT04gQ0xJRU5UOiBhbGxvd0ltYWdlKChm
aWxlIHRlc3QpOnBsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvcmVzb3VyY2VzL2Jv
c3Rvbi5naWYpOiBmYWxzZQogCiAKIFBBU1M6IGZpcnN0IGltYWdlIGxvYWRlZApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lvbmNsaWVudC9pbWFnZS1w
ZXJtaXNzaW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lv
bmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy5odG1sCmluZGV4IGU2ZWI0Njk3OGNlYTY2OTdjZDU2
ZTYyNDMzNGRiZGUzNjA3YjBjOTUuLmE1MTIzMWE1NThjZmI4YzA3OWRiYmE5NzIxMzExMjIzNmY3
Y2I5MDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Np
b25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L2ltYWdlLXBlcm1pc3Npb25zLmh0bWwKQEAgLTEs
OCArMSwxMCBAQAogPGh0bWw+CiA8aGVhZD4KIDxzY3JpcHQ+Ci1pZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKQoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewogICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrcygpOworfQogCiBmdW5jdGlvbiBsb2coYSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCBmNjA0YTc0NmYwZmM3ZTY4ZDdiOGMyMzZhYzc1MDM1OTRmZDZkNTkx
Li5jYWJiNDhlM2FhNDY5MzBlYjY0ZjgwNGUxODAyZWQ3YzQ0ODcxMzU4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTEtMDktMTQgIEpvY2hlbiBFaXNpbmdlciAgPGpvY2hlbkBjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdl
cyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQgaW5jbHVkZSB0aGUgaW1hZ2Ug
VVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBUaGlzIHdpbGwgYWxsb3cgZW1iZWRkZXJzIHRvIGJs
b2NrIGltYWdlcyBiYXNlZCBvbiB3aGVyZSB0aGUgaW1hZ2UgaXMgbG9hZGVkIGZyb20sIGluc3Rl
YWQgb2YganVzdCBibG9ja2luZyBhbGwgaW1hZ2VzIGluIGEgZ2l2ZW4gZnJhbWUuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodG1sL0ltYWdlRG9j
dW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEb2N1bWVudFBhcnNlcjo6YXBwZW5k
Qnl0ZXMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnQ6OmFsbG93SW1hZ2UpOgorICAgICAgICAqIGxvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdEltYWdlKToKKwogMjAxMS0wOS0xNSAgUGF2ZWwgRmVs
ZG1hbiAgPHBmZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVu
YW1lIENvbnNvbGUuY2xlYXJDb25zb2xlTWVzc2FnZXMgdG8gQ29uc29sZS5jbGVhck1lc3NhZ2Vz
LCBicnVzaCB1cCBjb25zb2xlIGRvbWFpbiBkb2MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbWFnZURvY3Vt
ZW50LmNwcAppbmRleCBkZGNiMDNmYjRkYTY4YWE5N2M2ZTEwNDdiNDYzOWVmZmVmYWRjYjJkLi4z
N2FkOTkzOTUwNmIwZWFkZjhiZDM1M2E3YWNhZDJkOTVkOWJhNTIyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSW1hZ2VEb2N1bWVudC5jcHAKQEAgLTEyOCw3ICsxMjgsNyBAQCB2b2lkIEltYWdlRG9jdW1l
bnRQYXJzZXI6OmFwcGVuZEJ5dGVzKERvY3VtZW50V3JpdGVyKiwgY29uc3QgY2hhciosIHNpemVf
dCkKIHsKICAgICBGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpOwogICAgIFNldHRp
bmdzKiBzZXR0aW5ncyA9IGZyYW1lLT5zZXR0aW5ncygpOwotICAgIGlmICghZnJhbWUtPmxvYWRl
cigpLT5jbGllbnQoKS0+YWxsb3dJbWFnZXMoIXNldHRpbmdzIHx8IHNldHRpbmdzLT5hcmVJbWFn
ZXNFbmFibGVkKCkpKQorICAgIGlmICghZnJhbWUtPmxvYWRlcigpLT5jbGllbnQoKS0+YWxsb3dJ
bWFnZSghc2V0dGluZ3MgfHwgc2V0dGluZ3MtPmFyZUltYWdlc0VuYWJsZWQoKSwgZG9jdW1lbnQo
KS0+dXJsKCkpKQogICAgICAgICByZXR1cm47CiAKICAgICBDYWNoZWRJbWFnZSogY2FjaGVkSW1h
Z2UgPSBkb2N1bWVudCgpLT5jYWNoZWRJbWFnZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXJDbGllbnQuaAppbmRleCBjMjExN2ViMjRhMzllOGRjZTEyZjI3ZjI5YzBmZjA4Mzk1
ZTYzZGI3Li40OGE4NDMzODk3M2UzNDMwZDdlNWJlZTU5NTcxNDM0OTI2Y2JjOGYxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMzAyLDcgKzMwMiw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dKYXZhU2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7
IH0KICAgICAgICAgdmlydHVhbCBib29sIGFsbG93UGx1Z2lucyhib29sIGVuYWJsZWRQZXJTZXR0
aW5ncykgeyByZXR1cm4gZW5hYmxlZFBlclNldHRpbmdzOyB9Ci0gICAgICAgIHZpcnR1YWwgYm9v
bCBhbGxvd0ltYWdlcyhib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gZW5hYmxlZFBl
clNldHRpbmdzOyB9CisgICAgICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlKGJvb2wgZW5hYmxl
ZFBlclNldHRpbmdzLCBjb25zdCBLVVJMJiBpbWFnZVVSTCkgeyByZXR1cm4gZW5hYmxlZFBlclNl
dHRpbmdzOyB9CiAgICAgICAgIHZpcnR1YWwgYm9vbCBhbGxvd0Rpc3BsYXlpbmdJbnNlY3VyZUNv
bnRlbnQoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsIFNlY3VyaXR5T3JpZ2luKiwgY29uc3QgS1VS
TCYpIHsgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsgfQogICAgICAgICB2aXJ0dWFsIGJvb2wg
YWxsb3dSdW5uaW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBTZWN1
cml0eU9yaWdpbiosIGNvbnN0IEtVUkwmKSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7IH0K
ICAgICAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlTG9hZGVyLmNwcAppbmRleCAyYjkzMmM1MmE3MzM2ZWIyOTQ0ZTVmNjQ4MmQ4NTVmZjAw
OGViNDM5Li43YWJhNWZhYTJhN2ExYjIyZGE3NjYxOGViNjk0NWRlZDY5MjcwYjQ3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5j
cHAKQEAgLTEyNiwxMCArMTI2LDYgQEAgRnJhbWUqIENhY2hlZFJlc291cmNlTG9hZGVyOjpmcmFt
ZSgpIGNvbnN0CiBDYWNoZWRJbWFnZSogQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RJbWFn
ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgaWYgKEZyYW1lKiBmID0gZnJhbWUo
KSkgewotICAgICAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBmLT5zZXR0aW5ncygpOwotICAgICAg
ICBpZiAoIWYtPmxvYWRlcigpLT5jbGllbnQoKS0+YWxsb3dJbWFnZXMoIXNldHRpbmdzIHx8IHNl
dHRpbmdzLT5hcmVJbWFnZXNFbmFibGVkKCkpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KICAg
ICAgICAgaWYgKGYtPmxvYWRlcigpLT5wYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQo
KSAhPSBGcmFtZUxvYWRlcjo6Tm9EaXNtaXNzYWwpIHsKICAgICAgICAgICAgIEtVUkwgcmVxdWVz
dFVSTCA9IHJlcXVlc3QudXJsKCk7CiAgICAgICAgICAgICBpZiAocmVxdWVzdFVSTC5pc1ZhbGlk
KCkgJiYgY2FuUmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6SW1hZ2VSZXNvdXJjZSwgcmVxdWVzdFVS
TCkpCkBAIC0yOTUsNiArMjkxLDEyIEBAIGJvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNhblJl
cXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgY29uc3QgS1VSTCYgdXJsCiAgICAgY2Fz
ZSBDYWNoZWRSZXNvdXJjZTo6SW1hZ2VSZXNvdXJjZToKICAgICAgICAgaWYgKCFtX2RvY3VtZW50
LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbWFnZUZyb21Tb3VyY2UodXJsKSkKICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgp
KSB7CisgICAgICAgICAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBmLT5zZXR0aW5ncygpOworICAg
ICAgICAgICAgaWYgKCFmLT5sb2FkZXIoKS0+Y2xpZW50KCktPmFsbG93SW1hZ2UoIXNldHRpbmdz
IHx8IHNldHRpbmdzLT5hcmVJbWFnZXNFbmFibGVkKCksIHVybCkpCisgICAgICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ2FjaGVk
UmVzb3VyY2U6OkZvbnRSZXNvdXJjZTogewogICAgICAgICBpZiAoIW1fZG9jdW1lbnQtPmNvbnRl
bnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0ZvbnRGcm9tU291cmNlKHVybCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCmluZGV4IGZlYjNjZjIzNjAyNGRiNzllMjZkN2Q0MmM4ZWRkYjMwYjZkYjRh
MDEuLmI0ZTg2OGJiNzA2YWUwMGEyNWUzMWYxN2Y2NGMxOGM1YzVkMWEzN2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDktMTQgIEpvY2hlbiBFaXNp
bmdlciAgPGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVy
Q2xpZW50OjphbGxvd0ltYWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQg
aW5jbHVkZSB0aGUgaW1hZ2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9XZWJQZXJtaXNzaW9uQ2xpZW50Lmg6
CisgICAgICAgIChXZWJLaXQ6OldlYlBlcm1pc3Npb25DbGllbnQ6OmFsbG93SW1hZ2UpOgorICAg
ICAgICAqIHNyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpG
cmFtZUxvYWRlckNsaWVudEltcGw6OmFsbG93SW1hZ2UpOgorICAgICAgICAqIHNyYy9GcmFtZUxv
YWRlckNsaWVudEltcGwuaDoKKwogMjAxMS0wOS0xNSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFNpZ2guICBNaXNzZWQgdGhpcyBvbmUuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQZXJtaXNzaW9uQ2xpZW50LmggYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQZXJtaXNzaW9uQ2xpZW50LmgKaW5kZXggYjAw
MWIyMjY2NzcxNWJlZmZmMTUyMDc1ZDJmNjA1OWI1NDhlNDI4ZC4uZTE3MDZiZjc2ZWRlMTQyNzc0
MTZhZDRiMGI0NDUzYWRmODI4YWVkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViUGVybWlzc2lvbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL1dlYlBlcm1pc3Npb25DbGllbnQuaApAQCAtNDcsNiArNDcsOCBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCBib29sIGFsbG93RmlsZVN5c3RlbShXZWJGcmFtZSopIHsgcmV0dXJuIHRy
dWU7IH0KIAogICAgIC8vIENvbnRyb2xzIHdoZXRoZXIgaW1hZ2VzIGFyZSBhbGxvd2VkIGZvciB0
aGlzIGZyYW1lLgorICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlKFdlYkZyYW1lKiBmcmFtZSwg
Ym9vbCBlbmFibGVkUGVyU2V0dGluZ3MsIGNvbnN0IFdlYlVSTCYgaW1hZ2VVUkwpIHsgcmV0dXJu
IGFsbG93SW1hZ2VzKGZyYW1lLCBlbmFibGVkUGVyU2V0dGluZ3MpOyB9CisgICAgLy8gRklYTUU6
IHJlbW92ZSBvbmNlIGNocm9taXVtIHNpZGUgaGFzIGxhbmRlZC4KICAgICB2aXJ0dWFsIGJvb2wg
YWxsb3dJbWFnZXMoV2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4g
ZW5hYmxlZFBlclNldHRpbmdzOyB9CiAKICAgICAvLyBDb250cm9scyB3aGV0aGVyIGFjY2VzcyB0
byBJbmRleGVkIERCIGFyZSBhbGxvd2VkIGZvciB0aGlzIGZyYW1lLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggZTI0
YmQzYTYwOWE1NjY1ODc4NDYwMzFmNmQ2MGZkYmE0YjU1OThhZC4uMGI2M2UzMDcwZmNhYWViYzRm
MWY4ZmNlMjExNjEwY2EwMzhkODM3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwCkBAIC0yMDIsMTEgKzIwMiwxMSBAQCBi
b29sIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6YWxsb3dQbHVnaW5zKGJvb2wgZW5hYmxlZFBlclNl
dHRpbmdzKQogICAgIHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7CiB9CiAKLWJvb2wgRnJhbWVM
b2FkZXJDbGllbnRJbXBsOjphbGxvd0ltYWdlcyhib29sIGVuYWJsZWRQZXJTZXR0aW5ncykKK2Jv
b2wgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjphbGxvd0ltYWdlKGJvb2wgZW5hYmxlZFBlclNldHRp
bmdzLCBjb25zdCBLVVJMJiBpbWFnZVVSTCkKIHsKICAgICBXZWJWaWV3SW1wbCogd2VidmlldyA9
IG1fd2ViRnJhbWUtPnZpZXdJbXBsKCk7CiAgICAgaWYgKHdlYnZpZXcgJiYgd2Vidmlldy0+cGVy
bWlzc2lvbkNsaWVudCgpKQotICAgICAgICByZXR1cm4gd2Vidmlldy0+cGVybWlzc2lvbkNsaWVu
dCgpLT5hbGxvd0ltYWdlcyhtX3dlYkZyYW1lLCBlbmFibGVkUGVyU2V0dGluZ3MpOworICAgICAg
ICByZXR1cm4gd2Vidmlldy0+cGVybWlzc2lvbkNsaWVudCgpLT5hbGxvd0ltYWdlKG1fd2ViRnJh
bWUsIGVuYWJsZWRQZXJTZXR0aW5ncywgaW1hZ2VVUkwpOwogCiAgICAgcmV0dXJuIGVuYWJsZWRQ
ZXJTZXR0aW5nczsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0Zy
YW1lTG9hZGVyQ2xpZW50SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVM
b2FkZXJDbGllbnRJbXBsLmgKaW5kZXggMWFmYjgxMTJkNjcwYmE1ZTE0Y2U0M2RhZDEzMmYyMmYz
YjY3YjdmMS4uODk5NzM5N2JlYzVjZWY5ZGFiNWQ1NDAyYjVjOWQzYzgxZTA1NTYwOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgK
QEAgLTIwNyw3ICsyMDcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpZENoYW5nZVNj
cm9sbE9mZnNldCgpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxvd0phdmFTY3JpcHQoYm9vbCBlbmFi
bGVkUGVyU2V0dGluZ3MpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxvd1BsdWdpbnMoYm9vbCBlbmFi
bGVkUGVyU2V0dGluZ3MpOwotICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlcyhib29sIGVuYWJs
ZWRQZXJTZXR0aW5ncyk7CisgICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2UoYm9vbCBlbmFibGVk
UGVyU2V0dGluZ3MsIGNvbnN0IFdlYkNvcmU6OktVUkwmIGltYWdlVVJMKTsKICAgICB2aXJ0dWFs
IGJvb2wgYWxsb3dEaXNwbGF5aW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRp
bmdzLCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OktVUkwmKTsKICAg
ICB2aXJ0dWFsIGJvb2wgYWxsb3dSdW5uaW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBl
clNldHRpbmdzLCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OktVUkwm
KTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkTm90QWxsb3dTY3JpcHQoKTsKZGlmZiAtLWdpdCBhL1Rv
b2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2MjAyNzRlMmViOThmOGI2NGUw
MDhkZTQ5M2RkMjc2N2Y2NTFiNmNkLi45ZDBmOGQ0ODY4OWEyYzQyNjYxYTUyODM1N2VmYmVmMzMx
YWQxOWI4IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMTQgIEpvY2hlbiBFaXNpbmdlciAgPGpvY2hlbkBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVyQ2xpZW50OjphbGxvd0lt
YWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQgaW5jbHVkZSB0aGUgaW1h
Z2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcDoK
KyAgICAgICAgKFdlYlBlcm1pc3Npb25zOjphbGxvd0ltYWdlKToKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5oOgorCiAyMDExLTA5LTE2ICBLcmlzdMOz
ZiBLb3N6dHnDsyAgPGtrcmlzdG9mQGluZi51LXN6ZWdlZC5odT4KIAogICAgICAgICBCdWlsZGJv
dCBtYXJrcyBhIG5yd3QgYm90IHJlZCB3aGVuIHRlc3RzIGFyZSBtaXNzaW5nIHJlc3VsdHMKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9s
bGVyLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9s
bGVyLmNwcAppbmRleCBlNjQwOTEyZDY2ODY5NzZiYTFmMzZhZDdkZTBjMTY0MWJlNjM5YTJjLi4w
YTJjZThkZDcxZGMwNDFlMDk3MDVjYWMwYTdhZjdiNWQ4MTU2NTU1IDEwMDY0NAotLS0gYS9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAKKysrIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCkBA
IC0xMTEsNiArMTExLDcgQEAgTGF5b3V0VGVzdENvbnRyb2xsZXI6OkxheW91dFRlc3RDb250cm9s
bGVyKFRlc3RTaGVsbCogc2hlbGwpCiAgICAgYmluZE1ldGhvZCgiZHVtcFNlbGVjdGlvblJlY3Qi
LCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmR1bXBTZWxlY3Rpb25SZWN0KTsKICAgICBiaW5kTWV0
aG9kKCJkdW1wU3RhdHVzQ2FsbGJhY2tzIiwgJkxheW91dFRlc3RDb250cm9sbGVyOjpkdW1wV2lu
ZG93U3RhdHVzQ2hhbmdlcyk7CiAgICAgYmluZE1ldGhvZCgiZHVtcFRpdGxlQ2hhbmdlcyIsICZM
YXlvdXRUZXN0Q29udHJvbGxlcjo6ZHVtcFRpdGxlQ2hhbmdlcyk7CisgICAgYmluZE1ldGhvZCgi
ZHVtcFBlcm1pc3Npb25DbGllbnRDYWxsYmFja3MiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmR1
bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tzKTsKICAgICBiaW5kTWV0aG9kKCJlbGVtZW50RG9l
c0F1dG9Db21wbGV0ZUZvckVsZW1lbnRXaXRoSWQiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmVs
ZW1lbnREb2VzQXV0b0NvbXBsZXRlRm9yRWxlbWVudFdpdGhJZCk7CiAgICAgYmluZE1ldGhvZCgi
ZXZhbHVhdGVJbldlYkluc3BlY3RvciIsICZMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZXZhbHVhdGVJ
bldlYkluc3BlY3Rvcik7CiAgICAgYmluZE1ldGhvZCgiZXZhbHVhdGVTY3JpcHRJbklzb2xhdGVk
V29ybGQiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmV2YWx1YXRlU2NyaXB0SW5Jc29sYXRlZFdv
cmxkKTsKQEAgLTM3Nyw2ICszNzgsMTIgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZHVt
cFRpdGxlQ2hhbmdlcyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50KgogICAgIHJl
c3VsdC0+c2V0TnVsbCgpOwogfQogCit2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpkdW1wUGVy
bWlzc2lvbkNsaWVudENhbGxiYWNrcyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50
KiByZXN1bHQpCit7CisgICAgbV9kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrcyA9IHRydWU7
CisgICAgcmVzdWx0LT5zZXROdWxsKCk7Cit9CisKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6
OnNldEFjY2VwdHNFZGl0aW5nKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBW
YXJpYW50KiByZXN1bHQpCiB7CiAgICAgaWYgKGFyZ3VtZW50cy5zaXplKCkgPiAwICYmIGFyZ3Vt
ZW50c1swXS5pc0Jvb2woKSkKQEAgLTU5OSw2ICs2MDYsNyBAQCB2b2lkIExheW91dFRlc3RDb250
cm9sbGVyOjpyZXNldCgpCiAgICAgbV9kdW1wV2luZG93U3RhdHVzQ2hhbmdlcyA9IGZhbHNlOwog
ICAgIG1fZHVtcFNlbGVjdGlvblJlY3QgPSBmYWxzZTsKICAgICBtX2R1bXBUaXRsZUNoYW5nZXMg
PSBmYWxzZTsKKyAgICBtX2R1bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tzID0gZmFsc2U7CiAg
ICAgbV9nZW5lcmF0ZVBpeGVsUmVzdWx0cyA9IHRydWU7CiAgICAgbV9hY2NlcHRzRWRpdGluZyA9
IHRydWU7CiAgICAgbV93YWl0VW50aWxEb25lID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Ub29scy9E
dW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5oIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuaAppbmRleCA3YTBkYjBm
MzU5YTZkZDU1NmQxNzcwZTJiMGQ5YmMxNDFjZTE0ZmI5Li41ZjFmODEzNTU2ZmRjZmVhMjEwOTBk
YWVlNmJhYjI0NWYzOTA1NWVlIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2No
cm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmgKQEAgLTM5MSw2ICszOTEsNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRJbWFnZXNBbGxvd2VkKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZh
cmlhbnQqKTsKICAgICB2b2lkIHNldFN0b3JhZ2VBbGxvd2VkKGNvbnN0IENwcEFyZ3VtZW50TGlz
dCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIHNldFBsdWdpbnNBbGxvd2VkKGNvbnN0IENwcEFy
Z3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKKyAgICB2b2lkIGR1bXBQZXJtaXNzaW9uQ2xpZW50
Q2FsbGJhY2tzKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKIAogICAgIC8v
IEVuYWJsZSBvciBkaXNhYmxlIHBsdWdpbnMuCiAgICAgdm9pZCBzZXRQbHVnaW5zRW5hYmxlZChj
b25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CkBAIC00MzAsNiArNDMxLDcgQEAg
cHVibGljOgogICAgIGJvb2wgc2hvdWxkRHVtcFNlbGVjdGlvblJlY3QoKSB7IHJldHVybiBtX2R1
bXBTZWxlY3Rpb25SZWN0OyB9CiAgICAgYm9vbCBzaG91bGREdW1wQmFja0ZvcndhcmRMaXN0KCkg
eyByZXR1cm4gbV9kdW1wQmFja0ZvcndhcmRMaXN0OyB9CiAgICAgYm9vbCBzaG91bGREdW1wVGl0
bGVDaGFuZ2VzKCkgeyByZXR1cm4gbV9kdW1wVGl0bGVDaGFuZ2VzOyB9CisgICAgYm9vbCBzaG91
bGREdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrcygpIHsgcmV0dXJuIG1fZHVtcFBlcm1pc3Np
b25DbGllbnRDYWxsYmFja3M7IH0KICAgICBib29sIHNob3VsZER1bXBDaGlsZEZyYW1lU2Nyb2xs
UG9zaXRpb25zKCkgeyByZXR1cm4gbV9kdW1wQ2hpbGRGcmFtZVNjcm9sbFBvc2l0aW9uczsgfQog
ICAgIGJvb2wgc2hvdWxkRHVtcENoaWxkRnJhbWVzQXNUZXh0KCkgeyByZXR1cm4gbV9kdW1wQ2hp
bGRGcmFtZXNBc1RleHQ7IH0KICAgICBib29sIHNob3VsZEdlbmVyYXRlUGl4ZWxSZXN1bHRzKCkg
eyByZXR1cm4gbV9nZW5lcmF0ZVBpeGVsUmVzdWx0czsgfQpAQCAtNTg3LDYgKzU4OSwxMCBAQCBw
cml2YXRlOgogICAgIC8vIElmIHRydWUsIG91dHB1dCBhIG1lc3NhZ2Ugd2hlbiB0aGUgcGFnZSB0
aXRsZSBpcyBjaGFuZ2VkLgogICAgIGJvb2wgbV9kdW1wVGl0bGVDaGFuZ2VzOwogCisgICAgLy8g
SWYgdHJ1ZSwgb3V0cHV0IGEgZGVzY3JpcHRpdmUgbGluZSBlYWNoIHRpbWUgYSBwZXJtaXNzaW9u
IGNsaWVudAorICAgIC8vIGNhbGxiYWNrIGlzIGludm9rZWQuIEN1cnJlbnRseSBvbmx5IGltcGxl
bWVudGVkIGZvciBhbGxvd0ltYWdlLgorICAgIGJvb2wgbV9kdW1wUGVybWlzc2lvbkNsaWVudENh
bGxiYWNrczsKKwogICAgIC8vIElmIHRydWUsIHRoZSB0ZXN0X3NoZWxsIHdpbGwgZ2VuZXJhdGUg
cGl4ZWwgcmVzdWx0cyBpbiBkdW1wQXNUZXh0IG1vZGUKICAgICBib29sIG1fZ2VuZXJhdGVQaXhl
bFJlc3VsdHM7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rl
c3RTaGVsbC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3Bw
CmluZGV4IDFhYWQwNzQwMTIyZGQzYzhkMmEyMDBkMTk0N2U0OGE1YzIwMjE3NTEuLjdiMTUwMWM5
MDlkZjNiYTFjOWQ1MmQyNTdiN2E2NzBhZGYwMTg3YWQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcApAQCAtMTIxLDcgKzEyMSw3IEBAIFRlc3RTaGVsbDo6
VGVzdFNoZWxsKGJvb2wgdGVzdFNoZWxsTW9kZSkKICAgICBXZWJSdW50aW1lRmVhdHVyZXM6OmVu
YWJsZU1lZGlhU3RyZWFtKHRydWUpOwogICAgIFdlYlJ1bnRpbWVGZWF0dXJlczo6ZW5hYmxlV2Vi
QXVkaW8odHJ1ZSk7IAogCi0gICAgbV93ZWJQZXJtaXNzaW9ucyA9IGFkb3B0UHRyKG5ldyBXZWJQ
ZXJtaXNzaW9ucygpKTsKKyAgICBtX3dlYlBlcm1pc3Npb25zID0gYWRvcHRQdHIobmV3IFdlYlBl
cm1pc3Npb25zKHRoaXMpKTsKICAgICBtX2FjY2Vzc2liaWxpdHlDb250cm9sbGVyID0gYWRvcHRQ
dHIobmV3IEFjY2Vzc2liaWxpdHlDb250cm9sbGVyKHRoaXMpKTsKICAgICBtX2xheW91dFRlc3RD
b250cm9sbGVyID0gYWRvcHRQdHIobmV3IExheW91dFRlc3RDb250cm9sbGVyKHRoaXMpKTsKICAg
ICBtX2V2ZW50U2VuZGVyID0gYWRvcHRQdHIobmV3IEV2ZW50U2VuZGVyKHRoaXMpKTsKZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcCBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcAppbmRleCBi
MjM4ZDVmYzUzN2EzYjE3MTM2ZjFjZmE3YjU4OWJjMGU2MmFjOTRmLi5kNmQ1N2MwYWI4ZjNlNGQ2
NzUyZmNlYTQ0Mjg5YzdiNTAxMTIwMzBlIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vV2ViUGVybWlzc2lvbnMuY3BwCkBAIC0zMSw3ICszMSwxMyBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYlBlcm1pc3Npb25zLmgiCiAKLVdlYlBlcm1pc3Npb25z
OjpXZWJQZXJtaXNzaW9ucygpCisjaW5jbHVkZSAiTGF5b3V0VGVzdENvbnRyb2xsZXIuaCIKKyNp
bmNsdWRlICJUZXN0U2hlbGwuaCIKKyNpbmNsdWRlICJXZWJDU3RyaW5nLmgiCisjaW5jbHVkZSAi
V2ViVVJMLmgiCisKK1dlYlBlcm1pc3Npb25zOjpXZWJQZXJtaXNzaW9ucyhUZXN0U2hlbGwqIHNo
ZWxsKQorICAgIDogbV9zaGVsbChzaGVsbCkKIHsKICAgICByZXNldCgpOwogfQpAQCAtNDAsOSAr
NDYsMTIgQEAgV2ViUGVybWlzc2lvbnM6On5XZWJQZXJtaXNzaW9ucygpCiB7CiB9CiAKLWJvb2wg
V2ViUGVybWlzc2lvbnM6OmFsbG93SW1hZ2VzKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJs
ZWRQZXJTZXR0aW5ncykKK2Jvb2wgV2ViUGVybWlzc2lvbnM6OmFsbG93SW1hZ2UoV2ViS2l0OjpX
ZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBjb25zdCBXZWJLaXQ6OldlYlVSTCYg
aW1hZ2VVUkwpCiB7Ci0gICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5ncyAmJiBtX2ltYWdlc0Fs
bG93ZWQ7CisgICAgYm9vbCBhbGxvd2VkID0gZW5hYmxlZFBlclNldHRpbmdzICYmIG1faW1hZ2Vz
QWxsb3dlZDsKKyAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXIoKS0+c2hvdWxkRHVtcFBlcm1p
c3Npb25DbGllbnRDYWxsYmFja3MoKSkKKyAgICAgICAgZnByaW50ZihzdGRvdXQsICJQRVJNSVNT
SU9OIENMSUVOVDogYWxsb3dJbWFnZSglcyk6ICVzXG4iLCBtX3NoZWxsLT5ub3JtYWxpemVMYXlv
dXRUZXN0VVJMKGltYWdlVVJMLnNwZWMoKSkuY19zdHIoKSwgYWxsb3dlZCA/ICJ0cnVlIiA6ICJm
YWxzZSIpOworICAgIHJldHVybiBhbGxvd2VkOwogfQogCiBib29sIFdlYlBlcm1pc3Npb25zOjph
bGxvd1N0b3JhZ2UoV2ViS2l0OjpXZWJGcmFtZSosIGJvb2wpCkBAIC02MCw3ICs2OSw3IEBAIGJv
b2wgV2ViUGVybWlzc2lvbnM6OmFsbG93RGlzcGxheWluZ0luc2VjdXJlQ29udGVudChXZWJLaXQ6
OldlYkZyYW1lKiwgYm9vbCBlbmFiCiB7CiAgICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5ncyB8
fCBtX2Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnRBbGxvd2VkOwogfQotIAorCiBib29sIFdlYlBl
cm1pc3Npb25zOjphbGxvd1J1bm5pbmdJbnNlY3VyZUNvbnRlbnQoV2ViS2l0OjpXZWJGcmFtZSos
IGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IFdlYktpdDo6V2ViU2VjdXJpdHlPcmlnaW4mLCBjb25z
dCBXZWJLaXQ6OldlYlVSTCYpCiB7CkBAIC0xMDAsMyArMTA5LDEwIEBAIHZvaWQgV2ViUGVybWlz
c2lvbnM6OnJlc2V0KCkKICAgICBtX2Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnRBbGxvd2VkID0g
ZmFsc2U7CiAgICAgbV9ydW5uaW5nSW5zZWN1cmVDb250ZW50QWxsb3dlZCA9IGZhbHNlOwogfQor
CisvLyBQcml2YXRlIGZ1bmN0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0xheW91dFRlc3RDb250cm9sbGVyKiBXZWJQZXJt
aXNzaW9uczo6bGF5b3V0VGVzdENvbnRyb2xsZXIoKSBjb25zdAoreworICAgIHJldHVybiBtX3No
ZWxsLT5sYXlvdXRUZXN0Q29udHJvbGxlcigpOworfQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJl
bmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlzc2lvbnMuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmgKaW5kZXggNzhkOTZiYWM0ZWFlNDZmY2ExZTNiYjZk
YTNmNmVjMDIzODhkYTExOC4uYmFjYTNhMTcxMTUwNjlmZDAyNmI0MjkxYWIyMTc0MmYxMDhkMmRk
ZSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlzc2lv
bnMuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5o
CkBAIC0zMywxMyArMzMsMTYgQEAKIAogI2luY2x1ZGUgIldlYlBlcm1pc3Npb25DbGllbnQuaCIK
IAorY2xhc3MgTGF5b3V0VGVzdENvbnRyb2xsZXI7CitjbGFzcyBUZXN0U2hlbGw7CisKIGNsYXNz
IFdlYlBlcm1pc3Npb25zIDogcHVibGljIFdlYktpdDo6V2ViUGVybWlzc2lvbkNsaWVudCB7CiBw
dWJsaWM6Ci0gICAgV2ViUGVybWlzc2lvbnMoKTsKKyAgICBXZWJQZXJtaXNzaW9ucyhUZXN0U2hl
bGwqKTsKICAgICB2aXJ0dWFsIH5XZWJQZXJtaXNzaW9ucygpOwogCiAgICAgLy8gT3ZlcnJpZGUg
V2ViUGVybWlzc2lvbkNsaWVudCBtZXRob2RzLgotICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdl
cyhXZWJLaXQ6OldlYkZyYW1lKiwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpOworICAgIHZpcnR1
YWwgYm9vbCBhbGxvd0ltYWdlKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0
aW5ncywgY29uc3QgV2ViS2l0OjpXZWJVUkwmIGltYWdlVVJMKTsKICAgICB2aXJ0dWFsIGJvb2wg
YWxsb3dTdG9yYWdlKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGxvY2FsKTsKICAgICB2aXJ0dWFs
IGJvb2wgYWxsb3dQbHVnaW5zKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0
aW5ncyk7CiAgICAgdmlydHVhbCBib29sIGFsbG93RGlzcGxheWluZ0luc2VjdXJlQ29udGVudChX
ZWJLaXQ6OldlYkZyYW1lKiwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsCkBAIC01OCw2ICs2MSwx
MSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZXNldCgpOwogCiBwcml2YXRlOgorICAgIExheW91dFRl
c3RDb250cm9sbGVyKiBsYXlvdXRUZXN0Q29udHJvbGxlcigpIGNvbnN0OworCisgICAgLy8gTm9u
LW93bmluZyBwb2ludGVyLiBUaGUgV2ViUGVybWlzc2lvbnMgaW5zdGFuY2UgaXMgb3duZWQgYnkg
dGhpcyBUZXN0U2hlbGwgaW5zdGFuY2UuCisgICAgVGVzdFNoZWxsKiBtX3NoZWxsOworCiAgICAg
Ym9vbCBtX2ltYWdlc0FsbG93ZWQ7CiAgICAgYm9vbCBtX3N0b3JhZ2VBbGxvd2VkOwogICAgIGJv
b2wgbV9wbHVnaW5zQWxsb3dlZDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107682</attachid>
            <date>2011-09-16 10:39:08 -0700</date>
            <delta_ts>2011-09-16 13:47:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68071-20110916193905.patch</filename>
            <type>text/plain</type>
            <size>18879</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUyODUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5MmFlNDhkMmZlM2MzYzcyMWMxMTAx
YzJiNzIyNDQ0ZDFjZWZlMTdmLi43MDYxZDNmMmVjOWVmZDg0OWVjZjNlNzIyYTcwMWEzOTllMDdk
MmQyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDktMTYgIEpvY2hlbiBFaXNpbmdlciAg
PGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVyQ2xpZW50
OjphbGxvd0ltYWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQgaW5jbHVk
ZSB0aGUgaW1hZ2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQv
aW1hZ2UtcGVybWlzc2lvbnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMuaHRtbDoKKwogMjAxMS0wOS0x
NSAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIElu
c3BlY3RvcjogcmVuYW1lIENvbnNvbGUuY2xlYXJDb25zb2xlTWVzc2FnZXMgdG8gQ29uc29sZS5j
bGVhck1lc3NhZ2VzLCBicnVzaCB1cCBjb25zb2xlIGRvbWFpbiBkb2MuCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L2ltYWdlLXBlcm1p
c3Npb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Blcm1p
c3Npb25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMtZXhwZWN0ZWQudHh0CmluZGV4IDNkOTc4NDVk
NTY2Y2FkNTUzOTNlMDUyOGQxMGFlYzgyYWQxMTJjYjkuLmU2MDdhMTAxMzExMjgzYjdhNGZjMDU3
OWJjNmFiNWEyZmUyNDEyMTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2UtcGVy
bWlzc2lvbnMtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNyBAQAorUEVSTUlTU0lPTiBDTElFTlQ6
IGFsbG93SW1hZ2UoKGZpbGUgdGVzdCk6cGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lvbmNsaWVu
dC9yZXNvdXJjZXMvYm9zdG9uLmdpZik6IHRydWUKK1BFUk1JU1NJT04gQ0xJRU5UOiBhbGxvd0lt
YWdlKChmaWxlIHRlc3QpOnBsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvcmVzb3Vy
Y2VzL2Jvc3Rvbi5naWY/bm9jYWNoZSk6IGZhbHNlCitQRVJNSVNTSU9OIENMSUVOVDogYWxsb3dJ
bWFnZSgoZmlsZSB0ZXN0KTpwbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L3Jlc291
cmNlcy9ib3N0b24uZ2lmKTogZmFsc2UKK1BFUk1JU1NJT04gQ0xJRU5UOiBhbGxvd0ltYWdlKChm
aWxlIHRlc3QpOnBsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvcmVzb3VyY2VzL2Jv
c3Rvbi5naWYpOiBmYWxzZQogCiAKIFBBU1M6IGZpcnN0IGltYWdlIGxvYWRlZApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lvbmNsaWVudC9pbWFnZS1w
ZXJtaXNzaW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lv
bmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy5odG1sCmluZGV4IGU2ZWI0Njk3OGNlYTY2OTdjZDU2
ZTYyNDMzNGRiZGUzNjA3YjBjOTUuLmE1MTIzMWE1NThjZmI4YzA3OWRiYmE5NzIxMzExMjIzNmY3
Y2I5MDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Np
b25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L2ltYWdlLXBlcm1pc3Npb25zLmh0bWwKQEAgLTEs
OCArMSwxMCBAQAogPGh0bWw+CiA8aGVhZD4KIDxzY3JpcHQ+Ci1pZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKQoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewogICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrcygpOworfQogCiBmdW5jdGlvbiBsb2coYSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCBmNjA0YTc0NmYwZmM3ZTY4ZDdiOGMyMzZhYzc1MDM1OTRmZDZkNTkx
Li5jYWJiNDhlM2FhNDY5MzBlYjY0ZjgwNGUxODAyZWQ3YzQ0ODcxMzU4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTEtMDktMTQgIEpvY2hlbiBFaXNpbmdlciAgPGpvY2hlbkBjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdl
cyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQgaW5jbHVkZSB0aGUgaW1hZ2Ug
VVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBUaGlzIHdpbGwgYWxsb3cgZW1iZWRkZXJzIHRvIGJs
b2NrIGltYWdlcyBiYXNlZCBvbiB3aGVyZSB0aGUgaW1hZ2UgaXMgbG9hZGVkIGZyb20sIGluc3Rl
YWQgb2YganVzdCBibG9ja2luZyBhbGwgaW1hZ2VzIGluIGEgZ2l2ZW4gZnJhbWUuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodG1sL0ltYWdlRG9j
dW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEb2N1bWVudFBhcnNlcjo6YXBwZW5k
Qnl0ZXMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnQ6OmFsbG93SW1hZ2UpOgorICAgICAgICAqIGxvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNo
ZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdEltYWdlKToKKwogMjAxMS0wOS0xNSAgUGF2ZWwgRmVs
ZG1hbiAgPHBmZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVu
YW1lIENvbnNvbGUuY2xlYXJDb25zb2xlTWVzc2FnZXMgdG8gQ29uc29sZS5jbGVhck1lc3NhZ2Vz
LCBicnVzaCB1cCBjb25zb2xlIGRvbWFpbiBkb2MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbWFnZURvY3Vt
ZW50LmNwcAppbmRleCBkZGNiMDNmYjRkYTY4YWE5N2M2ZTEwNDdiNDYzOWVmZmVmYWRjYjJkLi4z
N2FkOTkzOTUwNmIwZWFkZjhiZDM1M2E3YWNhZDJkOTVkOWJhNTIyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSW1hZ2VEb2N1bWVudC5jcHAKQEAgLTEyOCw3ICsxMjgsNyBAQCB2b2lkIEltYWdlRG9jdW1l
bnRQYXJzZXI6OmFwcGVuZEJ5dGVzKERvY3VtZW50V3JpdGVyKiwgY29uc3QgY2hhciosIHNpemVf
dCkKIHsKICAgICBGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpOwogICAgIFNldHRp
bmdzKiBzZXR0aW5ncyA9IGZyYW1lLT5zZXR0aW5ncygpOwotICAgIGlmICghZnJhbWUtPmxvYWRl
cigpLT5jbGllbnQoKS0+YWxsb3dJbWFnZXMoIXNldHRpbmdzIHx8IHNldHRpbmdzLT5hcmVJbWFn
ZXNFbmFibGVkKCkpKQorICAgIGlmICghZnJhbWUtPmxvYWRlcigpLT5jbGllbnQoKS0+YWxsb3dJ
bWFnZSghc2V0dGluZ3MgfHwgc2V0dGluZ3MtPmFyZUltYWdlc0VuYWJsZWQoKSwgZG9jdW1lbnQo
KS0+dXJsKCkpKQogICAgICAgICByZXR1cm47CiAKICAgICBDYWNoZWRJbWFnZSogY2FjaGVkSW1h
Z2UgPSBkb2N1bWVudCgpLT5jYWNoZWRJbWFnZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXJDbGllbnQuaAppbmRleCBjMjExN2ViMjRhMzllOGRjZTEyZjI3ZjI5YzBmZjA4Mzk1
ZTYzZGI3Li4wNmMyMTJiMWJiMWI5MzNlYmY2Zjg2ZDUwMzBlN2ZiYjFlNWMxMDI2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMzAyLDcgKzMwMiw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dKYXZhU2Ny
aXB0KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7
IH0KICAgICAgICAgdmlydHVhbCBib29sIGFsbG93UGx1Z2lucyhib29sIGVuYWJsZWRQZXJTZXR0
aW5ncykgeyByZXR1cm4gZW5hYmxlZFBlclNldHRpbmdzOyB9Ci0gICAgICAgIHZpcnR1YWwgYm9v
bCBhbGxvd0ltYWdlcyhib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gZW5hYmxlZFBl
clNldHRpbmdzOyB9CisgICAgICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlKGJvb2wgZW5hYmxl
ZFBlclNldHRpbmdzLCBjb25zdCBLVVJMJikgeyByZXR1cm4gZW5hYmxlZFBlclNldHRpbmdzOyB9
CiAgICAgICAgIHZpcnR1YWwgYm9vbCBhbGxvd0Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnQoYm9v
bCBlbmFibGVkUGVyU2V0dGluZ3MsIFNlY3VyaXR5T3JpZ2luKiwgY29uc3QgS1VSTCYpIHsgcmV0
dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsgfQogICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dSdW5u
aW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBTZWN1cml0eU9yaWdp
biosIGNvbnN0IEtVUkwmKSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7IH0KICAgICAgICAg
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VM
b2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9h
ZGVyLmNwcAppbmRleCAyYjkzMmM1MmE3MzM2ZWIyOTQ0ZTVmNjQ4MmQ4NTVmZjAwOGViNDM5Li43
YWJhNWZhYTJhN2ExYjIyZGE3NjYxOGViNjk0NWRlZDY5MjcwYjQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTEy
NiwxMCArMTI2LDYgQEAgRnJhbWUqIENhY2hlZFJlc291cmNlTG9hZGVyOjpmcmFtZSgpIGNvbnN0
CiBDYWNoZWRJbWFnZSogQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RJbWFnZShSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgaWYgKEZyYW1lKiBmID0gZnJhbWUoKSkgewotICAg
ICAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBmLT5zZXR0aW5ncygpOwotICAgICAgICBpZiAoIWYt
PmxvYWRlcigpLT5jbGllbnQoKS0+YWxsb3dJbWFnZXMoIXNldHRpbmdzIHx8IHNldHRpbmdzLT5h
cmVJbWFnZXNFbmFibGVkKCkpKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KICAgICAgICAgaWYg
KGYtPmxvYWRlcigpLT5wYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQoKSAhPSBGcmFt
ZUxvYWRlcjo6Tm9EaXNtaXNzYWwpIHsKICAgICAgICAgICAgIEtVUkwgcmVxdWVzdFVSTCA9IHJl
cXVlc3QudXJsKCk7CiAgICAgICAgICAgICBpZiAocmVxdWVzdFVSTC5pc1ZhbGlkKCkgJiYgY2Fu
UmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6SW1hZ2VSZXNvdXJjZSwgcmVxdWVzdFVSTCkpCkBAIC0y
OTUsNiArMjkxLDEyIEBAIGJvb2wgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OmNhblJlcXVlc3QoQ2Fj
aGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgY29uc3QgS1VSTCYgdXJsCiAgICAgY2FzZSBDYWNoZWRS
ZXNvdXJjZTo6SW1hZ2VSZXNvdXJjZToKICAgICAgICAgaWYgKCFtX2RvY3VtZW50LT5jb250ZW50
U2VjdXJpdHlQb2xpY3koKS0+YWxsb3dJbWFnZUZyb21Tb3VyY2UodXJsKSkKICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKworICAgICAgICBpZiAoRnJhbWUqIGYgPSBmcmFtZSgpKSB7CisgICAg
ICAgICAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBmLT5zZXR0aW5ncygpOworICAgICAgICAgICAg
aWYgKCFmLT5sb2FkZXIoKS0+Y2xpZW50KCktPmFsbG93SW1hZ2UoIXNldHRpbmdzIHx8IHNldHRp
bmdzLT5hcmVJbWFnZXNFbmFibGVkKCksIHVybCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQ2FjaGVkUmVzb3VyY2U6
OkZvbnRSZXNvdXJjZTogewogICAgICAgICBpZiAoIW1fZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0
eVBvbGljeSgpLT5hbGxvd0ZvbnRGcm9tU291cmNlKHVybCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCmluZGV4IGZlYjNjZjIzNjAyNGRiNzllMjZkN2Q0MmM4ZWRkYjMwYjZkYjRhMDEuLmI0ZTg2
OGJiNzA2YWUwMGEyNWUzMWYxN2Y2NGMxOGM1YzVkMWEzN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDktMTQgIEpvY2hlbiBFaXNpbmdlciAgPGpv
Y2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVyQ2xpZW50Ojph
bGxvd0ltYWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQgaW5jbHVkZSB0
aGUgaW1hZ2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIHB1YmxpYy9XZWJQZXJtaXNzaW9uQ2xpZW50Lmg6CisgICAgICAg
IChXZWJLaXQ6OldlYlBlcm1pc3Npb25DbGllbnQ6OmFsbG93SW1hZ2UpOgorICAgICAgICAqIHNy
Yy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpGcmFtZUxvYWRl
ckNsaWVudEltcGw6OmFsbG93SW1hZ2UpOgorICAgICAgICAqIHNyYy9GcmFtZUxvYWRlckNsaWVu
dEltcGwuaDoKKwogMjAxMS0wOS0xNSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgog
CiAgICAgICAgIFNpZ2guICBNaXNzZWQgdGhpcyBvbmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQZXJtaXNzaW9uQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJQZXJtaXNzaW9uQ2xpZW50LmgKaW5kZXggYjAwMWIyMjY2Nzcx
NWJlZmZmMTUyMDc1ZDJmNjA1OWI1NDhlNDI4ZC4uZTE3MDZiZjc2ZWRlMTQyNzc0MTZhZDRiMGI0
NDUzYWRmODI4YWVkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViUGVybWlzc2lvbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYlBlcm1pc3Npb25DbGllbnQuaApAQCAtNDcsNiArNDcsOCBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCBib29sIGFsbG93RmlsZVN5c3RlbShXZWJGcmFtZSopIHsgcmV0dXJuIHRydWU7IH0KIAog
ICAgIC8vIENvbnRyb2xzIHdoZXRoZXIgaW1hZ2VzIGFyZSBhbGxvd2VkIGZvciB0aGlzIGZyYW1l
LgorICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlKFdlYkZyYW1lKiBmcmFtZSwgYm9vbCBlbmFi
bGVkUGVyU2V0dGluZ3MsIGNvbnN0IFdlYlVSTCYgaW1hZ2VVUkwpIHsgcmV0dXJuIGFsbG93SW1h
Z2VzKGZyYW1lLCBlbmFibGVkUGVyU2V0dGluZ3MpOyB9CisgICAgLy8gRklYTUU6IHJlbW92ZSBv
bmNlIGNocm9taXVtIHNpZGUgaGFzIGxhbmRlZC4KICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFn
ZXMoV2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gZW5hYmxlZFBl
clNldHRpbmdzOyB9CiAKICAgICAvLyBDb250cm9scyB3aGV0aGVyIGFjY2VzcyB0byBJbmRleGVk
IERCIGFyZSBhbGxvd2VkIGZvciB0aGlzIGZyYW1lLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggZTI0YmQzYTYwOWE1
NjY1ODc4NDYwMzFmNmQ2MGZkYmE0YjU1OThhZC4uMGI2M2UzMDcwZmNhYWViYzRmMWY4ZmNlMjEx
NjEwY2EwMzhkODM3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJh
bWVMb2FkZXJDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9G
cmFtZUxvYWRlckNsaWVudEltcGwuY3BwCkBAIC0yMDIsMTEgKzIwMiwxMSBAQCBib29sIEZyYW1l
TG9hZGVyQ2xpZW50SW1wbDo6YWxsb3dQbHVnaW5zKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKQog
ICAgIHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7CiB9CiAKLWJvb2wgRnJhbWVMb2FkZXJDbGll
bnRJbXBsOjphbGxvd0ltYWdlcyhib29sIGVuYWJsZWRQZXJTZXR0aW5ncykKK2Jvb2wgRnJhbWVM
b2FkZXJDbGllbnRJbXBsOjphbGxvd0ltYWdlKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBjb25z
dCBLVVJMJiBpbWFnZVVSTCkKIHsKICAgICBXZWJWaWV3SW1wbCogd2VidmlldyA9IG1fd2ViRnJh
bWUtPnZpZXdJbXBsKCk7CiAgICAgaWYgKHdlYnZpZXcgJiYgd2Vidmlldy0+cGVybWlzc2lvbkNs
aWVudCgpKQotICAgICAgICByZXR1cm4gd2Vidmlldy0+cGVybWlzc2lvbkNsaWVudCgpLT5hbGxv
d0ltYWdlcyhtX3dlYkZyYW1lLCBlbmFibGVkUGVyU2V0dGluZ3MpOworICAgICAgICByZXR1cm4g
d2Vidmlldy0+cGVybWlzc2lvbkNsaWVudCgpLT5hbGxvd0ltYWdlKG1fd2ViRnJhbWUsIGVuYWJs
ZWRQZXJTZXR0aW5ncywgaW1hZ2VVUkwpOwogCiAgICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5n
czsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVy
Q2xpZW50SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGll
bnRJbXBsLmgKaW5kZXggMWFmYjgxMTJkNjcwYmE1ZTE0Y2U0M2RhZDEzMmYyMmYzYjY3YjdmMS4u
ODk5NzM5N2JlYzVjZWY5ZGFiNWQ1NDAyYjVjOWQzYzgxZTA1NTYwOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgKKysrIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgKQEAgLTIwNyw3
ICsyMDcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNl
dCgpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxvd0phdmFTY3JpcHQoYm9vbCBlbmFibGVkUGVyU2V0
dGluZ3MpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxvd1BsdWdpbnMoYm9vbCBlbmFibGVkUGVyU2V0
dGluZ3MpOwotICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlcyhib29sIGVuYWJsZWRQZXJTZXR0
aW5ncyk7CisgICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2UoYm9vbCBlbmFibGVkUGVyU2V0dGlu
Z3MsIGNvbnN0IFdlYkNvcmU6OktVUkwmIGltYWdlVVJMKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxs
b3dEaXNwbGF5aW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OktVUkwmKTsKICAgICB2aXJ0dWFs
IGJvb2wgYWxsb3dSdW5uaW5nSW5zZWN1cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdz
LCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNvbnN0IFdlYkNvcmU6OktVUkwmKTsKICAgICB2
aXJ0dWFsIHZvaWQgZGlkTm90QWxsb3dTY3JpcHQoKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2MjAyNzRlMmViOThmOGI2NGUwMDhkZTQ5M2Rk
Mjc2N2Y2NTFiNmNkLi45ZDBmOGQ0ODY4OWEyYzQyNjYxYTUyODM1N2VmYmVmMzMxYWQxOWI4IDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTQgQEAKKzIwMTEtMDktMTQgIEpvY2hlbiBFaXNpbmdlciAgPGpvY2hlbkBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgUmVuYW1lIEZyYW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlcyB0byBG
cmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZSBhbmQgaW5jbHVkZSB0aGUgaW1hZ2UgVVJMIGFz
IHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NjgwNzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcDoKKyAgICAgICAg
KFdlYlBlcm1pc3Npb25zOjphbGxvd0ltYWdlKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5oOgorCiAyMDExLTA5LTE2ICBLcmlzdMOzZiBLb3N6dHnD
syAgPGtrcmlzdG9mQGluZi51LXN6ZWdlZC5odT4KIAogICAgICAgICBCdWlsZGJvdCBtYXJrcyBh
IG5yd3QgYm90IHJlZCB3aGVuIHRlc3RzIGFyZSBtaXNzaW5nIHJlc3VsdHMKZGlmZiAtLWdpdCBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcCBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcApp
bmRleCBlNjQwOTEyZDY2ODY5NzZiYTFmMzZhZDdkZTBjMTY0MWJlNjM5YTJjLi4wYTJjZThkZDcx
ZGMwNDFlMDk3MDVjYWMwYTdhZjdiNWQ4MTU2NTU1IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAKKysrIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCkBAIC0xMTEsNiAr
MTExLDcgQEAgTGF5b3V0VGVzdENvbnRyb2xsZXI6OkxheW91dFRlc3RDb250cm9sbGVyKFRlc3RT
aGVsbCogc2hlbGwpCiAgICAgYmluZE1ldGhvZCgiZHVtcFNlbGVjdGlvblJlY3QiLCAmTGF5b3V0
VGVzdENvbnRyb2xsZXI6OmR1bXBTZWxlY3Rpb25SZWN0KTsKICAgICBiaW5kTWV0aG9kKCJkdW1w
U3RhdHVzQ2FsbGJhY2tzIiwgJkxheW91dFRlc3RDb250cm9sbGVyOjpkdW1wV2luZG93U3RhdHVz
Q2hhbmdlcyk7CiAgICAgYmluZE1ldGhvZCgiZHVtcFRpdGxlQ2hhbmdlcyIsICZMYXlvdXRUZXN0
Q29udHJvbGxlcjo6ZHVtcFRpdGxlQ2hhbmdlcyk7CisgICAgYmluZE1ldGhvZCgiZHVtcFBlcm1p
c3Npb25DbGllbnRDYWxsYmFja3MiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmR1bXBQZXJtaXNz
aW9uQ2xpZW50Q2FsbGJhY2tzKTsKICAgICBiaW5kTWV0aG9kKCJlbGVtZW50RG9lc0F1dG9Db21w
bGV0ZUZvckVsZW1lbnRXaXRoSWQiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmVsZW1lbnREb2Vz
QXV0b0NvbXBsZXRlRm9yRWxlbWVudFdpdGhJZCk7CiAgICAgYmluZE1ldGhvZCgiZXZhbHVhdGVJ
bldlYkluc3BlY3RvciIsICZMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZXZhbHVhdGVJbldlYkluc3Bl
Y3Rvcik7CiAgICAgYmluZE1ldGhvZCgiZXZhbHVhdGVTY3JpcHRJbklzb2xhdGVkV29ybGQiLCAm
TGF5b3V0VGVzdENvbnRyb2xsZXI6OmV2YWx1YXRlU2NyaXB0SW5Jc29sYXRlZFdvcmxkKTsKQEAg
LTM3Nyw2ICszNzgsMTIgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZHVtcFRpdGxlQ2hh
bmdlcyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50KgogICAgIHJlc3VsdC0+c2V0
TnVsbCgpOwogfQogCit2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpkdW1wUGVybWlzc2lvbkNs
aWVudENhbGxiYWNrcyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50KiByZXN1bHQp
Cit7CisgICAgbV9kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrcyA9IHRydWU7CisgICAgcmVz
dWx0LT5zZXROdWxsKCk7Cit9CisKIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldEFjY2Vw
dHNFZGl0aW5nKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiBy
ZXN1bHQpCiB7CiAgICAgaWYgKGFyZ3VtZW50cy5zaXplKCkgPiAwICYmIGFyZ3VtZW50c1swXS5p
c0Jvb2woKSkKQEAgLTU5OSw2ICs2MDYsNyBAQCB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpy
ZXNldCgpCiAgICAgbV9kdW1wV2luZG93U3RhdHVzQ2hhbmdlcyA9IGZhbHNlOwogICAgIG1fZHVt
cFNlbGVjdGlvblJlY3QgPSBmYWxzZTsKICAgICBtX2R1bXBUaXRsZUNoYW5nZXMgPSBmYWxzZTsK
KyAgICBtX2R1bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tzID0gZmFsc2U7CiAgICAgbV9nZW5l
cmF0ZVBpeGVsUmVzdWx0cyA9IHRydWU7CiAgICAgbV9hY2NlcHRzRWRpdGluZyA9IHRydWU7CiAg
ICAgbV93YWl0VW50aWxEb25lID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5oIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuaAppbmRleCA3YTBkYjBmMzU5YTZkZDU1
NmQxNzcwZTJiMGQ5YmMxNDFjZTE0ZmI5Li41ZjFmODEzNTU2ZmRjZmVhMjEwOTBkYWVlNmJhYjI0
NWYzOTA1NWVlIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlv
dXRUZXN0Q29udHJvbGxlci5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xh
eW91dFRlc3RDb250cm9sbGVyLmgKQEAgLTM5MSw2ICszOTEsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBzZXRJbWFnZXNBbGxvd2VkKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsK
ICAgICB2b2lkIHNldFN0b3JhZ2VBbGxvd2VkKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZh
cmlhbnQqKTsKICAgICB2b2lkIHNldFBsdWdpbnNBbGxvd2VkKGNvbnN0IENwcEFyZ3VtZW50TGlz
dCYsIENwcFZhcmlhbnQqKTsKKyAgICB2b2lkIGR1bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tz
KGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKIAogICAgIC8vIEVuYWJsZSBv
ciBkaXNhYmxlIHBsdWdpbnMuCiAgICAgdm9pZCBzZXRQbHVnaW5zRW5hYmxlZChjb25zdCBDcHBB
cmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CkBAIC00MzAsNiArNDMxLDcgQEAgcHVibGljOgog
ICAgIGJvb2wgc2hvdWxkRHVtcFNlbGVjdGlvblJlY3QoKSB7IHJldHVybiBtX2R1bXBTZWxlY3Rp
b25SZWN0OyB9CiAgICAgYm9vbCBzaG91bGREdW1wQmFja0ZvcndhcmRMaXN0KCkgeyByZXR1cm4g
bV9kdW1wQmFja0ZvcndhcmRMaXN0OyB9CiAgICAgYm9vbCBzaG91bGREdW1wVGl0bGVDaGFuZ2Vz
KCkgeyByZXR1cm4gbV9kdW1wVGl0bGVDaGFuZ2VzOyB9CisgICAgYm9vbCBzaG91bGREdW1wUGVy
bWlzc2lvbkNsaWVudENhbGxiYWNrcygpIHsgcmV0dXJuIG1fZHVtcFBlcm1pc3Npb25DbGllbnRD
YWxsYmFja3M7IH0KICAgICBib29sIHNob3VsZER1bXBDaGlsZEZyYW1lU2Nyb2xsUG9zaXRpb25z
KCkgeyByZXR1cm4gbV9kdW1wQ2hpbGRGcmFtZVNjcm9sbFBvc2l0aW9uczsgfQogICAgIGJvb2wg
c2hvdWxkRHVtcENoaWxkRnJhbWVzQXNUZXh0KCkgeyByZXR1cm4gbV9kdW1wQ2hpbGRGcmFtZXNB
c1RleHQ7IH0KICAgICBib29sIHNob3VsZEdlbmVyYXRlUGl4ZWxSZXN1bHRzKCkgeyByZXR1cm4g
bV9nZW5lcmF0ZVBpeGVsUmVzdWx0czsgfQpAQCAtNTg3LDYgKzU4OSwxMCBAQCBwcml2YXRlOgog
ICAgIC8vIElmIHRydWUsIG91dHB1dCBhIG1lc3NhZ2Ugd2hlbiB0aGUgcGFnZSB0aXRsZSBpcyBj
aGFuZ2VkLgogICAgIGJvb2wgbV9kdW1wVGl0bGVDaGFuZ2VzOwogCisgICAgLy8gSWYgdHJ1ZSwg
b3V0cHV0IGEgZGVzY3JpcHRpdmUgbGluZSBlYWNoIHRpbWUgYSBwZXJtaXNzaW9uIGNsaWVudAor
ICAgIC8vIGNhbGxiYWNrIGlzIGludm9rZWQuIEN1cnJlbnRseSBvbmx5IGltcGxlbWVudGVkIGZv
ciBhbGxvd0ltYWdlLgorICAgIGJvb2wgbV9kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrczsK
KwogICAgIC8vIElmIHRydWUsIHRoZSB0ZXN0X3NoZWxsIHdpbGwgZ2VuZXJhdGUgcGl4ZWwgcmVz
dWx0cyBpbiBkdW1wQXNUZXh0IG1vZGUKICAgICBib29sIG1fZ2VuZXJhdGVQaXhlbFJlc3VsdHM7
CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5j
cHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3BwCmluZGV4IDFh
YWQwNzQwMTIyZGQzYzhkMmEyMDBkMTk0N2U0OGE1YzIwMjE3NTEuLjdiMTUwMWM5MDlkZjNiYTFj
OWQ1MmQyNTdiN2E2NzBhZGYwMTg3YWQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFNoZWxsLmNwcApAQCAtMTIxLDcgKzEyMSw3IEBAIFRlc3RTaGVsbDo6VGVzdFNoZWxs
KGJvb2wgdGVzdFNoZWxsTW9kZSkKICAgICBXZWJSdW50aW1lRmVhdHVyZXM6OmVuYWJsZU1lZGlh
U3RyZWFtKHRydWUpOwogICAgIFdlYlJ1bnRpbWVGZWF0dXJlczo6ZW5hYmxlV2ViQXVkaW8odHJ1
ZSk7IAogCi0gICAgbV93ZWJQZXJtaXNzaW9ucyA9IGFkb3B0UHRyKG5ldyBXZWJQZXJtaXNzaW9u
cygpKTsKKyAgICBtX3dlYlBlcm1pc3Npb25zID0gYWRvcHRQdHIobmV3IFdlYlBlcm1pc3Npb25z
KHRoaXMpKTsKICAgICBtX2FjY2Vzc2liaWxpdHlDb250cm9sbGVyID0gYWRvcHRQdHIobmV3IEFj
Y2Vzc2liaWxpdHlDb250cm9sbGVyKHRoaXMpKTsKICAgICBtX2xheW91dFRlc3RDb250cm9sbGVy
ID0gYWRvcHRQdHIobmV3IExheW91dFRlc3RDb250cm9sbGVyKHRoaXMpKTsKICAgICBtX2V2ZW50
U2VuZGVyID0gYWRvcHRQdHIobmV3IEV2ZW50U2VuZGVyKHRoaXMpKTsKZGlmZiAtLWdpdCBhL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcCBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcAppbmRleCBiMjM4ZDVmYzUz
N2EzYjE3MTM2ZjFjZmE3YjU4OWJjMGU2MmFjOTRmLi5kNmQ1N2MwYWI4ZjNlNGQ2NzUyZmNlYTQ0
Mjg5YzdiNTAxMTIwMzBlIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9XZWJQZXJtaXNzaW9ucy5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
V2ViUGVybWlzc2lvbnMuY3BwCkBAIC0zMSw3ICszMSwxMyBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIldlYlBlcm1pc3Npb25zLmgiCiAKLVdlYlBlcm1pc3Npb25zOjpXZWJQZXJt
aXNzaW9ucygpCisjaW5jbHVkZSAiTGF5b3V0VGVzdENvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJU
ZXN0U2hlbGwuaCIKKyNpbmNsdWRlICJXZWJDU3RyaW5nLmgiCisjaW5jbHVkZSAiV2ViVVJMLmgi
CisKK1dlYlBlcm1pc3Npb25zOjpXZWJQZXJtaXNzaW9ucyhUZXN0U2hlbGwqIHNoZWxsKQorICAg
IDogbV9zaGVsbChzaGVsbCkKIHsKICAgICByZXNldCgpOwogfQpAQCAtNDAsOSArNDYsMTIgQEAg
V2ViUGVybWlzc2lvbnM6On5XZWJQZXJtaXNzaW9ucygpCiB7CiB9CiAKLWJvb2wgV2ViUGVybWlz
c2lvbnM6OmFsbG93SW1hZ2VzKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0
aW5ncykKK2Jvb2wgV2ViUGVybWlzc2lvbnM6OmFsbG93SW1hZ2UoV2ViS2l0OjpXZWJGcmFtZSos
IGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBjb25zdCBXZWJLaXQ6OldlYlVSTCYgaW1hZ2VVUkwp
CiB7Ci0gICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5ncyAmJiBtX2ltYWdlc0FsbG93ZWQ7Cisg
ICAgYm9vbCBhbGxvd2VkID0gZW5hYmxlZFBlclNldHRpbmdzICYmIG1faW1hZ2VzQWxsb3dlZDsK
KyAgICBpZiAobGF5b3V0VGVzdENvbnRyb2xsZXIoKS0+c2hvdWxkRHVtcFBlcm1pc3Npb25DbGll
bnRDYWxsYmFja3MoKSkKKyAgICAgICAgZnByaW50ZihzdGRvdXQsICJQRVJNSVNTSU9OIENMSUVO
VDogYWxsb3dJbWFnZSglcyk6ICVzXG4iLCBtX3NoZWxsLT5ub3JtYWxpemVMYXlvdXRUZXN0VVJM
KGltYWdlVVJMLnNwZWMoKSkuY19zdHIoKSwgYWxsb3dlZCA/ICJ0cnVlIiA6ICJmYWxzZSIpOwor
ICAgIHJldHVybiBhbGxvd2VkOwogfQogCiBib29sIFdlYlBlcm1pc3Npb25zOjphbGxvd1N0b3Jh
Z2UoV2ViS2l0OjpXZWJGcmFtZSosIGJvb2wpCkBAIC02MCw3ICs2OSw3IEBAIGJvb2wgV2ViUGVy
bWlzc2lvbnM6OmFsbG93RGlzcGxheWluZ0luc2VjdXJlQ29udGVudChXZWJLaXQ6OldlYkZyYW1l
KiwgYm9vbCBlbmFiCiB7CiAgICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5ncyB8fCBtX2Rpc3Bs
YXlpbmdJbnNlY3VyZUNvbnRlbnRBbGxvd2VkOwogfQotIAorCiBib29sIFdlYlBlcm1pc3Npb25z
OjphbGxvd1J1bm5pbmdJbnNlY3VyZUNvbnRlbnQoV2ViS2l0OjpXZWJGcmFtZSosIGJvb2wgZW5h
YmxlZFBlclNldHRpbmdzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IFdlYktpdDo6V2ViU2VjdXJpdHlPcmlnaW4mLCBjb25zdCBXZWJLaXQ6
OldlYlVSTCYpCiB7CkBAIC0xMDAsMyArMTA5LDEwIEBAIHZvaWQgV2ViUGVybWlzc2lvbnM6OnJl
c2V0KCkKICAgICBtX2Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnRBbGxvd2VkID0gZmFsc2U7CiAg
ICAgbV9ydW5uaW5nSW5zZWN1cmVDb250ZW50QWxsb3dlZCA9IGZhbHNlOwogfQorCisvLyBQcml2
YXRlIGZ1bmN0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCisKK0xheW91dFRlc3RDb250cm9sbGVyKiBXZWJQZXJtaXNzaW9uczo6
bGF5b3V0VGVzdENvbnRyb2xsZXIoKSBjb25zdAoreworICAgIHJldHVybiBtX3NoZWxsLT5sYXlv
dXRUZXN0Q29udHJvbGxlcigpOworfQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vV2ViUGVybWlzc2lvbnMuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVt
L1dlYlBlcm1pc3Npb25zLmgKaW5kZXggNzhkOTZiYWM0ZWFlNDZmY2ExZTNiYjZkYTNmNmVjMDIz
ODhkYTExOC4uYmFjYTNhMTcxMTUwNjlmZDAyNmI0MjkxYWIyMTc0MmYxMDhkMmRkZSAxMDA2NDQK
LS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlzc2lvbnMuaAorKysg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5oCkBAIC0zMywx
MyArMzMsMTYgQEAKIAogI2luY2x1ZGUgIldlYlBlcm1pc3Npb25DbGllbnQuaCIKIAorY2xhc3Mg
TGF5b3V0VGVzdENvbnRyb2xsZXI7CitjbGFzcyBUZXN0U2hlbGw7CisKIGNsYXNzIFdlYlBlcm1p
c3Npb25zIDogcHVibGljIFdlYktpdDo6V2ViUGVybWlzc2lvbkNsaWVudCB7CiBwdWJsaWM6Ci0g
ICAgV2ViUGVybWlzc2lvbnMoKTsKKyAgICBXZWJQZXJtaXNzaW9ucyhUZXN0U2hlbGwqKTsKICAg
ICB2aXJ0dWFsIH5XZWJQZXJtaXNzaW9ucygpOwogCiAgICAgLy8gT3ZlcnJpZGUgV2ViUGVybWlz
c2lvbkNsaWVudCBtZXRob2RzLgotICAgIHZpcnR1YWwgYm9vbCBhbGxvd0ltYWdlcyhXZWJLaXQ6
OldlYkZyYW1lKiwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpOworICAgIHZpcnR1YWwgYm9vbCBh
bGxvd0ltYWdlKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncywgY29u
c3QgV2ViS2l0OjpXZWJVUkwmIGltYWdlVVJMKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dTdG9y
YWdlKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGxvY2FsKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxs
b3dQbHVnaW5zKFdlYktpdDo6V2ViRnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncyk7CiAg
ICAgdmlydHVhbCBib29sIGFsbG93RGlzcGxheWluZ0luc2VjdXJlQ29udGVudChXZWJLaXQ6Oldl
YkZyYW1lKiwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsCkBAIC01OCw2ICs2MSwxMSBAQCBwdWJs
aWM6CiAgICAgdm9pZCByZXNldCgpOwogCiBwcml2YXRlOgorICAgIExheW91dFRlc3RDb250cm9s
bGVyKiBsYXlvdXRUZXN0Q29udHJvbGxlcigpIGNvbnN0OworCisgICAgLy8gTm9uLW93bmluZyBw
b2ludGVyLiBUaGUgV2ViUGVybWlzc2lvbnMgaW5zdGFuY2UgaXMgb3duZWQgYnkgdGhpcyBUZXN0
U2hlbGwgaW5zdGFuY2UuCisgICAgVGVzdFNoZWxsKiBtX3NoZWxsOworCiAgICAgYm9vbCBtX2lt
YWdlc0FsbG93ZWQ7CiAgICAgYm9vbCBtX3N0b3JhZ2VBbGxvd2VkOwogICAgIGJvb2wgbV9wbHVn
aW5zQWxsb3dlZDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107719</attachid>
            <date>2011-09-16 13:47:25 -0700</date>
            <delta_ts>2011-09-16 22:51:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68071-20110916224723.patch</filename>
            <type>text/plain</type>
            <size>97033</size>
            <attacher>jochen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUzMTAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5ZWJjOGUwNWVhZDQxMTI1YzlmYTc4
MzYyZDlhZjRlOWI0ZTYyZjlhLi5lYzRiOTkxYzM4MTMxNTRkZDU0Y2NlZTZmOTBkY2M1ZjViNTBj
NTZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDktMTYgIEpvY2hlbiBFaXNpbmdlciAg
PGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQWRkIHRlc3RzIGZvciBGcmFtZUxvYWRl
ckNsaWVudDo6YWxsb3dJbWFnZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTY4MDcxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Blcm1pc3Npb25jbGllbnQvcmVzb3VyY2VzL2Jvc3Rp
bi5naWY6CisgICAgICAgICogaHR0cC90ZXN0cy9wZXJtaXNzaW9uY2xpZW50L3Jlc291cmNlcy9y
ZWRpci5waHA6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lvbmNsaWVudC9p
bWFnZS1wZXJtaXNzaW9ucy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21p
dW0vcGVybWlzc2lvbmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy5odG1sOgorICAgICAgICAqIHBs
YXRmb3JtL2h0dHAvdGVzdHMvcGVybWlzc2lvbmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vaHR0cC90ZXN0cy9wZXJtaXNzaW9uY2xpZW50
L2ltYWdlLXBlcm1pc3Npb25zLmh0bWw6CisKIDIwMTEtMDktMTYgIEphbWVzIFNpbW9uc2VuICA8
c2ltb25qYW1AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEZpeCBIVE1MNSBwYXJzZXIncyBhZG9w
dGlvbiBhZ2VuY3kgYWxnb3JpdGhtIHRvIHJlcGFyZW50IGNvcnJlY3RseQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJtaXNzaW9uY2xpZW50L3Jlc291cmNlcy9ib3N0b24u
Z2lmIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9wZXJtaXNzaW9uY2xpZW50L3Jlc291cmNlcy9i
b3N0b24uZ2lmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVkYzA5OWQ2MWU2ZDJiZmY0ODAxZTU4MDQzOWYzMTRmMDQw
M2IyM2UKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDU5Mzc1CnpjbVdpZWJ5eVJRXlQhN3ArWlky
ems5MmdaTHFlTHRofCUyJEJjKCpUUTVMfUhrJi1nJG1KfEBzalpRXkcxd3tufgp6TWQ3MT5nKkFX
US0jeiE9e2QzUGZfa1FsNCpQWGVBblU9UVNZbkJTWTQqLUNibEAkJkV2QkUpYzFQY2NrNCZ7ZmwK
emF8PzN2b2VfbnloemhXWmEmZEByQmpxX0U3cX4oNHlod0ZFMGkrWnN6bkNQaWd1RUNeUWR5R2d0
ZUIrWVMtQTJBCnozNTFCTWZURWZ0PllVXmBSYmBhMnMtbUxHKnxXLThYajI1Y2tweF57aDIyMDJz
VjZGSENOOENhUiNJUV90ZkxeKgp6U3tXVzchUzA5VnUkN1h0UjkxOVZrUGVaTkZ3KjFFUSZUazFJ
QiUoTyk8Y0spaVZtLWZ4PU5VKWlpeFImcW90QGgKej8hMWZiKilUSlNQfTZnbD9QVl9lRG9WKjRO
dmojM1JudHtld2JmOEgoOXFWYCk7MmEpKTA1UlZKRmpRMVo+KCpvCnpaKnRieVJAPk44OWNPeWMo
SDVzP1V9azEmWmZTMDg+RjgqclopYWxYWmZxUWEjbyUweCV7fVpkKl9wY2ZTY0pSawp6aGRXemBg
PGFBP1RiJFNSKVY5ODRaU1VqZDxja1huXjkmM05AVm4jXzVnKn1rREp0QTgoa0NKK0ptZzlPSn1m
M1MKentBeX09VERuX2VWTCZXM0FUPldBd0piSzRkP2h8VkZ0YUY8TTdmKz04QlEoPiZvN0hqRWVq
I2toVWVGWW0oQGxQCnpNQFg5UjlDUGtlUDVFcUhgRD5RKTEocV5vMlVNbnlMWDk8VmpnPjtCcEda
fkVgRjdWY0V1bTdxcTA7eEdySEVGQgp6THwrU0hsbkxwbzJRZlY4VEg8OT1iUjtQe3Q8RlFZRjNP
LVVMVEBIa3YqZkIlTm8/JVJYIW5yPmhnXnpKS344S2MKekRYa3pvXzQ+N31xfTwkbVFmNUkoVy1Q
ZlpuQEdLMFQlNGFAUitnR3lNJFJ3RyZvOFc/NCYpZDxGM19qdGd4QE8mCnp0Um9YQCVQNEkqcSVt
c1I/T1J1R3d+LXJmPF98VUpaOFcrcEg8QXUhMCQkdnMjQWVsfWw1MW8wbmAwfCE+Rz9NYwp6M2Fa
Skt3QFRgMHdmU1lXV3Q5ISgpIW9IYXdBJE00K1JEYTtueD53YlJPLWFfaWo3KVlYSG5oIWpqbjtW
LXJIcXUKejR7aT1WT3MjeU1NZjtIN2VvJWU7VUIjWE0+UEhWfjZKSHdVektrezArYENPMXl4VFpB
KFhjWDVKSTgyeEZoelNjCnpVT1JHVVhtTWliQGtIT05zcVRUe2lUPT8/JVhiLUReb2hCTGdWVCNN
alFRMnNqWXJRSHlXVCRVZVo4PV9feGkhVwp6LTBzbFktcTZ4PHxONCpsQyVhMjtLWWxvUF92aER0
RHVEbWx8NyFzTldkYSlnXzs2NylCTGJMRFlQeTBgNnIwVT8KeiM/bDEkJGQ4Yys7V20zUS1gNi0t
QnpofHx8R1J1T3UyfVhUI180QmteSFJCcjN2PGwxcG41UTF1MlF1ViVxNmFxCnpoI2BUPy1gbjJR
cit3Wk1rSDZ1cHUkdUh+cVlvPUBRKzEoa3QpczhodGdHO3VadX5BO1QtVz9UP0xmQFl7S0NNVQp6
dm9ENlA/OUpDJTRmbmhwaTxgQFIrMzl4diklfmx4cGdYIXg0e0NJPmYhWEM4PUMlUF52OFA4Pkt6
WkFzKGZDaVIKeng0ejhVaTBYOWFpcE9ISipNbzF6eXM1M0BvNGZzVHU1eDB3PmdCS2N2RkghOEFM
UUgkWXd5MVB1LStfTXNDI0wyCno9ZmZNR0dxJmZvXmklSVlkOEI1M1RQJCpxKFFOK2pGUEI4KD1T
YyFIa0s1S0B7Tzk1OTwxQGF1QDlGPmtAaj15Sgp6ZUZOPHx7ZnFPPGl8ZHRGdH1fV2dTV2FKT3tN
byNgalMmcXBMRXl4NE9uQSpAXihrd1hHN0orKE9GQmxhUkRGJEsKeng/MjZnPkZ4dE5XQVVJZXk8
Oyk5YT5ydkNIV3ckT25hOCV5YHw4cjFZS3Q8bEBOOThqRVd7bjM2TDBQaihjYkpUCno1ZXNMM1J1
V25ETTZsU2xwS1kocSZiNyoxSmEjPWdzS1A1T040Q1AlT2l8ODFoT14+XlRMYCROQD1+Vio3JFIy
RQp6Q2pmRGV0bGFAQ3dzKTBTRG1Bbl9oPWsoKGt9SlllQUdydHlDMV88O2lGVThORTVFWVNycEJm
N19HPTU1X0NFVSEKelRkakc5bndaWExkKlc4WSRJN1hpKX0hZ1M7KDctVyYrMnJUdzxvX1M+QSFs
VWJTZGdwXlckMmImWGJTZkRJZkRpCnpscD8yRFEpfk9DeF5LfFpWQmNFbjJqSlNqQlF6aVh4PWI1
KjdPZFAmZkc0fnRDVUl3cE1wX0U+MW9seys3NT43bAp6Rl4zcDF6dj1QVXFgflFYdHZtbU9FbGM/
V2lpMXJpbSkoPXk1ekNOXiFVR1ZjKVVEenAzSTlFI0hxWTJgZmolIWoKekQtfEl4cEAqNSMtZU9r
fGtBMipGaEFKeWkrMjVqUDY+al8jQH52IU5adCpDZShXPy1SOTUqc29PY29xfkRSIz1kCnpvZlQ9
UzZSWmV9e3VBRjs4ZyREO1U4M2shI2YhK2RNK3U1NG02biRaYnZHbjBEbig2fGhaU20lTzlfZVYt
elU2KAp6KnxrJWk5c1ljO29iVHB+UGVUX0FuP0Ila1VxcntndGBsWHgrKjZwaEgoRTdWSXh8RVRs
RE0pJWFyJTk2PWV4clQKenR2Z2h7Xil0aC1UdEFea2A4JlNpdHlWKXE7SG5ITkcxa14jO2VnKSgo
P15RYD08ckNQO2VQWW5DbnZScXtYZShWCnpYRiteJHJTYV9pcHlIcSUjX299cnVBLWFBK3s0V0E8
N01mR2YqeVhWbXRzIUQmZmopaiVJaU0jezJuOCk7KHA+Ywp6RG1mPXliKTF9a1E/Sys1T2Y5bUZN
UDBsfXlyU1lxbWVUZE9pbmI+Tl5ZSGpUMUVFKiVacldWXlNXeT5zK0ghSHUKel88YDBXNTclKGpk
K3s1O29+T2pVNzRJIytxUHh2dzhAdWQhWFNqSnZFU2tqcVlDbFdTUilGSlQwKjRETUkrb3xKCnok
fm5XRnlqJD9neFQhZXs8KFNlJlo/M2JLZDVnNjZXdGU+YTdNVjs7eyZncWAqXlYocUpGQjlEUjJv
SVRjdl5tSgp6R007SjJeb2g4U3pxI01Sa1VUZFZYQFlXYEUkaz1pYGQ5SkAxUWFfU1JtPTNyK1Ey
UU5peWJUNVdhYkp+UlYrQXsKejA9fEM0THJQYHMzWnZzemRgRikzPnl7flV5LUNJWFp2K1RDQV9E
TCE3dVhjN2kodzlmI3YmRXlER3wqTiFmUSFFCnowcEdBMztqMCR9VGwha0F8S290SCZwV2h0Xmoq
Ky1Lakl2aGhBb1dtWU9FMFkhPksoViVAeWx6P3oqV2MwM0xHYwp6IzR+M0o0Qm0mVE1iYm0jNzlY
byghfHxePTFUfGkrY1VMUVAkel8wbDc+bEhRc281Xk9id2B1ZlUxJUwze2wzZWEKeldYKT1WWUg1
bVBvST5eYGUmWFo9dkJHUTJOfS1QcDRXPXE1Nnp1OHJkJkF+T0BMK1k0eW4jaXctTj1TMW0rOyV6
CnpGJUMhMUhEMH1veXhpdiRWc0ZsQlJgKFpOZFQzP0E9aSZLaGUhTWcmQXx4Jn16dXx+aWE3T0dN
Sm5aP0RVeCtLagp6PHEmdGRvaGw9MT1hKnxXR0FWcSs5VnFnMitkeU1BVXlaRTNlI158R1FoU0Bf
YGFldUklZmM8b2kyaylKVkNPbVEKemd3NEZ9bDEzcHNvQVVYJnUlLUNnd187eSRvbClDNm5qZksk
aVQ0K1JWKEQ0ZCE8IW1hZGw+eDdFa1RYcDxKcmpUCnpHcmAmLT8hKH56bGo7cmMrQj1nQTh4Yktg
KFpiQmIwTVhRYD0jc3w8QDBhfkYqVi1TUD1edSEjSVNAblY8S1FrVAp6I21MKzlJcUxMVmNXO2R9
aXRwb0AqQG44aXgxSy0kbyZiPGxGYit0eG0jRV4yWVhleCNfd1BDbmMqbVU7czlFfjwKejF+Klh7
VHtiJEs+SnctNV53RTNYaXotVl9wX2VrcSRtJUVVQGE/bXRJK0w5JlU5QShPTH5mSWtMTVk2TSgk
THh5CnprfG5FWTtjSShgNUtMcSZJZyt3dnYjTHRDbX0rPHprQT1tc1BiSG5oKUomRCZWfEZ8QlFA
KCtENlM/ND5aSTc+Uwp6Z3pscn0mUFZ6YyMlS0lqPDsmTkM/KSlPIWB7LU1AIW53SmV6bCgwfDBg
ODZrKjxNMXNyd3hud083RzV5O0c0S1oKem4rMldrYXxUQGZmJDdXYzthWj5PI1Q0YldBQkorcUhr
My0mZXAzbXRZdFN5bzFQcFMmeW81RiZue0xpTjlzMnZtCnpVWEBzRVZqJGR6cSt0aGAqOy05fWJ5
QCsjfE5QYW0lYUQoSChiaVRCaistU0xeT3Y8TSlQdDVkO3g2XmUrJkoqZAp6NTQ7fXY+Yk9acCFN
Sj5lRCs8U2Q9QFlIJFYlKTVuS1hzRDchSmZAI1pBWUwlKmopKzdQYGc+OyYpO2hCT35MekMKenpL
dFcxX25Raz1iUkZPey00PVN6UkZeO1MhSjJPP1FNT315QlM8NkJaQGFCM3B0RkEpQm5qb29HM05L
QHNvdEpaCnohU18qMiNVPkhpYlRWMDlDQzdfO01KekJwe0poTnsqWiQoKVRhMShEOUctYm1rV2Fe
TDVTVygjSzBQNENzbDVDfQp6THF5O1l7bXI+d3poRDMxaXFYN2RiYXZpeFgrQVNBT0ViU0tpaFA7
MEwla0FIYGE1OEVJcCpvWUJpd3JuZ1FXK2QKelpEYl5LQU5aTVJAOEI3TCF6JVJeYlVYaSZeXiN+
TkJFdk1fUj1QI01RflNyNHctMH5fUDd6RmxYXkgwZCNrSHEwCnoyKVROQzB1fndTSCklOEV7c1Eq
OWg1cDMxMylEfTdYcFF1PFp2RUpqQmw9KSNnWHZsZkhTWTMqKXZWdCk4U3BBcwp6QjN1c3ZSUDZH
NVFvUCkqPGxQNld0RFk0MmJtZ3w5Knt5dGc4aTYtN0JSPjZFUk12JjlBTGRtSCVjN0ZOczxSSTIK
ellYMiZnM0tFWXdmTXh+c0BvYGdgezw8OEtrT3JQZD9AWG1kU1U1fm9DSzBATXpOPChQXjFSKitp
QWo4RiZWSD92Cno4ZHZ8cWBNU1YmLSZEUzxGSkhlbmBPKSprSXJDcD9qUVg5fF5aJGxWWmFocFF7
SFRjbm5+IWBnSSppSilPQjRDYQp6eFRmPXZ4c1djT3dfRUc8RjZuKmxKbWVKKlg/SXBEJWhsZVh5
bkdtfGJrWFJgKWZIclp2UzghOGkqcjgoe15wY14KemVSekZXZEpjbClSVkI7Q3k5bykrbXU5UjZJ
bSpxJXJCeShYWnt4VCg7LUB0cklWVztnQGVyZG07VlhFczN4WH5ECno4SCtkcWNtY3JYaUQ3U35C
e3RLMitNezZGQHJmemZpSGRDO2J5UlJUQVN2VHdRbi1EQmRWdHpWdGUkNlVlOF42Rwp6Sk9CP0x2
Pkw8VU09QE59Y2RTfXN4SD1QfClMdipWamxIKip7VGBqODU1UTU0UHN2KF5SPyhvQHN+bWFUUzli
QUEKenpTNjA0IUtyZCk7I2JfMiN7SEJ8ekg1dzRyPlozKy0/LT8pK0xEQEBib0c5PTc4Vj99YSo7
eElydlN7T25BQSlQCnpjVmJqTlBWMkR7ckApVVd1fTZVdGtKNXpgYjYhOHdlakxTSDFMZDROOyFk
WVIrNXF0MnVsNjMyMC1uKF4lOD1fYgp6RyNMOGdfMEM/Q1p8M2s4RWx4ZEYpODxsQnU1YTN4VTMy
ZjcjK2haeU9hZikyaj9IKX5SaV57Oy00Z1REZzFzTk8Kej1SOzNycm0lIyM9PHdHclVgR0heYihL
WDNPX1hoOF5UZFA4KEo7bGYjUSprKUojP3F7P3VuX0ZWVCkqMzIlNFJjCnpOWWRGaXNHU3ooNi1X
UzhVSmc0QmhwJShJVGpqVmhNe2M+bUgzR0BaI3l+Z2tLem9tJXoxdGwzZE5aM19wO143cQp6cyNS
ejxueGthWldvVEQ0VHIxTC11TFFNZWJzMVVgbDlVQldEM01SYnQwZHp+LWpgVTxHZk9QP3YmV3BI
aXAkZm8KemFGbmc+dEdiKE1GS0M+Rz59OG5iUVk8KFM2Q0MoPm42aHkoeF9DYkQxfmtZSCUoO0Nk
OG5kM1crWGB0eiNpVjJNCnpUQXxuZm8/UD5LYmdwblpGWFglU20mPmBqTTR3QmNyZCsxaTJUdj13
Z1d6OzNCejQ7dk40ensmZXVJMTdZfmhLUwp6b2opWGtoZGVKcD0xdDFLXzkzMlQwI0RvcTJjZmBL
IUpyRSRxTGMjQThPNjRQXlF9T2BacU8xLTE3WSNtaTdtYXYKelFjIWd4amlWNz1iWCY5TnQ4Q0t1
UXtrKGEoNXloaSVZSEp7QTRUYDZXWl43dzx1aV81R3pUPmJucXo7KGA7PllRCnp6JWdyNE91IWVu
JXlBUylhYT9YTDMxRipSWWNGfWZEIVE2ZWF5QXNCIzxha3pSZ3FyX20lYkoqLUx+TTt2WTszIwp6
bVNJTHF3fms1PStCclhkeE91ZEJeVz8pLUJhZUZIcFFXSjdvRSpkVEpuIUFqP25MRUwkfUM0Y1lK
JCUyTFVMfSoKenIqOUFFKU5TT3smcUdvR2FMKjY5eHtqdFUpQXI0I0Yrc3ZOPF5UP1okUSNZM1p+
LU4rdnA9K0AteyhhdS1aMElzCnpPZHF7Kk87SShxPHAjUmkrYkQjZlMqPGB3UjtRXnEjKnA+MDt2
bG19OzI8PHhqVnM4K288I0ArYm0oUVBSYCg2Sgp6WFJyQ3soP1RvTSVQaUNsZlplOVRPOXg+ZT1p
eF5iUWIjQiQ5OGRETV4hKlchRVJ6IzUtakoqMk5na3V1aklNSD0KelBmb1ZlOyRXfTNrXytIeWYp
dypBVylaMERQZzxZQHktPXB1Mk4kbSk3dlZjNEJkdStVSWR4fSR3IUlteF5WUSVRCnp1T2hSMHZ+
TVQzVGV+TXVecm41IXhvUHpDWDJadnVqWT1JS2xSR2VAb1RvWVV3M1BheXAhIzN6Rz1MSXFQPXt1
MQp6TXRnYXF2ISpme3UyZnpSQ0difDRyX2YqeyZBQ1V9Sn1vWFYxejV3RXohLSFKJXU5fVEtSlp8
OE94Rn1ieFR9YGUKejQyN3A2QClKQiVDa0Ymfk1EcEY7ZFVqS0stZDZXcT9kdWBzJFlnOF5ZQTk3
YzNVT0dLZyYzeFFKJGdZX15pWEYhCnpJRGxxQmEhYiVuVnZsYEIpRSREd3tlU0Aqckdafnl3MDRk
YkQhM2V4KWElKzshPUhwNHZrMWx+WCo4a31YPWFfMAp6Zj4jbUFINnBEc2kjNS1hQHVHNT40LT1U
czZ3NnZwa0NaST87d057WXE+cl5sKWl1PCsxR2UpNmtuZVM2Jis2V1cKenchaHUzeVA3aCVpKWJ9
bEI3YT5kRXFZU2dWJWdFTyRtIzRnPFpSVihzNkZKR0leO0ZoKFgtZ21efj9SPWhwV0dHCnolNjwj
eUskTFBJOWk4SiE8Jm5DYSsjUWZ+MDZje1hhYzdTV1NoeDJWZ2xvT2M/TEBgaXJrSiQjIWdUIWAr
R3NIRAp6T2d7MEhZbz58YTRmREVwdjJjQFk3O0JPczdtIWV5N2hnRng+TXBOYFhkQTUmeTwweXYl
MHI2N0tgTUZwWlZTNTAKektBRGp6bHx4b00xcVl6bT49QTYyMEtHTnFWQkk5Ji01QG48XithZVk0
NX5ZPnxGfkNZcyZEfWZgKzZEe2ZsM05UCno2JHl1djBJOXltKGhBQVUzS19IMG1JPlA2MWMyKmhf
fjV1QU40N29tYz8ocU5DdzJVJktYKkgjOGs0Q1JLSmNEaQp6cXR4aksoV0hMV3ktKVFfOXYqRXNk
Qk8yfHB7RCVxe2l+TWs3SHh3VDJsdHN7OU9sMVVadlByUVJ2Yzx3ezlpP2UKejVQQSYwYW42SDxv
NTxSbSRnVTNHeXFvP0BefSR9OXlnI0JLRFU8OTw8PDZydEgrRmJqXzs3WH1FWEAlPHlkait5Cnpl
JDVEeSFIJEttRWVmPGd4JUk7aC1ld1BqbHxwVm8zR29QVGZZdUdPWjEyV3soWmpJMnhMUWE4VkNL
cUshSD5CIQp6ald3Z0slNmh+UEo9WmlIclV2ZkRzdl50R0FWSXlpMThBZnhRUzRWU1ZYNkwzRFF8
a0c0cXpUaUZkIUNFKEY/bmMKemZ3QCRWR3dub0A+fHg7JXklelNDRWhhPFktUjd8YlY+TUh2ZExw
YGloYyolWSVMViRVI2taVjEmPk8rPXZwKzIqCnpeQl9EV0Y5V0tYM1Zvbj5lPjcpdGh3NykzZFM3
Sz5AenY9NCVDUG98NG5LX08ocDM+SWVFY0FMK1FOLS00cUgpMQp6VE51T1RmTzhBS0pmRjZfWGd4
Rj0hNE16NnhxM0tzSSREYWE+RzE4V2VfPy16cWplP2RjaG4xYjQofjxJSChQO2sKel5mLTRfOUBI
enVHJE0wVEdSa0cjYSN5M150TFc8YFImZSo5QlVGeT05fmFITW83QjkoKTYoKn13Kz0/ayMoUXZY
Cnpja05XfVIpKXtLU3NhQ1J1aHd4MDlwfm9uZWF0eGpRNHMmZ0pabDwjNiRMZyFmZ0xQO2xNLVBJ
UUx0LT11bXV7awp6dys5N3ReOCpLR3ohJmlCeDN9VDQ7XlBneVlZen1HViVxJGg1bUdxS3FCQFNm
b2VDRSNTJkt4aUhgJlhGTkl9fVIKeiFPNXJ2LSVPNT80RW5AMnlDQiRnOCp6Vl9NeS1yV1glXnhA
Mm9Lfl5wO0BjPG8mPmlKUXh8PU1sdm8kWVdnUD0hCnp5KUhMVjkzZXJOO1QjVSgqJExsb0VfZH03
Q1lHMEFVMzkyZXQwbCtBKXhgLXFlQ1hJPlNANGp2Rm56aTM8P19QVAp6XjdObCZAdmU/WDt8ISRP
JUtCRXZYNClPdiVGNUc+dlBSQWFQXkFZcUxPOV8lb1VffjlyTWttdHYwTDtnbFN3Pz4Keit5cCp9
OE5QZEleKSV3eigyUyZDc0lFcnFiYUU2Vks3MUlWa1lSMjspQmErSGB8bTJ9I0VkNlhZTmpFND1K
OV9HCnp3KXFaN1k8fTkkTWoxNm9kYXZNUkcrUGh+N1FYRzFeYUdaZF87YFUxU0ZEMiUoT3hafVZE
QDtoOyFCQCpvVl50Jgp6U1N6MFcwZDJoOHA4YnMkdFEtWGs+SyhnKjV9QmRHZzYhRkpCe19vO1oy
bE9MZkNgaFY4TDtuYHV6I294PWEoRWoKejczPz4rKntKfmJOOz47WjhyOGBpZGg/S0BYY2dMckRP
T2ptJXw8Xi17cC0/Z29zMXRNNTY1di0oVU5aPkF9Vz9eCno/eFNgKXgxUHkmRXsmeHZ5eURuK2Fq
PXlBLSVfO0Jhe2tLbHFSSiohZjc5ak92VX11bSZCU0thJUJIQjslNytDOwp6YD4pYjF2RjkpSnAz
NmwlOzF6b0Nabj85SUdxLVclTDRzJmtZKXlGXl5+STA7UVJYZFZaYjdIWGJYV31pPHdKPioKell2
OU1haEBgRllJdFZNMiZ+fnQyNkZ2aHdge0NpRzR+VVNOPGA9NzFSRDBARVdnP24tXyk1Xyt6NW1s
Rm9YLWd5Cnp4bjAkaHZEUWowP0VLVys4VnZMSzJzYlE7VW99N0lTcHxGQXZ3MG9ldyleT181Pj9H
JjBCZiprfE13Z2A+QlpTOwp6JmwlWVpHRGZmZj9CTmNvVUAjc2FmJm1xSkstVE9iYEpGb304NEp6
QDk4YT4/R2lqXn04TFMjblp7Q2hVbTNwQX4Kek9TTWhJX1pCfGYzcHNscSZ7ZDxCP0J+VkN3Sl4m
KkwxITtzV2dvYDd7d1VscWU+RE1weEp6N0ZhKz1eNi1hYk9TCno9SE5Dd1ctMmNgLVA8ZCFKMSMw
WF9CZ2xzXjVfYEZ5QEl6TF41SjU+YF8kZ0NAanNPMWI3d1BSYT90YTZNX3FLcwp6cjNXSFhHM1Rz
QHxGaDJKNXhKRjJkLTJTMl5xRUsoSyVxZypuQTNVTUgyMWVYSjlmMXVidmlmbEw7MCgyZCY2Jn4K
ej1rNy1HZTg1aGN4ZllFfEVXUEooZj9UR2AtKExOPS0xfjg4YCZCRHwlQFBsOElmRDIxU2plV2Mr
YmhBQ3huc0V6CnpGeT88U08/UCV8e05vMnZhTDtOc2xNSnsmanBiUG5PSnMmPTcjPCtEJV80I1Vm
WUVHaUREWSh9V0UkUGlAJGJrPAp6enBhWUtVWVdzNEs0UjU0VnN7TEk/JXNSVHhCVnV8OXtSO0xi
S25SIzlRN0dHeztWUiFaeF8hfGRzS3JqWFEkSEgKek83Uj9rdTRrYHVqJFYhSmBtdF5GZUxtdG5l
PntyI3l+MkY+aHd0O3pGbE0+NVV8SG47QHc1OEImcCZVVlVVU1pGCnp7b1FgZURTZFVic15GeGZk
Z1dhYWJOPyNtcnJ6XlV1aXcyfWVtQ0I2JkxyYFJsPkcyVEpHal5BempJcShiaCMxcQp6dUstfXlC
MSQhMnQqeV4xcWAqJWpiZ2ZXV0l2QysxaylNTTgmWnhgfEZzRyYrWDJeSn4/T0sjNjlCKG03JkFE
Y0UKemxIWmwzY3w0WSN0LTkjN3hYa3kzJWcqNVo9VyZtM04+JDNpMyQ/UFRkckJTYClYSkA4MU1i
WTBsX2BgenVNYGRsCnpVVTc0MSNDaC1yRXRWKys1M00jQ0lwdEw7eUlyWT5LK2AzU0ZJK1UlTCoh
c0FlVEZvXmRMaCZkcWUqXmVWS2l0SAp6XzBEKFQoczBVNyR5V0gmMkozb3NKS1k0ZytLT2RuYWB9
MEp0YXd5PkBBKyQ3eEhMfn5HMGhRTihJTmtqeTJlWi0KenluSFpHPEs1I3M1b3d4UncoJDcyWnpU
bXdvTSEqZ3YkWnBDXm8lcHxONipYMmMmbUd8K1dra0wlY05pRCo1Pl81Cnp7PDVgeGBeVzZjaWAz
S095QCMjN3pTa35aSl5oeVdfSTE3Q2FPOW0yVTx9TGYmTWZeM3VPNkJLPkpCfChUb0VnPwp6cE4j
MTBZY2J8SFVwcVMpcUIjaHp6N0IlNWFOfmNpMkc5dDxQKys3IyopSk85ak5AO2M3RjBIN2xndzwo
MntGJVgKengtfnptY1RWWXB3MUpNJjF6REw9PWFffXNxPnBYUXwzaX4mT31nSnRiTDYkKGpXaVpF
bCU8JlI1NUUkYjVlfXxRCnpvKzs2NllNWH1OZWl7PFgrMyVANnFjVUwybHIqZ2g5N0Y+UCFjPm0m
TF5pMS0zeytZVW0md0lSKiR5d2JlQCtzUQp6PTlIcSthe1AoKmhYNl9EcWRtUHRuWHcyUzg8Pk02
NCtpPl5PdlIhK0t6dWd0Ui02Xil7dGl1NCUhU2F2O3goPmYKemMmJCY7eDBUX0E7QTBzKys9WklW
OCRKZDwkKSZpO1FxdX5ybU43MmZtbUxLVyE9TEU3PVU7czRuVjE+Qkl0Rnw7CnplKENBZEw7Y0B0
RXtUYF5wMlFCbnswb3dhcTY0X1FaWk5MJkZvY1ozdmlZbCUqVlA4Mk03U14zJlE+RGF5ZDdvOwp6
Nm8rRHk+Pk9jKkJCRXRlR303Tzd7ODQyPCtTbFhDTFQlPXcyOSltRitqK2ZReTx7QWYlenErdExw
NjdGeDZKP0EKeiZuQ0k2dH0qaDtVcEJCVTIyN3YrZWcmc1dvKjlAIVNAZGtWaERyMVFPI2tIfHh5
PHQzVTZabllAMmJhVDQlUXdzCnpVNGRtRUl5ZSVhK29LJCRESTBWV2JSRCZxRntwdllPMm9QNVdJ
KHd5NVhQKk1JQ2ZVKHRvcVNxO3BwTGtMeGhkRwp6cEc+Z3sld21AaDMtY0k0SmhwYyM4MWV1elRy
ezZZeWQ4U30wI2x5fUZ9NUBXdD1zcnBqOG9VeCtpenYjYlhIY30KelVpTiVAYHJefGFAJCl+VFFY
I3stMDgqbVJ5e25XVEVsSW1ZWlUjVCE5MGQzenwyZz5gWjF9SV5fQn1lX3I8TUtkCnpZdG8wV2V6
T0JfK1QqV3U5VjRjUlZzaVQ/eWJlX2tNTSZSSVF8U1YjbnIyOEJfaGxgbEd0b2dkQWJfOFF7NCs0
Vwp6dFFVZzsjcTNIbSYpaDxxV2ZWNi00NS17fm1IMStiNE5SRXtJIUZoJlYyaEtJUmgwYTIqe3ZG
ZzR2eHZ6PChDJDIKelkwRlk5PiY8YyleeTcmMWNkOVkqJVcpYlpAJl8mNFFjVCYkeCtTZ2ZIJGlK
fCZRaUg5PlJEYmYyMjZ0RlhqdnxGCnomYTNgVyszTUN0MExjJnh3QiYrdXZuR3VONn1OcTZ0VCok
e1ZwNWV8Z2ZVLUB7WnNqMU5mQiE/RFZ+LWIoPVo4IQp6aHstQzxFIVRjcDE/bkt8bFlaYEVkOWYp
Y3VkMFpkeD5TNSQ2aj0pU1VkTHpeI1k9Kmw0QCZ7TFk9Y2UmRTRLb04KelM3WTtSMj5yVHVfOCt0
PyRCc3YpMGgxcChIN2dZalRle3luRGVzUWhKRV4jXzdgY3MyOEw5Ty1BTmBeSmdVZUA7Cno9Z2NM
RUFJTkZfej85RC0ldGgreTFydjFHcE1ZeTFwOHhIN24rOVE/YFBXbj9FN0FHS0hVWWkrVyp0WXFY
aUVvNwp6K30oJUx2TnwtQDdlNX5xY19UPF9ySSMmeVRwITlkQDU8dHl4MFdgPGxgMDhhTlQoe3lD
PjJKLXRoI1AtUl5UNWEKekAwfCRyUX5taW5TNEYmSWtraV4ldUdzb3xuSlFQUlcrYD5DaCE/KWUw
TXFBTEJvVFB7OTImcip6RC1kMkJQIyQoCnpRYmVmdDVgYmE+RnZ2VXJwPkBSVmNyJnxmdGRjRjF3
e0xkWj8rc3NgZns3JkJmI1R7QnNuTHIhTENNVFB5JnVWVwp6a3NudGlzSnRDOW1SYU5KTG1meVg4
UEh4WClgVz9WTzFCP09TdyFKXk9NfkRfSX12XykkNkdeWCF6Z0J1QDZTYW0KemtNQz5jZ0gzeFht
KWtBVlFMY1NtVSU+e35LRGZgblM/aGJmKzhod08kKGluY1RYYnFHQkk4N3M8fHB4Rzs4KTQmCnpn
fVRzTkNzbSlaa30rcUR0alBfekRfNSUoVzlsVmJXJTVPSz9ucmZEKnNkbXI3c20/cnFLO0UoeC1V
SnBmQ2ZpNQp6RkRVYn1nO3A/NzhXLXlva0dCb0dZcUlPVSNANmUkdWk1IWJMSkhTIShIN2hAQURj
d3liWkduKz1DN0oqYGNsLVMKemA7a1JzZHgpdklWRiNQVyRQXzxkd0VAeFo0cX5Na2lTVkhuZDhS
VzghKF5+UEdrZ3RMNHhpeXFGPUYrc3I1aGVECnp4PCZtfDxzckM+Tm9rNUhWZXdMWXYybz5MNS1m
Um9WVWF4VWIoeFo2S0hRekdQbnJXejZRJmVgMFgzaF8/ZG40eAp6eXh+PWE7IUtSU3dvWjFGR349
SUxpMFJqQCV3Tjg9Rno8SCVJamN+KlklP0JXPD9ib3h5N1lTRXEoWjMxe29JKjUKejwpYVpAPVVY
cHNFOylZaDVCJjVIdHo5I2IjLT1iPnxNRkdIN25rU1BiSXUhIT1EdCZabUpMSWVodHZSYnVGUUJJ
CnotMjIwTGNxY2B4UmYhbkxiSnx7dDs7JEt1NUtZPWpUPksmPnc1eDdlbmBkT2RiU1Jec24qK0hL
NypARn1ObUhEZgp6N3F8Q1liQEU9eCo2cmYrX0lCV0MrJiR1dD4xZzlsKk96eHxBfnlRUmhHPSo/
MnlwPWomPWdmVnZaK3tNb1NvJT0KejZ4JDNXMkxNUyF7ZVl+Zk9lN1pvI0h8OG9ZYjNgY2ZfVyQr
eiZCZz1LXit2UCNVSU4wUUR1aX5mc0hGP3Y5NFNxCnojQi1vYFNzdDFBUlA2STlrQUNuTHNAQWg9
NWozPUxWezJ3V2h2bHJ9O3cwYWxlVU1ONHZSbDQlKW5kVHgxLX1WKwp6RmpaTXwqSVEwfFZLfD9B
dXw7Zjg7aH03aD08a3o/K2k1Ripnb0FafEp1WVAzTmdHSWI+aHtvMylGN0JFZWByMUoKell6fGE+
VS0oSHZJJE09KmxXYlA1cWtfbikpNVVwcCNnfnt9a3NKT2dib0deVUk2SD8jb25ZVWg5LXZqcilg
eW1mCnpwaVd6MWJMZEBJT0h9djc1bkY/RF5+dE47Uyt+eil1UkBmbSM0TFJjWDwtZ2p1Zl5aNzM8
WjheKWBqbD9OQyR4ewp6NmZTMkVMMXpIPT9YIVMqNEFBaDJhKjRoeXJBNn5XYlA+bCYyIWBxNnBX
TiFzUzl0akxqTzsrWnErNzd5S3N9b0AKenw4TmUwQlc+RyYrMjxIfko8c0UpQE9FN1RORzc2fUQy
aWRfdDNeejZyYkxsJl9NMlpHWFpONCZfbF93bU8qYH1hCnotfFk4XipYYylCZWIybzQkREZnYzdn
T0c7U0gzPzcyXjNCQm4weC1gLU9PUnVwTGh3K2BYNV4memtLRUJhX2pIMAp6WUNMYk1pK18wTjVi
UEBycGtTbmZ4QHEzc185ZnNjZGtIa2A+fjA0PSRBTzBZME9oPSgzb21LQ1VEeyhHK2hnKz4KeiF8
T2EmYn1CNSpweG1ARGEoTXdITyk3Wih6TG9kOWRPWkFnOTs9alNNNWMzOD1Jdi1Pb2xvJntsJDcr
bUNae2AqCno5WUc5NHU/RiEwOW9yaGg+YDUyZVNsT2ViZkM/bTQ2Y1lnNzIwUiNHXkI1V05ZR2Qo
fkVPJCZVWHFnMEFxeHk2JQp6XmQpbkV0ZlFKdEdpcWhXKmRgYjFKblNvYEVveUQlcl5NZyhuYV5X
MntBKjNuUTtva3NjMkkrdWFCeFR0UyVPOW8KenJHeEN+QVkyPVojMFpOPjJLbi0la3E9V1EyVEtO
fVBBWj44NE50N1AocFImT2BEVHZhVU58fEpLQnNHVkY1diN4CnpAY1RjZUFuNnA5KEBzTXMjcWVM
UjtwKzN6S1d8NiVRZEAzJG8jOWlZPWU4cV84fGs4Y205MCtkRT9QWThrRCZ4Zwp6YXFiUn4yc29j
fipEUUB5QmFMXkFZWnRAbWNySjM7akwpUGI0LUd5MU1IdnByOWJhbVRVbXdlQEh0T0VkNVV0ZzkK
emlVTW4zTkUjdkZ8SmB3bjc4KkRLOEJpdkxITmw/YnRkUWw1QiF4d1JMKCF4UUdAenBiPXxVN3lH
WHd9a0UzKT5ZCnpAMEdCNVc+a0N2PXdsUT5Na3Vsb25yeGxhO2lCRFBoUXM+b1BjNFR8bmI/RTBj
OXF8dDNNS0dkWnxOWCZfZU45OAp6c3M3d2RKIWRnJV91NXZOaVNaSEhZa1BpN2l0OEstPGlnWH1E
Z3t5X2xkLTc2YkwlRlpVI0V7YTNfcHZgcTtGVy0Kejl+JChDJjNzYXU9QEREJTdjPSNjRitGRmM7
I01+RWVXfCZlcSV0b2VIfiQ9KioxTDN0ZGpBKDZxVn5ZKjxge1ZHCnohZGJ8dThsWHdlUk4zczty
ZClIKW5LeVRmT2BYXmJETFZRZ1c+N0w2dH0rezgqfjRNb2xPU1JRNmZ3JXBzc0Z4MQp6QDE0PnFx
TVhVfnZ1MSomYSQ9Z1FzKi1JNllHfiVNOHU+SWNtKC15RWNYUUR9amFMITVkSG83TFFAWGhAc210
eXAKemIkZyYmVE5WdFJGe3d0Pkt4aWYtTmVYJXk/RCh2dEhuNE9YUEl7aHIwUyREKWZ1JSE7RTVF
YUNrSTMxTG5ZUX59CnpiXnZ7MnooVUp+YSNMaTE8YCRYUFlheUFWXk0qQ1o1TyZXdGliYmZHQVE4
blB2ZHY8NTNiTWc5Vz1NQ2dxeCVTewp6cHFXMVg3YVk/TT0lQVIjWSMjZThZZXdaLXkheEZ3PGZs
Nz9ZOzFxVztOc15PbWZmSkc5ezNXISVfR09kTVp2JCoKejExZDlEPWQqPk1XVCNie0Y2TFMtUENv
aGBZanJ4N0g5dSl1R29ZUTtZdntHU3E7KzZnRktTSSF1Zko3bF9Qd2UmCnpUIzJkdkJVIWleJWEt
NEYpe3UlYyUpb0B9KnpodiRifWd3RlpCdXc5SDkjPHAwakcxRlV1TF5JYnoqRGo7SmNMSwp6ZDZH
YEk0V3U4SCttNkMtSkx6a3pKUHAoa3UpZWpHWn1qVCQqNlRGJFF7dFNAN35fcE1QfjlGSnlgMkY9
MTA4WGgKejBqTnc+Y1ZaYWdBciNIWjwoP1ZWbVpofHYhQXs4bDslaWhEdlElK3c3bT1qdkJkbnNt
Q2lqJT0/Mj1mRi1DMnliCnpTI1QoaiNLdm10QiotMU51LV5OeUx4ajloREtLQjA+OWNQS20+XnAw
NS09KWN2c0UoNFctOTZKbCNRMTFFeDN0SQp6MkI9WmJAYFQwKV9+ejI0aiVgVj9keFc8djdfX3Zo
YngyeXR7OyV8enopTUstT3QkbXhxTkJgPUREJW0pK2htOGQKemQ1QjF9THokQGlxTGUkYVpic3RM
aFF2eTlnMkxMVl40ZGcxYzAkfGUjR3krMUBzaUo8KGVUUXc+eGVBVihuPGtJCnpiemEzeVVlISRs
ZD9uQyg1VUlfUjxEcEtWb18pa1dfYH5sRSlafD40TntJcEJ3eU1VdHdeQldrNSMyZUc+Oy11Rwp6
QXtuRUxeVkQ0aD5RWUk1XkNqczI5QGpNd083VmJtdEFOXmNwd0pGVUpBXz90LT5FMnNlWGokVWdN
MStJZUMrIXEKeiF9UjVmWH1QJj9FSTVtSkUzVDV5TXF8PXc2QTs/UUR1cSMkaWVkd2U4QjZVME5+
PCR1YWhjSDc0Q3l4Rl48THQ/Cnp2ZGtjcT83STx5WHl2cU4pM211KmZ3Y25KKyNYYihVdjNObFZi
QzNHUVRpVDlFWDtyN2d0d14jd0t5ZlN7VjlVaQp6WUQ5czZgNiswUXtnTXJTdjA8Rjs5MGhjNHBY
Sj5Dcjg4fDcrP2tmN0BEQXRXKXM3fU0mKSY+RTdvVVBIb0cwMm4KengldF9MQS03YjRqZ09wNWp7
TlM5eUtWPDtHZnc7KUFgPWNMb0V0PWEtJU9XeyUqLVdKYGlBNjhjNmllM1R5YU9RCnp1VH0qczh+
P0ZiN3JGNHZieTFxdGJlQFQqNkxEcmE0czszJiprJHs1Mm5mJCNlMEVjWj1lKEBiKEhtZzZePUEw
YAp6LUsqcD9uaUBITEViMzJ9cH1IPWYmMVhHMz53dnQ5eW41VDRKXkpSb1hMPEJPYyo2UzR7TXkj
PVIxIWVzTDFMfT4KenB5fDVsNj8zRT4raHpBc14oM305M2FmbHwySHpeaiNRWH4+MW5hbTNsTVNR
PldUbXA0LTVPVkwmJXx4TXhRLXxNCnpzfnlQXkNGN0Q8LVg5UG8wUU1xQkFaYHQ7NFhyVUxwYTI1
XlZKJCZlZHl3NiFiZz1OLV9YOHxYOyVmeVNWPFQydgp6NGM1c1JsY3pkbkZELWk2XnpOfTxjKlN4
ZGkoR3ZPJEtnT1kxbjFMc3QjPzteX0V2VlNDRVN6aTkoYFBTXmBaUWsKemtodE5BekBCfUFMOzgk
UXNgJT85YWQqKT0oe0M7dFYmenRwWm97MVBqbmkpNU9EKD5DM1NLfCNhSG8laEwjWnZWCno/aU1w
Uyl3MzxrKnFUfklkRV8lZy13Nm93PE90KWpSJVplZSVwIXRtYnBAIUtuY2Vqb1BDZFpxIXJFaXBm
K2g3eQp6N3xBfU07VlFgd25XZWk1KXJMT1NuO35fQF9mKHlGM05iZ0dARjYrJSNnN0Z8Km1RN0V2
Qko1NXkpZztSe240ZWQKeikwN3RAYGZQQy10WmJ7cy0xRDBNRVd4Vm9jVnRubDRqOG5DSndPdVNl
YiRAa2YwVXV9TS1lYz1WdkZ+JnFqLXk7Cnotb0UhVFE0ZTA2LTJePS14TS1STCFVQTVaPD00Sj1h
Pi1PSyExTndMS3g/WWVBN3EkeT5CKUFWSjd0eDkxIU0kVwp6RWQjSDxkUCU2fkB7dkcqX1M4bCE1
fGsxcUkmKzt+U3Z9cHxLa0g1eV43Kks3YUE+O2NRMHNIZUpeYitPZm5hKkwKejxJTXhuXmRQc01n
WVFuaFN3WCYoJS0zRkVNXnYqZjxJfj0wLVJwIVhYcHQjQ3BhPVN8MEkzaG5gbnV5PTlLXkhlCnpU
RGJfJCFyTFBnbzt1PT5OST5nTmFQUyE+Q1R8bVpWVXlvdDFecTspUX1sOTZWfmE/UmRPTFFreXxn
a280WDhVcAp6WUEoUU54MkBAQTlFUzhEPVFaYypafCZAS29EREZMKjh2Q3pqKlB1dEFObW0lYEdZ
dzNAfmgtITFlK1FUPSFEQncKenNQczRXQVdHVFNfJHZVcC1IOGVhcUUqSlloQzR2YEQ4cHpjPEo9
biNFYCtwYkZOK1hgezUzKyo4aHo8fiZERnsqCnpeMUw8KDZHRTxiRXFEd2k4ekRleVdzTiRvKmt+
MTc/XypoPmxven1Sd354NUE7UW4qTDJuVDlnQ1BVdG55I1YmRgp6fDA1e2wxMHtNMTdHJXErYX0k
PXwhfWs3JGVRblp1bXdzP3k4YXthTHpePj1tdHxJKG8kVSplfHYoWTxgaFExJVcKekMwS2FgWilB
MXZXJmR8VD9fdTcqeDRpZkJLa2VMWl9YTmJkPi1hLVErP2tOOTsxQENQbWdGYmAkMSVfM2JvaGow
CnpkejhOejtQOGYoY2V4Q0IyOzBrMCpuNWJYamdee3ROJjh5NE8/fDVfTVVUNnJ7eHMpZTY0Mn56
RU9RamQrJDhCTQp6KDNHXkhkQntsODIxI2U1TTl9MXhQNytDPDJEQkU/OUtuQ1dZT0lUVi00WHNl
YmgoJFQ/b1A2I1dHZiY2UXVlRzsKej95Uy13Wj1Cc3BvYklmT0Q1M15GYCVQX3p3MCtzY3crdyRZ
YXBnPEtiPXFmczNkblBXNE16e05qM2JDNT5feFEjCnp4THBqfD91UDAqbDVMPj4+IXoxI2RTdHNK
ZilfTVFzRXVWSW9na3V4PHlIJlpBYFA/Y08mTSZGQGheYDg+cD5wOQp6RU19aHchYzJmWT98czQ9
MFlvfjtIPk8lZjRZOWZJbExmaHhfSll7SGlYOUFCTH0lNj8tLSRkQmpaWnEqZ0FtRzMKeihgY3VU
P3xlPiUrJiZNNTdoSzx5SmFoOEJYNzlVSTQyOHxuT1R3fTJhdHgjSkJtdGtUY3NiazhIRGROJiM4
U2BDCnojVmxsNDM9ZVROU3R6PHZ7WT0maElFRDVEJFMzKExJTD16KkBfJFh6WDVsZWFweyZuT1Jw
KHJ0aElGVlQtUUU9RQp6LWUyWlJOUHFpR0tOYDNmbEE0VWsjTEU5PkNWJG13MTczXipjRDRlWStl
JWBrK1ZKamR7dERvellHfGIpXzx1aXIKelZJa1NBQlYjc214QFBILXdtKXRLQlFySH5BWkliLTNS
PGt2TjBFfElFP2dsKjFyKTBxOXVoblA7LTwyZ0R6WS1xCnpUNCV+OytgK2VnIz9lNXdSQiFWaDB7
X3VOeyQydDw8JTU8SSswNkxJTjwzS3YwRDd8YkwrNChtLWZZMEY7OThOZgp6S0FVO2ZqVnI1ISN+
fHpac0tpemxwPjQ5UWQhUj5NQjBUPXlfbFNxclNfNiN7Tm5afl4jTWV5SFhFTkM+PT1rPCYKeitK
NSVRamJ+WX1BPXlHMypDP2xIbUR4WSF1amtEcm9xMnRIdHZtZXBuVWwwQUU5bztvP3x+QF5yeSFW
RU5VeWpOCno4T0dCZUszRGlzQmxJOFRScyMtPkgxblVOZD5kX2hed3RiN3E2I35aaEJzUTIoUVVz
QXg2QyF5LSlRcnsrbSE8PQp6Uzh7SHFkfmtTVHsmMjtoRXJYTS1DMHBLK2M5RWJvQCF7KFNuK0Fy
YHRMNWE8SD56UTRaUENwTUVBQzg8dSVLek8Kemc7WUBgUWs5Vl91SXJsYj5FMDc5dGtkPGh1d0Yw
Z0BVRXFEZTMhVlE8OHNNcCRHNjR1Jk1BdEpUNGRNaHk4bkMmCnpxVyhoczstLVJIPStvKVAjJmpV
UnZ7Zn5OaGN7YG1Mez8oOUgjVD8/JFJsaCpObWB8YjwkfFQ7bkx7YFMpLT9lawp6Nj5rakRXUFhO
ST12K2tDSHQ1NXVxJX1jTUY/Vm4yblkzdiY7N0wrMylhak9TNj9FYjUrU31RbVUoU2NnU2R1OVkK
elFhMVZoVWlYPiUldG83UEdeZUVybHV1cWAzeStubGAlMkhgXiF8I087bkxUZDJURD9wQVFuPVlW
eXFVRClIcWArCnpkR1ZBRGM0aEdfb1J4dVd3WSF3eiYjJEYreHcxWGBRaEFEWmxITTR8SnQlI3Nj
ayRJY1E+c1l6cW16YHUmOzYtfgp6KVpkOFktNkQmM2RAYGpyWiU5UllWMTB7S0JSZXh+KiRRXmZU
YEtuMztrUDBqdlVxVUtUKHJ1Z3JIVVQ2bz9SX0EKekclOG9xQG0wT0dIaHlpPk5zJj1qXjRLOW9B
JkIzITB9O2dJVnErQSk/PXA9SGZOU0lAI0I7aU4zNm1DdTEyY0ZgCnp6fkVYMzd7VzluM1MmNWpM
b3QqTmFuZCMjO2lHJTVzLTNtYnYraHBUSkZ9ezBOSiVuNkc9eFJ+aUFMYlRZN1dUZwp6MV5qSlBz
ZTluT2FaNXglKj1VVFZHV0JlQGFCeSV9VXpVRWJiKDlIenlNX1pmdzheQkclcD44PFcyZSFiN0Rh
P2UKekFkU2V0O1pYY0UmJWNkY1o8KnBVMVojOTlyaGslQ1VCI1J2cFokbEtoP0FAYW9sdyVCdnF8
QU5EXkslczd7aXM+Cno2Ny04KkcqLUVNYlZINkA0ZG85bWVQZF5NTEI1YCEkU3pyaEZSQTc1SFl2
ZSM9LVReRDV4OEM8ezNPWmJZez9uMgp6eXxFUHFDNlhSVGt5azJjJGR6QjU9UWpOTmx+bEJAKVQ1
UX13bXo/QlhaV1B8WklQYmRxUVpCb1JaWFM4cEBhRlEKej8+UjwzIVU8KTVWLXRZfSQoO05iJWFa
Uz5DK2VRO255d2clM1FJMzxsUT80RVNwLVcoRjRGYCYySFA1QGFYbTJBCnpHQX48ZU1WJHxFNVQo
UjI8Nk5iPHZKPiNUbUBVPDFhbS03alckfkVhWW8lZyF5M1A5eWRCSj04OGglRjQrWnYqNAp6QUs3
K1VnQ3ZhKj47SSMjaGBFYj40Qjw1c3N0S1A2YktZc0NDejlRdjhVb28/JTJNd3liVEFYWEpROGlE
ZGVZUnQKenNNX1dfYVBKcWhtJkIjQmgpU3NSbn0yWkt1c3szNT54alVHe0tAPXRUe0JycG0zfU9p
OEkheW5OOFFqZTA+MTxUCnpFOXpQZGtMd318d35VYTVYTH5gTSleeUc9MDR0OVV7eCtnJTheJjwz
PCVUbFlqbVJpMSktVTh9Z2UlMXEpTD5BIQp6WVJkXj1eY3s1X0I1ckN1PFY/IUFESF9zY0ViK1RB
T35qJHplWEV0SGEwNFcjRSh4YFVPN1lkWTZGQj1yRzl7SyMKejVVbTtgUVZOeUc5fj1fMjxMNXko
aU9XR2A/KF4wfk5oXy1gYV97YzZuT3Fja2s/WDNpKj48WlMldlgzOHtSYVRpCnpxVkItZ192aUhJ
MG8+UU9xMzJWWGZ6S2NOZ0VUQm9yZl9ORmZxQzJEPURTOVVrPzk5QTNWK1NhQDVsRkZQNDUpbAp6
S0JZbm9LbW9GJSNhbVRpYE95b1ByamF2ZnZwdUVPKXx4PEQwZnYzMT1xbjZGaGVHNzlfajIqN2xx
P0E3eC1HSjEKenBRJm87RnleO2lsSGxwYi1fJTF1XmQjamQmeFYqYz94TTBVUCRsOCg2ZD5QUDRw
fGFNVzFvYyo1d3dlJHlBRi0pCnpiR29uaVdpWElYOTBxRSgzTllOQFZQUCUxamNoJXNSK3IkbFB2
fldIUztPYilaSzE2JW1pZldeSiZwTmlRM2F+Qwp6YytMbHlTPj49a1dic3FHcm11fkBldXJ9Xkt8
aE94aGs5TFFwKEVXMnQ2OShoTmpCWSo9ekpAakFOJmFoYXY+SzUKeiliUz9yTWBEOypyQTRZSms1
M29tb3AyIXYpbn5rYEJHMU1xNFZwdzdWTVc2cjI8MHstTmhOaXhefU8rQTRHYjVqCnomJGhWOUFT
QUcrKHIhV0c1ITZpVTRJaXBUaW8xKHFEeH1mfEBmaD9GT3ppfjxBc1FnVEFpS0RtZUMkP1QkR2lw
Ywp6RCN7WU5iSyk9aTNQWXtEKX02QH5aUDVpSFdFcjNeKUI+MEVYWD1hPkNFR0EmbnBAbjRIX1dl
UVBIdHptVldnbFcKendFdnJFV05mJTRkM3M3UlMjc35IanFwfiZeanBkRzRDcHIwWk49bDxGbWVE
Nmo+fT1XdnxsMTZLd3lXOWNafXRfCnpATUJ2U3NvKzFgQDN8N0VyXkxUa1g2cWpeeEtwPFJDWVhS
MXNeOGEmJXA5YlpKd29SKzZkYmNKKSo4WERxUU9qJAp6N0RRSEQ3N0tsSCR7Q0V0YUg8QlBwZFRW
d2NeQzA7TmczYEc8NFJXREx3NWFyQGVIbVJEa2ZBNEpARmdgNmMzbysKek0mX2NqNmlAanp3fFIr
cU9RLT9gWEN3RylwcyhuMiV5TzlicWAtcF9rUlIyd2F3PiEwTHUjZUkqaFFxdWJeT2hCCnptTyRY
O3JgdiRvP3d6emIpUXBtJmdEN196YylWeChnY1hoPEU2cjtPMlNyVUduU0huU0hjKzc3Y00wVVhy
TDI0SQp6LT9XanJUdkdVR2FkVDd5azlIdDh3fiF5eTQoQDt2ODYmYHklQWpXYUw+fT5RKER8T1g5
T2luSEpuP0xzc0o0KDkKenB9PEZBdysjWCg9MVMmJHV1QTRiKWQyM2lEZmM8dl4wcGhlOENsUXQ5
UjhRbDV9bGRQZ1AyZGBHJW1nTTQwe0luCno0K1JOQFQlZiQyQElyTldVbiVmZGohNzZRKm5MfkQ4
K3tPWCkjbXg9I1BefU1sMH5tSCQ+Tk4zLTAmMTxXV3Zgdwp6IXheUkM9JSQpbkplNV9USnQtMEdY
cTVranJ4RSEqYSFJdzRremUwMUhHWUQtbih7MV9KQS1lMG49TFZXQEZqe1kKekZKbU5OSHhKO1lC
MHhEfjN7SVN1NUF0MHlIfl90cUJ5ZntlcVlfUClLfSo3SXBoV2RhRHZSN2s+MFlBTlkqcjI0Cno0
KnRVRm9wQV5lZ2xRJG5uSFR7LShJZiFSdytsNH04RV9welE+OCpsWmohe2heTXwrUVlJUHIwMUlM
Tk5mOTk3Iwp6cEQoWFhEZystVyRYZnNYR345SzA9eGNMMDhta2w1MldEVU08TWM7TmZ+Snw2VCVa
YUQ4aTJUflI+Xm9RODsxZE0KenBmWnFLXzVtNmo7aD45QFgjcnpBUTFCfiZ1YjhzUnY3aEViSFp1
MEJwe1BzcV9mZD9JeyNpTnBDUV9QM0lSZkpWCnp5aGE5eSRCbmxDbSR0bXRtISF7a1g2TEVHbjxz
cGdHeyFfcXVjPGlzU0ZtM2szKSQ2LVZpTmQ3aSl2NFRlNHY1JQp6SXtrakdUKSk8VFFCPFMtUXBH
UkZGWG8xP1lTUDAxeGBVWkEzODglJWhwRkRMZkJvSGw5dXxBJCtLSlBkLT1uVWcKemhKJTs+Nkkq
Rn57PTUqdjZtXld1KSs3SVc4PVU9JmByQGxLQ142bm02K05ZemNIX2RhczRuJXtvJVMwa29WQjJT
CnpBJHJ2ZntjI2Y4eSh1PC02ZU5iRytjdVJ7YjtHY1kwWn1MTEZ7OTQjPkplYXp3Vz9jMnl3KXNW
JHBwe3tpKXNYWQp6TVQybVp2OEJIdGJePnJtWSZlfCZqSzsySEBMPXJ0cGFpNW5tUGNAQjxxQWYx
KWQ7a2EzbXp8bXNBTVJka2AmPSEKek1LTXgqR2Z9PEZOWXM5dktSPTZTJmAxTTg9dzhsM0BEcTVu
Mm5jNl9URTNBJDwpcGJIKml2enArVXpXJDFwYz5pCnpPTDU9JExNMk9DR3hoP0dBZ0lDczBXdyZ1
R3IkeGg0U2JiNGcoI3gjMWZGPj01PChSekJke1JvdGZ5R15CTE58QQp6Qmo2d2dPODFhN2N+VSF5
Zm9WWWBSZnJGOTVTMWc9Xk1POW5EdzkmYE03YSZBZDM5RX5DaT82OzlSXyM9SkRRVnsKekYtQj41
KS0heG0rXmVOQ0A/SE8kR1g8aDJWQDNjMS1ofElEbSpFPSMwZzQwNkcrUzhLUm5tbDJNNlheWHBH
Q1ZtCnpLKVp0PmQrWVZqY0hlSjl6VGFvMGUtSzxsKHB+JDBQSHxKRjQzfmpGa0FkSSkmaXdCNEV2
IUJCX1pYV2hFTXhvJgp6WG5lO2xISlRHRSNWZ2hBYGdpOUhiTFooX2tIOS1LQnJPVjdaeTZpP2NN
M2EjMSFtRm9yLUFnVUtuczdvPHR6fFAKenIwSStVdCFISmQ/QHNBOWsjeExLd3FiYmRIIX0yNG5x
a3VoZjkqRDM2S1lBNyFIPTV+X084XnNMWUxzakB7JD8zCnozfGhWe19mb2tqdVFPMTFvYVJ0cnM8
X0h7QVp4QEUzSFkme248PjdkSXpqLWBIXjZfJmMmc3g3ZCM0fk1gX1YzPgp6XyZoTGd2bDV4WF5i
OzwjUWArISl0V1E/ZyFXd0UjKiVoPDtCV0xeS0U8SX5eLXFeZX5Vfmd1e3drcVB4cyNEOSMKejBz
eWNlMipQRFh6RGpsQXAqKUIrTFFUYTh6OzZVdVVoSzNXQSlRKEgra2BuUSYwOGhzViZPITJsYmNI
WVFoT0hKCnooJklrd3sqIyl8U21wfmdtVj5mUkxze3ZsSWdTa1RCLUc/Skc/RGt4b0p6bVR5Yjl9
ZUpTJXNTdkReck5hfWVXdQp6ZHtaO3tFdGdEb3lEMjJ6R1hLN2J1fjByQ3JHYiVCRXYtfD9CNFh8
SkpqJGx1Zj5ZUEYtdGdEa1peOyF1OSFVJTkKemtxb3p7MW9LSVQ+cDtWcGZefEAhPyVFbFdXKGRo
cj01TD5uJCpaWjw9Qk07ejhQbXZ1S1VadT4md2NnaVErbFVCCno5cD9DP0AqazRecFBKLW10aiVu
byZQSmRQOEVkYFBXT0p7e2ByZlkxJDNYcTxDWXs1NS1QTXF5bEJ4VlBnfmBuKwp6ZXRyaE85KllM
Tm5HZWt9TWNDcDhGcVJxSHMpdmpmTVElaWQ3PWxpN1V+WCRIXlBSLWlALV4lWXQyNCYoX2MoY3QK
ejQycTN+SCY3I0psQVp6ITN5eHVVU2Zsb2JQMz9hYWg2Y04qJjtSUVBvQThMbXc3fUhVIzdLQiMz
Sz5WMmI7a05YCnpjPSVMdVEkaXk2T3lSbnMzQEk/aFMrYStxNyRLeGNBd1p4O083dSZ1RFMjdnco
cSRGRSVWO3tReHs+MX1nNno/Mwp6NDRsR1FNdSNFPEM4NGJIOCFheDtFVXB2JnMxVzEtPXxXMEBD
ezNTfnE3JnVsI0tTQWJZOXw9eExrdG5NaWgtMyQKejJ4UGlRc3N7fCtsUV4jO28lV35ZZE17aWFL
ZEo2VzVXcWArVVpLTkoxdnNmWk5xVVg8T2BzeGlNayRsWlgkXzNBCnpMWURFNE0lXzBld30lM0wk
JTtOWm96aTAhbD8pO255dSR2XjMqKHgpSER1Q0RkXjJZUXV1PnsxIVpLM0YoI0NTNAp6bGRwaS11
IXpGaVhXMW9RT290fSghVSojaTEtPERoSE18anwkcGhONloqe2s9WGk+KHhNYWNTNytzWjRJcUEr
fFIKenVYa1k+aXQpMXh5YSpmKEJ1SE9pbDt8K3tRQVdKQmpMZTBfVn02bi1Xc2hILSE1QCghM1ly
NGZpaFR2S1dNJSNACnpCKGBLaDYyO05Hd3t5V19kdGUwMTZBP219OT1+eyRrWWRzPEZMRzVjZ2h9
OTZWMSVkYEAjWSg7cDI5LTZFJWc+RQp6TCpeSXhETW9eNk1VVlFYTUFgYEFDMXVKVztmLWN6JWVw
ZWw8RENKUyopdzElKE1wMEVqV3BDfCNHe2dOeVkwVl8KemdmS2BIPTdLWDtqWTQxeiFNdSlNPHhQ
QGhhbjZgJVlsejdRKzs3NC15WVRlYk49V3w2bU9OR0opbnEtViQqUXY1CnpBYV5KP3pmTU8lalV9
UFFGKkx3eDtOKUJnPiR5cVIhfVI9WHlLa2ZkdDZ8WmB1bmkyeU11dEYhcilHNkh6TTF+bgp6JT40
Y0Y+U3RydDZkI3VWSFNSPE1MQlFLY3o/KChIcWB2IS1xcHFmbWspUkJ+M0VPLXNGRFgjTkQ0aERB
N1VuOHMKek5LIyEhWXJlQz1fMUsmQihgKXNVa3RAa1RoWG51cVowNUJub3BKNnpiZjZCTSM5bzZv
JjVhTz0hPn5tVmFASiZRCnpvPGAoN0t5d2E8ejwpPERjQWBATEl8U2RHKCVEZTRVWWxaTF9VYmZF
LVJ+cDQpRyFpN1Z0TFdFNHN0OSU9eStaJgp6MV8hWWdYQDZFd2hAY3dPVGBXaCk2KDtwV1U8QH5E
OHpQTHtjS00mWkt0Jnx+PDhEXk5IcE5wTUw0NkE9MDA4Z0AKekYxX3FGTn5yU0ZZYSpfbnI5RTRv
dk5PRzsjK2p3SnwzZFlEbkxsSW9Hd0hEcXgxIzFhUXpmVTBrTH48eEN6WjlQCnpnMWR+PUdOeEVu
R1FkZkk1ZDtIRjNGQ19iXmpISEZ3VlZXMD0lNlRpNTBWYVVHNnREc0shPldMeSYwVGpkUV9VUwp6
T2R2NnVqRVU4UUI+bE83K0lZZzAzejMtVEtqPFVvX2dPdj9YMjRAeyszeD9ET1I3KUdwJnhtdlBE
KjgxP3tsKEIKeiFkY087S005b0c5e29nek42OX5FM1JqamUtdFNmeHNZMXhhdjd7c3pPJXlpJWFX
c3pkZCt7ZkZwVlYtTWV5IXFxCnpGaGxKUmlJRUdPM3MhO0QzdVBybFAzcDluNkJTQHI2X3xBQCUk
MkV5O0lESHhCbDBTdSpyJX1DV2s2aF94PXNeVAp6UG0zZyZMPGh3JjQ5bnYzMVhZVj4oZVEmXmFS
MDZAOWxQP1dFdzIjRV5DR2I1ZnkoTzFGMWA1fntUb1QkOHR9eGoKejZqM1NtTTl4VUs3cFRgeEwh
aG9gPW4pSyE5KElvdERqbURLRCpiJDVrQ249ZG1GN3c2VUJ2YjdOcys3VD8pRnokCnojaipVbXhy
aClaVTM3JG0xa3JnWUFzUkFNTzU+QUNsdTBha04ySnpCbHJreW9PYntLeDNiZWdQWlUrZypFeT5i
PQp6SlNzKj88SGlAekN2UFJIcXxkYlVIOTU8Z2NVV2pvaUEwI0dJc2NFSVZqdnIrP0omJWJDUnZe
K2ZGY2Q2azxVPGAKekklIVM5REImYGNpeDg0cTcjSkE/cSo5fXl0ZGFtWXRQM045b2NxaSk9aFRZ
KkNlbkZ7RiZXRHRrNktyZmpQZXhoCnoyRkwpNkgzRW98M0ohTj5pQmtObVF0SHoyenU9TV5II3I2
fDlRRmkzeW1aP1RoVGhofGpUaGheUUc0JH1pNHFlMAp6ITx6bCkmMVpwcCNAX31PWnlMOy1wN3sq
NEo7SXAhciUlM3cjM0QwWGskUElmZEpNSVlMKzw9M3tYbGcrV35+c20Kendid01VMzBReEZhOHJv
bEtiUys+em13aTspfHNTTjdOc3wren1gQSNwOFp2OFR9eXw4T31hJT1OQ0kld0Zid0QwCnptZS09
fW8qbWlGOUA+N353U0ZiREB8PWA9QyZjRXZgdXxhTXJVNk4yWnlTSCRWTWkxSjY+dGV+M0Q+fGFH
Y0NYawp6KktsOWIhbkwjdyZCflQoKnhiITwmQ0NqeU5eS0YjJUV9czBRITZWcFlwa3E2K3BLOUNU
Z1Q/Iyg5OFNyYEZ4JnAKenBaaT8qYl5RKkNHMmA/O204Y2tgQFdyMyVnRlpMV0NNeklAIV91cWp6
OXNHMW5+M3xDbn0yNl9eMTgrWWNBZyF5CnopPFBEb2hNclAxUFk0PHQjbypXYTtNfkM4di1gckcj
ekFUWEtxN1kmXyEyezVHOTc/OGxETVdRWTtYfFF2PnhLeQp6QTVMMG1Bd0BfP2NIZ0tmOE1QMU0k
U2xhLXUreD9Fc2RNYCFYVHthN0NDUlN1eXxWbFFIbENLYSRwZG5hPz55ejgKekltWnQkM2swWm5Z
V3NuTSlIbmB2eTh5T1h0I3tmaWNLc1AocnhuWU0jK0Z7PypoTkloVmVOa2Zqc0JmOFNXc0hFCnop
NVc4QVpqTGNPJGBIcXdFVH16Q2F1YGBEUzJwcEFuMWlwYkFLTSVFPWw7VUs5ZXRtLTkxeG98ZDJ+
TGpsNj9WSQp6RXxKbT1AZXVvNkh8fHVLKkx6VW9HfW01Izx7cXNHQz1OPlUzLUkjIUBoezB8PXMw
R2phPENAS1hOMV5TZD9kaE0KenVATC14QHhVb3JhT019fT1TO3NXcEZNWW4lN3l8Oys2T3xuOXRx
bDE3PCRkOz93ejhsQk8tTD03ZWkoNkpFTVc2CnphXk19QikjRC1ge0QwTl5iPll1ZDxDOSteP3N5
YClKNkNFJlF6OEdZUkNUfmxDWUZUX1E0ZE18MVRyVlNqSi1MQwp6e1JLQjI1Vzd8fDxYM290VTN8
fHtyM2JDfDlTbkxfdkFDSUl5MDZsN3BWK2tYPG0jQCFIbEtsNyYkT0o0YVF6MlcKek4lV0s7d0hw
NV8ydkVySlRiUm11b2tafmdSfkdHSWNrUjlyRloxaHt7KTwyVj9xOFliezh1Klh5eHI7IypALSpm
Cno5YH04RitWfFpse2ZgISZ0TjdBSUNnPlpkaFczU0BCU1l8az5SQGEyPF9QdTRMPllEYitjfjVF
SXBNaX57Un4qegp6QTxrRUVGayUyNWchKkR+YER9MlI9MGB6SyMlSGZoZ0cqZ19nLWJScT9AYG1I
I0kjUUZwM0A4bWZIIUk8UDF+e0UKenlLPFolYHQxSFc8WUU5MSgrNkJYeFQmK0QyWnhVfkF1WSFO
dSt7KU0jPkB9YWcqYSZBeSs+NERTWHxOUW1aYDFrCnpFcjg+JDZ9fFQ/bT9faHJPQnZmUmIqdlhs
aURANHdgcztQNT9QcjMrVlY2MW12O1JlWklPZGFvfDUqOXlOM2x6Tgp6aXglYnsreG43bnVlT0ZZ
RnBCP2lUUV5ub19UKSVGVm14ellRUjBnJiZ6Iyg+ZU5WZz83O0xZSU4qKGFCQEQ7RT0Kei0lcCNf
XzJLbzYwMUxPWT1Ze1hTejU5Q1BVZk9fSyhyV0l5PWYySXs/KClDQ1otM3dPKGY/Tll2K3VVQWF0
QEk1Cnp3aGd5OSM9ZnA8JUlJdilJe2F6NFQ7Ymo9LUBIaWMyKDU4QTlrVmliYStxSGUofiZqMG01
fitaI1NVKGNJR2huIQp6PHsxLXVhJUwrcHUmVkR4fE1JPz9RXjY0QS1qN1k4K1k9KDZJNSV7fWwm
NCYqaCYkcmxIR01kRmA+bl8kOS1FJDIKemJycUNiKkUyaDZ6cGhFUikxYzJ2ZyRVRj9wO21ZPEc7
SVo1NE95VDYkXyFZYT97TDcyKj0yOHlHKyQ3SWJVN19VCnoyRyUrYjBnTiZxJlZmQWJsfFVLQmJB
Y204ZC02fHxxWn00UCVxP2h8aiNCNTsjVHE7eHIzdTlJNjZRNVRwNDg9fgp6QXxnKTwza3hEaDNR
VXZDYXw3I3dJJDwzJm8zeEZaVmlKb1lIQEZAclYwQXB8P3lSfkgmdUY9K3Q1K3pEQ2BFbVEKejVp
S2B3bHdoMjlzdzVTfjxnMnE3WUhEWnRTTzY9em89RCMtNHkzI0ZzfkJ4PVQyNEZHKnsoVW5DaEVr
JGVhPF5NCnpiN2dTe0k/bGdvYT9mREFGbWZOUmQ1XyV3JkpeaWRzSEwxciRpSUNoelU5UUYhM0xM
OzxMO0dSMSltNmE5JVZISQp6SjxAbHBxLXxiX0RmdVY3Jko7UGxSbSN4TWRFYV89NFY/SU0/Y1FQ
USNNRTI9KjFTS3FkLTlvRWNsUFAlOUpBTzYKek83O1AtYWY1ajQqdks1aj9lMCF1bHNqfm9nNV4o
fW54eUY1YDd3MzVmJTVQZEYxTy1IZjd5SW42TH5xRWVgTl51CnpxQik2JlZveDk1SV9GcmlMUlIq
PSVDLSVZK2Vve0lIbzJgRCNUb2x7aj9+K0NEMG9KezFrSWk7YjhIa2FGdCZjSQp6Y0IqbU4qamJj
KTYpVTZNS0lUanRDYzVLJDQrcDV9Zl5SeF5XdTFWN3hOTkw0Jm9ZKVRrUD9zZVVNNkhzY0IjZTIK
ent2PkRfRGsxcz5LKHJ0UyNLcmpOSUd9TT5KPFdgNXReLTB5QDxMNj9sMnxkVW1pTGE3MT9SZCk+
KEFydSp9RyV2CnpCMXNaTFc1bFduU21QUzFCIzV7YSReOFFOd19LS21fcGwhdyMpbyo5K25lNzko
ZWZHPnRZWnY1ZilTZCYjYDRVPAp6Z09iJS1gc1hsd25gaEN7NXJ8cncrNXBDRVRkN1VvXno3b1Fp
R0haU0dPcVROP2RodShje1lPT2JJaXdpYkd6KjsKejt+ITdZI1VCfnorVGglS2xBN1I+XjUzWilp
Uis+KGU4KWMtVW0hY1h5Zz1QS1RrdyRjXko2I2xLQ2cwM1ZHUT9aCnpNPn5QbzU1VG5vVm5PKkc+
bGZ9LUQ8XnhjM0Qwaio/KHMqUTZGeSM4LVpeVE5PJE49fDFhZ3hpQSNfQ3gya0EzNAp6V1J0VEFs
QXtZVFloeDkmPDZmWjBiRTYxViFZVThhRUlMKittPlpee0tKYDM+JUdQJVY9ZXMkYG47SGdqKXw+
OSMKenllJUBDRTszcXZsTm01cDtiRnkmJVMwM0ZENjYjcWZLPUwyZilxVGB1JWcpTSVwNXRCSVlo
bSFFcn1uSGw1USRXCnpvdiVKUFRFfW12LWQhbTVPc0p7WVYzKVpHIUJHN0U/YEpRLWlfYjs7ZHRY
TC1Tck99I2k4Q3VHVWdATndVKWRyQwp6UDVDenxwSSVHQUdFRzdrejZKRXUtYSNuX01hd0AwcUc8
Rm8lTlpyeWs7N0g2QiZXdkhkRkk5OVZGcldVITRhUl4KejYoQHheI3dAPVlBIyZzfDdpbytKPCFG
d09WSmhSLUhFKkAzVCpHWGBtI0phUj1GemY7KiRoSX1pI2p1TkxafC1+Cno5YiUqfj9wME52KUth
VE1fPShuO2JnRHBDS3t3b1dUMzs4S05pJThTMlFme2ohdSUjakMhKzN4OVU8SU56aG00SQp6KkU0
ejhFQnp0PGAkZk0yRzR7KVRlMTUzY19NWG40aUlhQERLVF8jNFBRIXcrdUJMKEVZczhGZFFKayQr
MnlRZzAKelhzKnRTcWxRP0poZ05xKGo1bH0mYTZWbT9HdjgmRz9BLSN2Z2N6PUJQQW16V3NSck9J
MEpnYikkbWFQMTdeR0A3CnpzXkJFey0pS1BEXm1BWk9MPypmfnowXn4wR3MoaiZfKj1WS3dEQkR0
QHFAYjhnX01BP0VWQTljXis3TWdZNnkzXgp6b1RvbWlFeSkwOHozKk8kPzU8X0MlKyl7MnpVKmpf
dXM5d19HR1A1cDgwXj1yRzBpRT1HZ0g5c3ZueEpVV0RlViEKem9uK3AoNENJITJwR2h9NUJwVElV
NTFZN2s8X2U9TyV8cjFSKV5WfD9KY2Y3Qz1jWVg3M0w+U3k5a2dzZGZ7LXRTCnpGRXs5NlJ4fVFZ
bVcjTyUlbntNc2hSNjtBJCorWU9ARnQmfTdwWnV1TzxAO31gPih1fm1YNnxPTnMma1FvQHoxdwp6
aEBTSEkrNDFkK2dxRiZabWFXPX4tYEdyVz08N3E5Mz1OdCNpUjJFZWRZS05+TEVeRF8oLVhgU2V3
SX4kRzcrX3IKemxnT0dpOHhTTUNJR3d5TmZ5SGlGNzAxVn5AJEM4cC1OelNSdTF0UEJSdlVDOHkz
ak07ajl0Rk9RbCpTSkdNNDlqCnpFdiluPmdJdHxie0RTaGYyJDM+OEZqWXRuUHN3UC1fJGNoVDJJ
SmokXz84aW09R20lYXNiNDl4OC1yVkgkQjFkIwp6Nip6cFNjJiVPIWZkfH4tQVZMKH1PQWN5P2lP
VXZyRyt0Xl9QRHtMRUwoaHc8bGkqaGctZEBGfEtXSClNbmZpMXsKekVjZDhPY3Y+fkEqM2ByVi0l
RlpnTntKQzMjZT9TcWpBQzJuaDtsYEBWfFJxdEQwNlB1K3hkWEkzJTQocCQrTUtFCnpUZTMrPUAy
UkZpZ2RZaXBDVWJEM29sLUspdkJZfmkpOWg/dnV3TnIqakQzY1NkZ0k3NXw2PjA7YkVEZDVsKmE0
eQp6UzN5aWZMTnc4YmFVPTkyPTFsPV4oQCQ+alFzZjcoXllQMCFqVjxoUVQkNWJ4clBQP2NNZzB3
UF8+MFp9RyZubH4KeiZ1b04pUk1eU045TlltdzVMV2A5TEgqe2g2Z0JhKjA1e01yKHJXQUxGVmEy
fk44eDUoRURVcnd1Yj11SDtXPkNACno9ajFrMmdqITFhO2Rab35gTFNYMUtWQHNhWXo7ZllBRXFO
KD9lPS1VIzVCKEZFRjMwMjVkYWNsUzwmLTVecEcrPgp6M2pMUXFTQFk1NiRwRjlRPTxaM01sM2go
VHlxdVJvUnklaSZ1Jlh+QjxyWiFEK2l+Qj50flJVUjR6K2xtX15QX0sKekVHSDxnb2V8JX5LaWxv
MFd4dlVwY30zQ2Jabj9RSHRNKSZiWSFRd3ReX1hqVTw1eXxaYkBHb045eT0kRChtWCt7CnpKcVY5
Q0tZdnRsVnMrNE02RERSSSUzfTZMSSVlX1QyK0Z3akxUSnlFPVRgcShtTnRzeVltTihfSHwqNChk
YHJGOQp6YGMqViMpaHpheT91RF5RdiQpWWtAITh8RmwwblNVaW5yU2FiRUcqfCpAeDIyP21rWjMp
KUF8PiVDX0w1d2tjKCQKendLUmpvVHgjdXA1QkUrPGlzNzBpYUJYNXsmOGk/WiEkVHd8RiVaRn1J
SCpDcHpuLW4qUXJwQkU8VU9teCh1M3dYCnpxP2xQbkhKdVY7WHpMKn1oQXpCWXYtLSEyUDNIMUNn
IzdDNSpKa2MtPittMUE+c257dXl9Rzg8eT9ocjUtNGx3Ngp6WHtGOV5zNyg/UXBHJDQjUXIqKGMr
fntVQUxaZyNuKCF2TnRQZTBDcjVWaXtHTnk1ViE9VihuWWlTbXZwKUAqXnUKeiV+YlcwKmxrQT9s
b3E8RG8xKGIqaWVZJHxhXjdZc288S2h1YW1MaEpWaigoM0pKJlZyOXVpN0Q1ekAoTmdQeT5xCnom
fG98PDkwKz9hJm9YWTFCVD1uTFFVLVE/NzNTWThgbXJ+TkIpdCt8dClRJmFrZlBFX1BJTUFhTCpT
KWZUY2BRTQp6YTgyUGFrYTh2e098ejcrU15IeXZMdWJUXkJxeGheYmM8dExpJGQ7YWIhJkleMVVh
UFZRYEpZZVo8e1Q0YXhIZGgKekk/dl9aVXZSTjFuZlNXeTs2MyNqaWpScF42PXVBUmVnRHxVdU8k
OyFKR2ZSbUhBWU0hNm18RVhmaVQ/cjZQUSYyCnp7I2woWDZ6JEkmNWtET2NwejNMcFhZU2BWPWIq
bX57cmtHLWYjQj5wKGIkPU8rc08pIVN6SWVocC13K0hQZD0leAp6UkglUD9iSWdYLW00MnxGZXk0
cV4jTmAjNExUfGsxWkpfbyE/WG9ffnRoJnx1Z1AyczZadVVXR0cpJHxoNVExNUQKeiY8YyhYS09G
KjlsWVg+NTYhNlNBUEx2M1NvJklWN3NoZXZ2QEIoI2spQCU8SlJ4fDU2dUVoTmF1JkFYd0hfJnlw
Cno2NmM/aFJ9cHJ6PHt3Q1hjUExne2Fsc0psRUc1KVE+a3k8TU1HVF80YiUzVzVRX3V3a0lHfEdl
XmZyeXNwO0BKdQp6NURUO0wpI1klNWctJX4tU1JETUltZWBTTitXbj9MbWA7My00dld9T0lEX0Jl
YzhaVGBISTVYVSh6IT4rOVYxWl4Keig8aXkrY25RMDsheExNQnxJentYZTErTW0jUCtMMFZ3QUFx
eDM0ZzxxMGtEI0Q7NHRKTyRoSmtIOVBHSHUtNSMlCnpVVFIpQ1hge3JQJDJIJkJZTSFVTGNmT1g9
I057K2BFamxsbEl8UCFsPUlyTS1VPG42TGtlNjlwQH1QYms/fHhNRwp6V2pmO1hBZVZCfEx2Snoz
d3kzP2A+MSQkanRtYnBoSGdmQW50TitFNFBzTGdrYTk0bGJQUUhLUCtXLUthPyMxZjQKem1gZWF8
PUViQFdUMW0hNnFkZ319e0ZIfSQxTDtvKjRfa1ZgVitSQXw7IT9xdTJkZChMZDhlTVJkaDNZdjRI
WWBHCnp1dlQ9MytCMmZ2czZ5ajJ0aDNMWG9JYkJxMnRWTz9iR1ZyRjQ7QEBIelR7SFRwTjYkMTJU
SDd+eGtqdG5TR2QjQQp6KXBSdDIxR04pXi1aWnF8b3c5cDY5QTgzRnlBSVNsbXJRWEtqbXB7JSZn
MGtIKTwwMmB7QipGX0JMUld+O0ZPcUIKeldsJF90JmV0OTRgYUU8I2opPFBxbzM5ZUx2fWcjQWxt
c2A4JkM2R1FWWTVhZnk1K2FVIy0zX2FnZEhaWGdJdU9wCnpMaEV5Jk1xKiU/WDRjS1khZVplU1o8
fHRkdGtSYmVTKlAjXzdycyQ/dihFLTFvKlJCPEk3fSZqVzFoYTxwPSF7QAp6PCF+VkpDQGNNfkA2
dWZ2PjR4a3g1enxJNlhecXx9TH1YbG1rOUVPcWc0elVYTTRTI21EfTlkfFUrZWZEOyQ0SDsKenRa
VkIzaXI3ciE5aDBvc0M5JVNNcTVLXzcoUVBOPyhXeislZVM+QkAzTVVyMiYpQkA5QmxvaygraF9m
Kj1pZTdECnpgYGxTV2I+P0RrYUxpIXwhZCk4a29lLTxrZ0kzd3gpeWRuKW80RHElRlJOUTgoem5x
cXckNCZBNH1LMllpNngxbAp6REEmY0FPeCU9bWFpQygrQXIzUUgyYCVRSmAzQ350PClPMkhRYV5G
JnN4ND55WGNQNnEyfGV1ODhESGZZbEo0YVgKejRkdldQKCNGJkZVNlF9NkM2NGkyWUE1JFlidF5O
eG1BclY0OUgrcm1yI0MpUHNebGtlLVB+fTBKRSo0KTd+MlVwCnpiMyEpTjhoNmhjJjhXJWU1PFlh
YUV7JiZ+SnFKOHJMTVhtc1U+dlg+NW5ATVoqb3EkTnheJUA4LTNGZURsOz47fgp6MUwwTS11SXg5
bG97PW82cj15USp7PWtAUkdCKU44eTkpdmkzNnxKeGFUdU87WChlYk94SGpRPlp3fX1VcHlWN30K
emc9RkFVMSZSbHlsISpgTmdGJUs2SndwVFZPT0lFZWx9Pyl2VXpNOTs3XlhKY2BKUWlAYEFFfH1R
UT5fWnJjWVFxCno+Z2AmQmJ1Y3hJQENtPU9DRCt0JS0xTHpzTkAtX2BYWWR6N15+YkxRMCZAbXxJ
WktieGcrUk5UcjFISTJjNDU9Ugp6UF5GTiNmJThmXyt8KUArVSY9TWxmez0yITx8MXo5Ji1XYGQ4
Z25QRWBEVShneHdwbEYqWiVXaiojIVZBWUYpb3cKej9QdllYQDdsLWlvZj9YUnh6KVJpVSN8aiZr
VWRGNnctQlhVNmhMSXpiUjNtVD5RYGUyWHI7KEZeR2dwVGBDSlJECnpyZ2ZKK0I+OGxTQnt9UTlo
ZWRTfW1MUnNpdFh0Qj8hM3ItZThaTC1gby1uI1ohJkd5Ni1jPChwM0o+aVorcHZAYQp6Sz8jQVZi
NUorczRKVzBjPSl7Yyo4OGJ0TXBQVWU9QXRtSkVyWHctcjw9OSNeVEc8KT9qRH03SChXYCpveGIh
RGsKemhuYHJTJDliIUxNcyFCIWg0NSMzVEV3bXd7T18kKUtgWiY/SXIwWSU2XmkjOVV4dXlfOH1x
clNyanIzJDJ4VGY5CnpfZGBNdiUhVEcrNn5fdzk7P2Y7WXJ7aEBkSGd7YnlaZF4oPzJOTUBfYnpw
P2pBN2ZFM3ExKyhvZkdDfGA9JlhYaQp6VkA+KCM7OTBgcEVRK0s5ZilEdFZhWm4+bHZjcTM3bUZr
MkoyeGZCJHMkZTZlayFFSkQxWXdeSW4rfnElZl5wUXgKej94OVR3QGQrME4oTTRpKypTY1g2Qihj
PmxvRnpmTiN1Sj8wP2AwZTl2XnohZnE/O0dibnQoT0tnIUVybSU7TFhmCno4NH4hZz9qNWtrSDs5
cl5fKG1uYXFSVjMmQyR5cGl6ZWZ6JFU7WVBII0lGY2xHaz8rQ0FjVzcpVEhNbz1HPn1QSQp6YmRy
OFJOWjhDWl9lKEU3PFlWRUtqI2NUPD1hcFVsaXpGVWQ0JlRXKytIY2pLUGFiTmB4fFdhS3RWVStk
VElgYCkKej59aj5BRlM3OEpBUlZ+bnpvPzsxME8+VUF4Qk85PWJ4fiUxNXB0Jio+JSU0MyhUUDVx
UDZAUiRBbD4mT3J2aU98CnpjbTNWRV9kfTxoPzA2U0JtPCVQRCNYK0MqIUh1ZzRGNnBFYzImSXw2
RCYzQE9rbGB9ZG1XbGAyZ2R2LWs2N348cwp6bEA4dEpyLXJRKkspUj0tdlFDcm97KVk/R2tZOCle
UEYkaV5hQkdVM0gmd1Jjc3dMSnRVJTA9dF59V1lZJFQlbnwKejRJRWFKUHRzNyR4fVNjLXhPcHwk
KHZFNWJ0VUVMcTJMTHpNVEprQXhpZjxUajJWamxgPm8+SH44b0VZKWpIcjJrCnorRU9yeW07el50
cz9QY0klRU5hWWlldHYkS1A/TXlqbnBINHhMQlZmJmFgND9aVS1FYnA+RUlUSGw3M25kb2UhQgp6
KiEzQGdZTUwySjJaS0Y7eUtoKmx2NGYlN0BWcDM8aXlpN0gxRVdEU3s3NzVxP05SOUMhUVpTbCo2
aVhGPXRhVSkKemAraERFRiVvdzlqJGhDY1dRIVQwSyk5eGxCa29iQV5lRXsoOG9hdCh7Ql9yXyRh
SExvN34ta0c8Y0paWiZ4alokCnp5bzYxPDBtJCNxVEo3Z2J4UH1vQS1DfUA3JGVKfiRDUF5zJDVA
IWZqckErcnRMVVFfVGduJkdNbVNqY2QtdFJScAp6JmA4XihJVHZaajh+PDd1MHU9a3hPS2NPJmdF
QHJUUG1xQ25fMVNFPykjbUJEVzxIVyVzYVBmcihocmNfPkJOZlcKenNuKnlgX3pATlNLdD1lKD5V
VkRJdTFET1JwT2NNYnlYUVVZM3FBN2E8X1R0RG4qOC0jLXdPI1RzK0Z7XndMZDtSCnpHK3NrKW5J
Yjw/X0k+fiZvKGhHbDB1PCtrTWxyPTF3TDw3Xm93MVNsTnpgfDVMYG5EJlQxQm5Tc0phekJfelEr
cgp6Pip2an1gYENsI3cxSDQxPTcpdzxKRjdAeStJK2ZuRW4zPXRXb1RzLSEhYlY0cmlzNGwtM01R
cy1aeER7M1k7YTcKejlhcFVeY1JzJG0qfXVIckFte1l3TVphanA/bGFGeV8/e2FHdylne0MtS3tH
ZlFnYzdKWm1Wc0R6VFpSOzI9UG84CnpJOE8pUj1uejZBazw1Szl7RUJ6Vi0+ejVNejFleSh0V1cr
JW0+IUt2QU1fKTd0YCkqPTxCenU3TzdlRnhIUm1SdQp6c0BgaW1pP18+ejtxd3ZlajBwOFZGalZF
T3l8Zm5KSSVLelRedk09VHAmSFd4QWp4ZmUrJl98eihNZFp3Nlp6QHAKel5eNGY2OUlSOFRgQSpe
ODF8UGBePyE+UllCb3psZU0oYl88X3VpaXhzey1OdXUwM1N8NURUOEIjTExAYXFzRHhHCnpoZWUr
bnYwd00kN2xfNGVVJiMmI1gpfFlHZzlhSm5qaiZzQ2lWSERNe1oqM2JXNj5gSkBNQCZyRVljNVJ7
JCk+agp6PXBXY1o7YShSRyM3WEJXdmleTzhIRzItPylWVGlwR3BfWUpzYXduWGU7O2JUTHRaUWMw
PjB4dylgd1BWUDkkbmYKelhDXm9CQldQWj05NmkpMjF9WDsoQTgyPS1RNVlTUkRwNjVhUnkxaUNU
a2lWRWI7Y1Z6SHBpYyYwQDRWQVZkZn16Cnp7NHxvSmFFej50MiVWSDRaZjFuYUp6WmpPKjdma1VB
SXZyZGJWblpjZWpqKm9NZWZQKkNZU2k/biViRGBpaDc1agp6eWdqVXA7M3VgcjRjJXVgJXdrXkVK
NFYrUUZ7S35rJnUzazFedi1TYGtBSUxkKV9rP1Y+fSRQcVBXJEFVRjhSRigKenEpQnc2MyE1Pl9a
XiNOUitlfkF+bGZBT2kzfjc4LXgpajI9PX5LQSlDS1BWUmxiYEZ+SU5PR0YyeHd5MkpJVVY/CnpY
RWg0PGh1WGVlXlJ9USRQdUpVaEREd15mWnYkPUhKVHpRUnY4U08yPDJ0cGNnMzckTlJHZV4zVV9A
VHFlWipsdgp6VXNoUlo/YT89X08mQHxFdktiSFA9VEZFfmcqO2hEZk9IQlJNcD8kaWM+SkFpT0V+
MSptTTN7NEljOyg3JU4yKioKem4hKGBURXRafTQlT0FBPVF9M0Y1cDY4ZmZkeUAjdyRjSGUkey1f
MXJVVypJRGUhViZ0NlloRnRVSy05XmQ8OUxICnpVKXxVe0xfZmJNI2c7Nz0kSzB7PTVmJDhWQG9O
JWw7T0JMPDBTXjZZPV5kOXBISntxZChFPiQpb3RIfk5uTyRpUwp6bCtOXmMma3dSc056I2NhS2x8
JlY+T1R5JE0+UnlSTCUmKVh5WStqTkA4MjZrdnp4dlJjO3A7aktsc18kfEN7PGsKeiZmIWcwR3c9
SVArMDZ6THZkSjx6RiY0RUxOU0lSNGhsJU4pclU9Mz1KVGRUU2w7Xn1TWCktVzlueWttZV5OfihH
CnpxYld0ZWJfYjF8N34jcHliK3EoK3J3Rj4pI0M4aFlrck19bCNTZ3pJRl52aE4teX1jbXRpTVVO
SnhpfSR2JFVyNgp6d3F3X2lGU25nMCN+K2tYK3hqeWJPfSlfM0B9UzZsRCVpQGElIVZxckN+bEJo
IW41Rzd4OHItfUdqM0RZd19YQFkKemlWc1g1aj5AY3h0fTxQMil+YSF5X3NLKmNtdSVFWSh0Xz01
aHU3RDF2ZFU9QWEkeHxQS0VxMU5ST1FhMD4zJnYmCnpBaVhLSWFWYEMqI0RUaTt1JWVgI0NTej5+
emBCbk0ya0JCZl9jN1hHNz9me1lIVEAwRUlNfFREWE5YWjVkXj5yUQp6YTFpQ3cjMG5AI29ZRD5B
P3ArYkU9fjUlX15FQnp5IVdTSW9zcm8yM0BDNkkxLUBhVTQ1SnBgdzx7dGpvXlc7UmEKemRHN3Bx
KEJnO1d7RjBeRGJXNT84ekQhZGthZzdpSEdHRzZJZl5OVHdyQzg+Jk0rX3xVaWt5Sj9fNUF6TV80
MnJSCnpiPGlHWiZ4UnRgVEQ5bTg3ZipwbWdIbGZPQU99PW0xfWs7VFpsNGJUJj5naCFXeHRKMlJ7
bTE1b2VQMVojJVh1Iwp6Km1tTlApbzwxOVFIU0VYR3VNMnxhX0FYMmR+MHY9ek5YUkE8YjRlWkRX
VWV3RFNMQTd2LWhtYkZhME9WQ0czVzAKekdLbXlTaiVCc3B3JStaMlRTMT1tXkNZIUxsRDN4eTk1
QSo9Y3YrJXVjUEBvVk5SOGNwa2ppd08/a0VXelhVWXJDCnowPnM5e3AhS3xCZ3FASVlebE14SV8y
SVA4dEdjRXRaZ147RWtLUU1ebW1pSVo4RUQxYkRocl91KD1mWVJnMyFTbQp6NUIrenE3R0NIUXdE
eSo4Qjw3TnJTPzIoaFYjcnJKSG9JNE5IOT1oN3o1e1QtWEUhb1FuUF5lSTZkNTtibHZveW8KekF+
Y0IrNHIpbl4pJEZuc2VBUj42ME8lWTFOVj0/U0puSz1DWXxURVlNVldTWmxxVTtgOVEoTGo5dlg+
RkYrXmB+CnoxYH5APnV2fjkkR3NoMT5sdDtpRzhmblY7U3xIbSlFV3p5KmZeSVczd3V5K0Zmd0Qj
TUlCbVdVQStPQW1iV3FETAp6JTlWOHljZ0BzOEtGaWM8cURtM3lWMyZffE9HLXk8ZEozVTB6OT4m
RTt0e1MtISsmKlgxKzloTFpPTGpXLTB0SUwKeipuaU5+Ql82NDZvTWBPR0U5dXNmT25vWno+V2t2
ITl+c1JMQjJ1M1RZMnt4I1hhPFROKkl1TCV1bHE3cj09QmNICnpFYkR7QT9VYXppRUs0YHpTeXx7
OTR+eD5LcCZaIWRyZ2xvflYwZyVpYX47KE1vaUQ8byZsN0ByMHt2ZUV7VCopZwp6VSM8VUM7S142
KW9gYD8/VyV6ZjZyNz9EcnM1UjRkPG0hbkAyYSs3azd1PStIPDRjeCQoeUBgYEF2UVRpVWRqcUgK
eiVOQzc9OWlobiZ4eEoqakpfRFRpcnQ7dj5ocSNBaThJcFdjVVNTMVYkTW1hQlhTZik7RGpYZX4x
bj07cCQ9az1CCno/U2lJNWlFVWM+UTljKjVMMENkK1R0TXVPZ0UmTnNQcD5+aGdMfk5CcSYmX2ph
cXFpMUxfPHVOJjFNKktwKHlqewp6RG1iUmtIKFlPITRYVF9yMCRvSUFrWEs3QDNDNTgze3hPJjYp
SjlgQEpsNyM/MT1GfkZ1VVFkVWoxMDVXTm5AKk8KejRzJSFxLVp1WHV5TSRmMUs+Wj93K3B7MXZi
fj9LO0ozfj5XaDFzcng5T2Z3O096RWN+YmF6ZDBfJnAoVk93O1ZKCnpTTG41NykhcDNvIXBQbGVu
TjcydTFxZlIqV2JkXlgobEVJYyVnX1puODBWdit6QXk7aE8lalhFeTxuKFZOfGZJKgp6U3V5V2B3
JF5kYjdLPnRuTlRBRk8rckZjfU96dl9uKkczWT5CT0lmfXl6SkNePVlKY3RjejB7Zi0kS3N1V0hu
SXUKenAqeyVBM2J7NypfeUpMPWcrZENKcU9FMmJNOShuXnJ3ZWFqOzN5JXJlQSRQVm14NzhnUGl0
YSFmdjxpPkdFaU1HCno2LWw/UXRNQSRUWUZVdVVaQmRNbnV1NCRqKGI1O35kY0UjZyozfXohV1NK
MmNGV3xOYU81KEZ4anNDWjNpZnohSwp6e2hzejFaT0BaTmxAakVjMH4qRmVwNDV+ZDlpS35ZTU9o
WEZjX34/OWNwVG8yODQ8aj9xQWJZUk1uKlpVMj1RNysKeiN+SlRiUVFyJVpVRWpHQz9reDxQWHlz
LVNCJUl7ZipHaiNwRSVxP0ZHcWk9OXtkLWI9dkV4V0tyYm5EanZRZlQyCnpsU2VMUV44PGAqcmgo
azJpWGV8VEhES0IjdygjZDVaNTFFa0BfcjQ1QEY9QXUqfnEpNm9KYC1CKTlhSWl6fkI4Xgp6d2Iz
dHRJJDNgblMoKiNNTFJYWkhrX0wmWUAzNjV8K19ibFE9R2QpJE5oWk8xdDwpNWNNNTJGdmxeM2VK
VyRFYDwKekYxK3JeUkNpPDhuUk5IcnxLZVluMS1EfHxUMkxmbm8hb2BOMjUtbW4yOzFBIXtPeyNn
Py1+MUhePF9IOVpNWCpPCnoha2godDdNP0NFN3w1KTwhe0VMVXEqNFhyI1FgJil3KUFOUyZIOENr
PiNEWSEqT3RNVTR5eyZvTjVvSigzbztYawp6VS1faXI/eS17Q0w0Y3FKPktARD1VKT5iUUVLfnEr
NX49bFNDZXlGdkE3anJHRzg/bFUxc35sbzZOUVNRSnJVPkQKejE+PzNBRXdBWV9pbHFlKnREX1BB
Wip3dkhqV1ZZd1UoIzNxKilAQGhBSD1FIU0wOG16PkZmNWZeQXVFI1Q/Pn49CnpTPnpDeVpTbClI
aVclWWtPRlR8MCUhNytIPXg8TDNWTlBuamFpTX1pSWwmNVlvYTE3bTY7azcrLTE2fH0qKEQ5Ygp6
ZmYlcGtBKlQrWkpVZ0M/LVRVa2BJcXc5X0YtaUw5KHlHbndeKTs/KHQ4WTVwRGtecTdBQWlvdi1+
JjBTPE5Re3AKemwzIXtKcVVNb0BFV194U2p1RnhwOGZGXntaWTJWVTlBdV95JWVtUTUrWGRqPjFu
V1JMeUR0ZGs1MUB8JHJ+KHB9Cno4YkNlemsjYXkzUWklX2ZzelU4U3pEKG9aNkFnTCttV0laN2l8
NXYyN0RfQmtufD1sTDVFPC1KVXtXVGlQXkIjQQp6S3MkJDdGYDRWa0glS2shcD49Xl5mXnl4K1kr
OyVKZU0kK3BySi12VFApfEklTUdYJW1nNm92bj5vbm5ZcTQ3JiMKemA8biZxJUxWTGZiOyR6RlNs
XiVvJUBeUD16SEJkNWZjN0VhY0A/Y3kyZ204KVoqb3dKSkJrfkdWMWY/cF5OMVNJCnpwO3pKMj51
M2NqfEJyeHpxU2FDQlhsUEZiYFokMGNCQ1Z7fD8jeX1QZG02K2xiPks9SkpZYGBlU2AwOCk9LT82
ewp6M1RodUNqZWN8P3k1dndhe2I5N05TQiVaZyU1UTQ+ND94djdyODkkel5aVUJOa1NnMT9mV2Qj
blhLPEpnUmVLezgKemE2U3RqQkBreHxqNGFxcnlEbVheeCZ4c3FOVmFHPF9oRjFqelI/eWZFTChg
IXBoRCF+TytLa0dUP1hVezRma0dYCnpHX1RJWDd+RUBHakh2KiZjbkNoZUBRVndiNyk/Vm8jYmM2
YjIqKzBFdEY/cXRrI25YQl5VKGtrNlR0VSs9QFZsVgp6Wn4rYjgmZT9RI2ZpIWJ8KTlOcHo+bkZf
KS1iQjF1aiZUUXdAZTlzZjlPTzVGKEtaODNRfjxqJFYkPzxoVitEeFkKem1vYn1ZeEo/NTFQY0Bw
IUtgbTIyP1hAVz1uZX5BUVJ4TGZPRXNJaFI3XyN0PFFiRDYwcGl3SlhsdGkpQU1ONUApCnpXTiND
fGF2QHRtTS0/d24qYDFCOCEpUyNsKUt2Kk96RFlhWHp6U3JCRWYtT1ZBcnl5c3RFVWl+Ull7KVNC
MTIjcAp6djMzO3hCP3pvM15HKzIoKnV3M0p7Z0gxP1M2JnVscFczYXchWkZ6X2dySTVBTTgwaGEy
UHsjaXVORTQmaChTZ3YKenBpcU8oVElual9OUjFIY3RwbmZFY1ZzantAMzI4MUMweUBTWnE5KSle
amN0KmFRIWpTZGlQcTtvQ2R8eTBGKGt5Cnp2YXNiWiY/e0o7PmZKakhmJTlBP0ptajAqSEByI3p3
RWVvNj0tdDJETXx3eFVkQW49PnU0RDJJZXlRSz1XOUtSdAp6OT5YI2c1WG1BVm9fM0Y9RCNsY31g
eCZhKjVHTFE+Iz5eN0hEJSZ0eXZfI34wVWJmbWVUWkd1QS1uVURENyoha2gKekNAfmhXeWRKI0NC
eEBoNzk8eD18YHJramlIOGd+ITU7THpAMUVgSFlzayE1LSsoUVhRcWRLRnUxZz42fipNNW9YCnp2
QiMpT1hZYFNDQElCcm5LPiR4K0MwZH5PI3xTYUFPNipsRnNyKTc+YUg/WjkkdD9RZ3srSChpK1pL
ISNHY2Mjcwp6TW94VypPZDskaDN2UHBsNyFZdz1NOVZlXzBEYUM/VV55TXV3U2ReUFV7YSVve3lx
VUZ2WT5XYXVObllkITt2KU0Keip7I0ZpYXNrUiZPRjUyNVJucGVCd3hXfn1YKGgqTm15X0lIJC0+
ISZ3VE03MzlhWE9FQD1gWDZuXkVtcVh7OTFqCnp5KGpkLTNoM0olO0wmPXwzQSZkKiY1TGxUPngo
KG1RNDJsWDUhTmxZQD5qI25SSklOKGEwTVFeTEpRJiloJm5CdAp6RXJNS0p6QEFeZ3pNSF8zMyRS
VSZKYFgmTjh4I2dCdWBtJjM9ZDM2I3lwWDtRNTUrMDB7UkUoYSRHYU1qe141bkwKenE0fUt1eWo/
ZzdIXkBkU20yZVRpb0pFN3ViPk1MfGBiZ1JPLSZFS1kwQkZHaUFuRlJHajs+VUk/fUglcVd4JjFN
Cno5dWkmOzxTeTlGRH4jcz5kLVpoSXg9JTtiKyNUTWt7anZ0TD9Dd09iYCgqcV9TTE18cjZIJFQ1
eFVFVHtpcmNMPQp6P2lPSVdsXkZLQjxXVylVTyZWP2wtfkwkPEdxUW1CJXhfaFduNERnfishVkVi
UWVzeHVASCVMI1BZQ0xBKU9FPiUKejFPck9jeSUhZHZ6JnMwcCFGfTxlRVhXcC1OaFM/NiNHXk9x
NU4hZlBTcUBeMFBMWnZ3JktCVWRoPnxsQEBDPkNRCnpROzZVI0Fae3cpS2BOSk00dCVXPXA3UWg7
Z1huKXhZamptPGJYT0glY2d1QipXfGxheVVwR2k8NU1ta3h4TEZ9MAp6b0NYcmIzMGQ4YzcpdURZ
OSkzYj5KaiVsU2AzWnMkMGF5LVRZWU99ez0pUFReXyVnc3F1WjU7XktyYn5xPDg1JFQKenA+KyNC
cSMzfTlJbj18dGZ1ZG9gVklpdFM0UlNWdXdzQCRtTzFAbEZLbHBIcVl9VF8wSyUyWkV5UzheVjNB
KSl6CnpAQihgTT5HKDQ9NG1jRDxpSVBjVGh0UG9wYldjWl54d29OTStIQFBOLVUwfF9JbXBtTFJ8
d0E+KXhtdUBrWEJYWAp6bWokYz1LJmBsZCZGVXxDS3ImVjsxdVdvKnB9WH5CdjBHXjk2KUpHO0c9
UzJBJUxMJUwtNiY1RXMlfUJuaCFVKDgKemd0TFUkMX5xKTk3PDkqanxKe042YVg/MmtjPkUpfWJP
QygoKGVPOGNDZ0c0ZjVOalA5aklNSEx7MF5XYFJWMyg0Cnp1Si0jYXlLXigydXY5TkhOdypyd1hO
K1h+anApPGZBTnt5K15yUDxSXlJDX3ghbnwpWmxUNSpkNktkbUsrRGx0aQp6eWUlQUQtMlZfOGJj
aFdpIzRaNllMeDVQTGZGflYrdVhlPEF2N0d2bTBsfnU2MG54Q3lLWldqVz1iIzE1Q0tXOEoKejd0
dGopKX5oZlZNPiZ4U05WZCktU3BAKCgldEl3NFQjPkx2WjR7KTY2PWo+SklwZVo5MHNEaVQ7bUps
akZUeSgxCnojIW9OMTNHbitiNyZzfU1yMF43TSQlKn0oSUoxRE17ZlFjKlF3d0kwWCQlR2N3JWxJ
RVFeRGZaIzswfE4/Z2g7NAp6RzI8XkE1VXA8eng3Xl9wS2dkckp7S0h5emhYc0huQ2V1fld2M047
R3A9MUA1K0FLPElRZDVGbHVIWEIhbEs+OTsKenNsbUI/dSk4bCp3bnE9QGM3VUVWdVVZM0NkMmhS
Rkw/VHhfU1RGWi07ZWgyZVAmJDZWayVNd3BMMSNgNTleUGE5CnpKS2JoSC1ANSRQWC1AP2VHeT1D
fFJAQVZkdEpMcm4rSTFIZm1YRjkrUkxobzNlRjQ+JFMqYk1pRGgycSljZFpoQAp6ZTVPTHJZdGFs
ZnBiRys+NzBebVdhZ0NWZUNqPm9KSiRfbnt1NzxDcGcpPi1Db0MrTTcwPCpUSF4lMj5RdnwmJUoK
ej4+MiQqSTNMblFoaktsakV1c1M3WDg+OVM0aENATkBXI2oyO3RWRzlnTHsrNElCeEFpaktMWShF
PGB0SXQ4O3tJCnpmQXUyXyE8T1VMenBORF5RcTtkdDl7Jjw4ZkNyMFVmb2lUTDRSPHZMUSNYVXB3
bnMkYTxHeVpSeDx0PXtDdWBrWQp6cVRObWR0YyFFN098KzkrJkVUO0AqZURHJUhqXzl6WUxxTn5A
O1FZMmpkbEMkZ1A4MTxDTWhma00ySnhwcGREKEEKeks1NTR+STQtOWJgdS02YTlXbEBJYUxQTGti
ZyhOOXgtWjtxSkIjPSYxSmZwMmMyQ3Z1ZGV7Q3hGU31tPDdCSmd9CnpKLTEtQ05wV0tQMl5ZNSVx
WWg0ZCUtV3t9MV5sN2ZzRFRBQjwrI1NQNUU9TShPKHk4NTN3MDQpQ29LVGVQWFJhSwp6KSozRWwp
RVJaQjc9ODYyYEVZMDk8U1hgZGYlZ0R3am1JRkdqJDhMZktHXio3aEl9SVVXSGpyfGtzRSRLO0pQ
YSoKekFPQVBoanZrY1koSXE8MU4zVDRXc1kwSnhQRTJVdmF2aXdzRVN3ZytxOWhaV3MofFk0SGlN
fnw8I2h7Uzc0eCtOCno0VkB3ZUhDTXIwbzhqZTBoWHhOciEqJiZ+MHdEaEBFWkZweSV1Zk5XI1R6
UT4hJFJ3Y3ZzZEtrTHR3XkBkNEM8Ngp6eCZfMk9PSkMoTmBRaSFTWD8tKjhiS3g7OThtRVBPO0Nv
Uzg7QWB7X2UtJWc8T28hMXh6Y1hoSFJDYTZLeVFSOCEKekp2WksrdyppO3hBVSozSyNEI1pPPk9Z
QShLJntfPD9mSjRSSH56ZncwYihWOWVZKl8yUn5RQStPbCZ7S3sqWWJGCnpVVSg5cSFKRE0tI2BZ
MDEpVzYpO1YkTGNzVHpmP0gwXjt9NCVTRCRpaiV5TFNFP3pkajB2fjR+SHQ4Xm5eVHI9Vgp6Q1dZ
Rkk3eVJKXzBwZzwmO2pSTU8pRnYmTCtER3Z3VD8tZnxuNFp3YUwya3BGalFfSzZjTmR7aEg4dzZs
TH59ND4KenJCYGtXVHV5NWQ2VDZtTzZ4SDVWOChzTX1QUU9KO08yNkJ0TGZsZ3I4e28oRUM1ZX5y
TEpHQW9xOzR9czBZOTA4Cnp1fjA5MlhiIT0kMiFSVkdRSHhlNFRJZjxDSDAmezhxPUY3UEgkPkdQ
VDhjeDlnKCNULVJpWiRqWiRSbENMWUJQMQp6ez5KKjJlR3EkMEg+KSQ5en5PQVpKbFljVjtPb25y
SDBsQTdIT3x4ZUFGRT52Klp+JUhLPmQlbWFoRyQxN3hPPTsKekN1P0g0ZlZ+V0Y/V3hySXVgdTtJ
STltKis0dFdqYmZwIXJQYkpsa3swUSRSbnJtfj53IXopKVFtZWtuVXRXWkUxCnowYE5pdXg8KEEq
bGBGVG5XaWBSOTwkNTxMTHg9VmtFKXRLRC00eHd2djxEeFohdjswKm5uMWZgPUNIcV94UzlgTgp6
OHY+X2F3QE1YYVZhMHxNN318I3F6NCM5OSZxRHRjTGZKWnExeD8+YDRtUlFkfDJyQiE1fFB7fClu
Qk5zWCpkRDwKekNDR1hFMzBTeGk3QTdEcihMcSNKdH5AMEtGZztqcHg7ci1QWSV7fipQUTdFfjIh
SCNlLUU1c3BXTCVlZnReTXNMCnpDJjVWblNfNzRvU0tKakNTIyNibHl1bCY1YHRTclpzRkxLRWxO
IUloIzRYS2wqUzg7TWxQNmlYPlglWl9QakF8dQp6RV9FeW5rSE8/X0tUfXIyajg1QFJvK35obFl6
YGxBYkRXIXZiaDVYWkFDQXE7SWMtWH1rPyg1fnpOQzJNVCYjVD8KeilBLU1hPVVGQGQ9YishLTVW
N0UjY3J+P2BhJmhHRjErdEJnWGo9RFpzM2RjUDFNUnp0aiRPSC0mMkp5bVRfUXQ1CnpXOVJYVTgt
e01hQlkzM3IzRTZGc0dScXA0XzNmQUNjc3JneT9jK0tVUV8jdjBXMntaU2d3fngqOSQ1QUwoXnVA
Qwp6IWdWVSledHtBNj1BY2NASW5sQEsqWUZNemFzO3s/ZzA5MDZUe0RLczZFfStVQFJjMlpvVHw9
VVJQcmtHcnV0aEUKeilQJHRqKWl4LSk5MF5CdmlLUUB0TihqVClicFF5e0tvdCN3NX4oMDFIYXF6
bWdqK0NRMlBIQzlZSFdjfHZLK2YpCno9WDVMNUVsKzJkZS10UW5RWWY9YlVXd2UkQiQza2NCT24m
WmQte1hTRWpDV08kKF8kbFlsXk0qKEJ3cChnUHRPKAp6PE9rMUotPzhxV3JvJndRLXRyXj5RI15e
RjFfU1Z4V24/fTghOHB7dzJyJTlQNTFYdG49T1JvcD01Xk5AekR5cFAKeio8WUsxWjYwQkBQcTwl
ZFZwUGFHSU9VVVBSRy00aWRGNCFBJCkmMFZINSpyQDgkSDBCSHFCXlFlditLb1N+QmRECnoxQlJ5
VVhscSpEakJsQENEdzhyUGR6MFMydFlyQD9jdloxOCUhQ1R8aEAhOWdZfU8qRCFuPXZQXmpKPiE8
NkIzTQp6ekd1ZipJb00lZCRrPW5hP05JbjVNRkBfNERLQ0pVZVN0WXQ8diE7TTlgKmpQcXk1MTBD
KDN+TyMyTHteWURfe2AKeiR4Kj5HTEt+fDVeKUh9eDRzPlVVK2R6fSluWXJLR19RT0Bgc05fdFhj
WVNgYTFnYGdFJmRLREBZRGFLNWA3e1QqCnpSQlBib3E4JTIqSVZNSlU4M2BCVE9veUFOR199SDch
JS1TSXBPTVRXSWB2SEIybXlebFM7Uj16Z3E+KzVIOTBDVAp6IW00SVotNVROU09eWU5eczBNQzFe
LT0+VF9OJEdyZnBHZllLSFBPUXlJUHhJKEtaQXpefmlsViQ+Xn4wUm5fajwKejZCZ0BvNHhnfXkp
Vl5wJUstVilCIUJtR0hPKTUmekNqPDwwNz4oM3VOZm1kKmJCe1FebDtaOVFMODUjUGIhPzRkCnpe
ZVY3WE1NfXZ8NykmZS1hVnJGI2FzTSM1NCt5RHkpV3ZuQW5DVyFiM1AlQzNofFQ0PCFlQk9KTkVD
WC1hIUhfSgp6c0hsYGR0b25zOHZoVk02U1pqbTtgMHJnbmU9SnJ7b0xxY15ga3QtKWlMJiooOCY9
VjlvXzQ5aWdgNzxhJGNjeFMKejZyRGZeWXZXOHdeUVJgTk0lWHNBTDRxZD52QTMrJT0pRSQ2O3kk
UUl5amRaYDxgMSVPPEtmdnM1WnJ2eHNRV299CnpoMVpXWW19cXtHV3V2d2AhSGtaWDlEXyFaVVIz
V0wyQ2RveiFFNUZ1I3h+dF88e3VlKyFmcEopdXRGZzt2bmotQAp6THNGZm9ZK25MZFM+bzlwalZ0
NiZFU1hGUzhaaWo2bkpqfjNRJmo5WCZCZXJ2WUslZVc1JXppSmZ0V3RKKzR+fisKeiV8Zm40NGlq
OXFEO2x4PjJjYW5vS2Y8eU9tcFFrdkNCe1dVXnBeQylpMGF1QVQkVD11OHNtQWIlZGZDYzZAcU9P
CnpvWkpzQSR5OF9YN0NWdWlpJW5IU0AlYGVrMUUoJE57USVreEZaRjRqaFcrbFR4ZnJ9ellGYUlY
KzN2ZWk5dDwhewp6RH1jYTRBLWZXPDx3V31UT0ZWam5HSFlRN1VmdjBERndjK3QobTlHS3MrNkZJ
YkVPMjg4Y3I3czd1eGllQ2s8eTEKei1eVyR8UEtZbDFlYE14bSQzV2J0KERzcE1MZy1yPWhYV0Ng
QTxZVmJMKVFRIT1gZGpCaHVVU3FXV29hI1FtYmlOCno2a3szIUkkJXlnTkJ8VTYjNnBldFhyJmNY
RnJeWT0+PkREdjgheX5wKCM4U0Y5TFMwamV7KF9uVGZwOz5TbUgjMwp6TGgtcjQpYHx5KSNOe2JO
bEwoejcjVz8qNEttX19va1dwRio1aWRjN2k3SSMtSjZFJGVPWUVwTUQxRVA+Ul5Ie0sKekxIJHVO
TmNpIUUhPzA+fiNvTExnaXxtckR2M0FyJDxgN3w2QHNPRnRyUF5yNk5WaiF6TkIpcX1uVGtSQyFF
fT5kCnpnO0tiTmFFOCpuZlFnQnFta3hqODVJZHNiX0koaVJaKUc3fl8waT5kVXhzYm9ZUm1tUyQ7
RWJkYk93KCM8UUppVgp6cHFleitjUDNIUi1PPEg2cVZ3I1REQE1yOG9HeSM3P3hia2lQM0lVTU1s
IVI+Mj1fZ0s9czhxZmBteSg1O20xdCgKemYwXlhwcmVCJGooSVYwdzNDZ18mK05jO0UkRkA9PlZm
MUMyWk5XP05RazcmV3BHXnNDMCEqRH4pUnEkJjh3NSNfCnpVPkZQOWRQTkM0YHZkcGE5dmElbGE0
QUdXPHFrejM/PE1obCUheW15SU92TnNXb1ZGTGVnUCNmWV5zeDVXfGJvUwp6SCp6dDNCNSFKNzli
UG1mcElJbUJ2K05zJTM0aj53eSVLMnpYUV9EdzJkMG81RSl6T0hpQihCKlo7IyV4aHpKfX0Kem4j
NnN2a3k5cSM5fCFwUyRCYzNuTnUxVmpMaHlxSHVpZUJlUUtgVkd7SHQjeE8lMiNne01ZZzFreHpp
JXNhV3piCno/VWRnYExCczBxUiU5OWcqYzFhRk1FYDFNVVBTP0xKX2t9NUNoXzwpRjJGYTxeSXhW
UlJxaGp5SU5HKl48aENXPwp6UEorWmFDOU5AcSU8R0VVcGgxTztyMTZiZkluU0RsdXRyVXRTVkpx
ZSNpdjdpY2ZkRDFRQjw+cVQ9Yyh7UWxtI1kKek8weTNIbj1CZjFSPyo7MFdoPj5WQFRSKzMtKW9l
aE9pIXhLMikxbGZvbiFCI0w2ZTJTcmpLQCVkIUhGM291PEp9Cnohei0oRXJVUHV3REZkN21kTkNf
cnZ1KH5YMFowYl5wYzdNeitVa1FpZVZrVFBMZ3BHeEdRcz8lKl5sNFk3PHtUPgp6MipkJH05RVdQ
WCRXdl4rLXVHdzREdCl3dCpAZmAyfDRFSjFzRkR9dz05fXpPQ0RyZ2FLI0l3SGpDZGx6UklZQGUK
ekx4bXhmTHQ0cGJSV053KiQ+VTh0UEc3NWFLZ18jZGBZZyV7UDVxKTw+OFJ0PEopX2ZpNEwmJFpk
QGYoK0o8LUEpCnpwQ2d1YHAxS0lSVyUjVStWMUZnRj1wMyF4RzZfdm9ATF9oYWVBeXJTSzB9dDRh
cEJAR1JDQnF+R2A7ZXNaUDc+Ngp6SVgxKCpTYF9GKXB6Rk4/ZTxVXkNhdHdVZ18hMWhsSD85TWZt
ZDA2MDZ9WVdlan5pP21oaDNIUFBVfX1lYHRRdGUKelNMKGlOaylCX1cjaGxqfUtQT3lHSH5gUnB7
alc4RE07fj9DMH0jaWEhR09QXy03UiQ1NSMpWihBREl4Kz8mc2diCnpZUGNsYzRoV24leUZfJlpJ
Q0hWKmBURmd9YXtZdGppSl5SK1c2PlZXNT94Iz8zRHRANTlFMUZ8PnBMdjxoUys9Mgp6bU5IKmRZ
fkl+bFZtU0tqYXVtPkxRTCQ/aD0rU1RDJjZJN0pafUt1YyZYT2RIbnVuelRoVHYjUG9LSkJeNV9+
N0IKekopUX4yKzcpTHNtQnpEZEh9SyYoT2hqUmxaTEJ+T0V8MytmTzU+VT1GMHkzeWkkSDc+R0xh
XzZDP3JMcWtfPzMmCnp2ODI5cWcpYnMrbiZKOXluPTZsSm1zT2ZvaFROP3YkKCZ+Mzc4QDVjcT51
OFR2P09wTTFDaUQ1bWFTfWhrTGxvQwp6Wk9XcHAkbnY+VGVNUjF8LTJoJGV1NlFjT0VzOHp4YVAr
ajhYMnxHYHQ7cF9fal9PdkpsITxaVnZjK0Q+dkE1VW8Keml4aEoqRD19cklZcDtaJmdnIUtRNFUq
KU05OVNna1daSV9fcl8qN1BveF9tPU5WcDN1THwyQCZEMzN0WlR6RCY/CnpoKXooSDVfNnF8KU83
OWclN2N+JDdsJkJSSElONkNQJENWJiskY2Q3MG57ZT1gWCpJeT1UKT8yNWJuczsofGI/aAp6VUs5
czE2fVEkKD9xYVZhZGpVIzZhS0ZwX2d2ajZIJkghWEFgMDFhV01pUElOTURrRjc3QCNQaW81dSZI
SHU+TTUKejIpKztZeT4jfEtFdTJTQnlEJDVuNytWSkRvUGotTysoOXVRc1M/WVkwcVpnZEh0RzdS
YT4pSjkhMk1ZMCk7SSZXCnpwZnMlJiUyWjAzMkQ5ZkYpS3k2TzNFcU5kc29gSCUqU00mSXh3bkV0
S35FT2dfK0E+XjM7VElaP2o/Zm5XdEo0Twp6O0VxTHpTVGExOzJPZil1aHdJd0JNYTdCQzsjaTtD
TUdLKjNoNDJKfWEtZjJGYSFTSmFAUipJVmEzTTBmPzJ3bngKeis/RU9FYlY4eHNQYFpJYFJANSYw
REU9MFUqeE13JXVkTWlGRE5FIWE2Tnw+SUo+ZWNjR1dRflFwMExUSU5jTml4Cnp4TGpFM0s/ZTZr
Z0x+Ky0obVNtZ1d1Pl5MTEEkYlpkT0khZj49U1FVQSE2QU5UZ3xqPiZSOWVtWkFEJEk7Vz9fSQp6
aEUxemNEYmh6eWhZUXlCKmNuYHczV29wdER9djwxRipAPERHemxKblk8Q3xuJGIrO31BY0BWansz
Z2hJbTZUe0gKemtETGglTEJXRVA/cn10Tis5bytpTz97IUZueWZ0OyM2MHFTdGVQQHI+QF5GJGRQ
UTxNVHoofjEoeT5XYCREY0NTCnoxcjYqTDZVdHozTUZaKD0hJTBHVUBGRlomVjROTlVPTWZ5UHhP
bmhJR1FsMG90ZUZoUGVIP3t1eXBFbFFWJH5BWQp6WCRlKjxLe1dgaDF5Q3ltZ3Z7XlUrLUxYYEFA
PTtTPjEkI1drJDtpUGdfNlFtZCpYbi08OTthcWchPlYoaTIlQl4KelUlYXxwXjJfRTlsU09mfUw/
M1dPVnM0KVZRblY3TDBKPlRlWkJpeVJSc3pCOXZSX3E1WlFrVjQxSVZTbmxybiNyCnpiaHdWKCtk
dGBhYkpGJHRxfSFfKT1kJkB0cyFEZkBFXkF9TCpzTmxNYH4oLTtjYDJhQVZrcn5BUyQ7Qk5DP0d6
Kwp6VG55KWMmVm13U21YeDZyR2chcT1zMElWPyhBeWVKKVNoTjwxaWgzcGNQKFEtOWlHQDl6RHQz
T1FPZEc5T1cwMXUKent8aGg4b0NufWQ7PSZ9XnArN0FlNEA9OCpHIUx+aV8xfHRNYXNRI1JKOSZ5
aDJsNG99UF5qJVI1UUJIazZfbiUlCno1eUhFYnRLWnFPZkFyVmI0dGV5IW1VOXE9KD49eUNYaihQ
fSY2MzU4b3B9QHt7b1A3LU9qYyNVN1JOMSFXQTtFJgp6XmFCdH1wIyh7amR7LUdabjZXR1YtdHxv
b0RqOVp+RC1SYUo4Ml9ebTYzR01BKUlicHwocUs8ayEjSzItV0Y3MjYKej0qezI9aTQ5QVZ1PHhi
fi0tTjR9d2lGVGcySmM8Y3tnOGNQRT08QX44JU5FbzJgcE9yLTxMIVYyUjRnMDRpcjR6Cno5UnJ+
ejVpRkE9KDFpaV8md2k5P0M/KzBpSncxQnc4ZXBYQDRzRFhCT2hjQGkxZW5NJVkjRjVPQ0lxWDdT
fVAjLQp6PFFUV2w/cnNtUDhaI1ZHSDxSc0EqRCh0dDQ9WFFIeXE+dFEhMDJnY1o9fXFYdih9P2l1
RD04QXtxTUxkOEg1XkAKekxmP307MWdNTUNRZWg+OCoodnszSXE2e2tWQ2dUJnoycTZrcWNOYGt0
IyEzZWI9KSRrLSRoUGtVWDBtPVhXWTcyCno4c0duMEpPYDAwTTh3akghI1Nse3RsfSZAU0tFTCVG
OzMyOSFFPSpWT2F3aVA9TkRJJUJUV081eGZ8aEdFTzw3agp6Rzw7RkxibCk9MUorbDMjWC18MmpV
WXpwZzY9RjFzdnJDOHdlZ3tuWEI2ZkJueWUxaHRYQGlWPCNJSCVrOXREV00Kejk7VyhNbCh5VmE3
bk8tR0k2PW9ZeUkkaE1DIWgoIW85RnkqeUlvc3wkaWh7bj15PihwKWozOyFHZ2Qlc1FCWWZ2Cno2
dnFUKEk4REEmajRVI0VuanNDWTBCfVZ6K2VQR0J0S1k5ITF8b35aelhRJGhkbStvbl9ZVWwxYnpL
K15NOFElQQp6UGVjYUZMeC1EUnBeeyR0d0lyOXhAbDdVOW9SeVlJeT5hZyRpU0J4O1AxQ2pRU0VY
KUROWXo9ZnNTNGBjV2IoS1MKekhndHQ1QnNnP20yc0gyeUJZWW0kO2I0SjIpalc+R095cHE2aG9H
aWA2QUpAWVJ7KUdNZDRIZShYJmlpNnIjekptCnpGKHBGP3lZWk4zP2s8WmAwWntBO3pgZ21oOzQ2
PWZaJGUhYkdsPXtybHJvOStHfUwxZT5NOyM8RFUqNzMhVlV6Ngp6ZE1DLWE9ajczPm0kQEgqMyZS
KENzXm5vbCNWSkxfKGZ4PD9uZX1+d3M+ND5eekpmfTwyazJEZmI+bHplbWVBNn4KentpVEl2dWt3
cHRCX0A8NkM2dU5fbTVQZThReSNyYXlfQjcxezw9X1d6S2gxbGJZTCk/V0xoKXVUJTArMDJIfStp
Cnpgc3hsRCZkd3Zrc28/QT5jWU09SkN6LWNDTiM+cGU0eTgxKkpHKEp0Rmd5dnNIQzFlVHtMb3ZW
Z250cTxrM3pmMgp6PU0wMkgkRllsZmhFREpDdHBqNit5PW13PlZKSjspMzdhWUhWVE1QUk9Ccn4k
WnhZbT0yRzE9NmlYR1B7Z2hMcXkKekQ3YmJlTV51c25KaTdDS0BCe1ZBLXstTCZTJX5eMHArQjxp
RXtCbURBNDZsM2RjdkxuT0NrYFNObipHVTBNKSlWCno7VEt+VGs+KjdaNS1wRms1a2xiblBBbjJI
Tnd7eDRGU1I7aVZnVFg+YSRxazk/ZyNOPEEmY189YHRFWiNXfmMoSgp6TElLSjU9X0JUMyRUIXhY
K1htPFVtXktGNnJPck1PMz1LbDsxYylsaFduJjNxTEgtJnp6alIlNypnJkdnc2BHKWcKel9qVH59
amZFMEBZQHgqVW80ZFd4NlF6KXA+YFFUKzl5UVRJVCsxWTMzKF4hOChwNHZRKWszWC03dHVvNUZI
PXpPCnp2MHtNYE8hWDtfUmxXMlUkXnZZJURBUDk5e0ZTY3IoeSZoWGF2PlB0RXNNcUA0WnphcSZp
YGp7ZFRPUHZfK3I3ZAp6KVFLZ0ZXcmpZcFNyJCUpTTw9UD4kSU9CcSlyVTlOUzBgSTJgaz9tbjA4
PDVYQE4hKzZIWiVHeCM/XklaRmZHO2YKej8mUWRoem41TXwrVDQhV1MlKS1IJEpzczshKWI9KWs7
YVFFJnh9PzQ4ZVpKeGJHbGU3UFE9VFdEQHNoN3FfciEyCnoqcitMfGN8Jj55QERkalBkYCl4WU9B
fE1PZ09nP1UzJjFZSig7Nz8+QXd9dnMmJld8b3lhUChGYFJUIWd2c0skMwp6OWFAdik3RUAjPkJw
KnhuJi0qJSY+JEdqNFlVN3k4QUZDZz50XmFTbkgyc2ZxMH0kPWNhfj1jb0ZqXiRpRmNUNzIKenQh
V20hKEJOVHxNd2M8aCNFaTN7d3hhK3MkTzAqZ05JV3lvdE8jUHhjfU1odEFlR3pFaGIzLWhoQ284
RWIzY1R+CnpJdjt0YWRHOW1Xez0wYiZ0Q0diPmY5SHNjNE4/SUBWNSFXN3Ete1FFK0FvY0wye1NP
aGBBTGF9MHAqSGNlO2E2cgp6KCNqcDk9SGN0THVwbzchWEBjPXRMfTdRam9KVmAjQTBRIzJCb31y
e0Y1USVSbFojeXk1U0xDXktvbHc5VWFSWmsKeipEeChLTztxUDgkYTNZUnsxXiYkS14zUX07UjA9
T3N0XjI2aFkhIVVnMyk/NGwtVTI/WkM/NV47cE92bm1zfnJHCnpYWENTO0llYypDJFlNcUMwMj9y
eEM1eVAxNkBLbysjYjM1aSZhOTBJbVImdHk7VzAxVzBYelB3YWJ9a1lJcUoyVAp6R0xwU15YWCNx
PSpRcDdtVyVzaVNfe2oydWk9dntedlYrOzkqKUYmS0xicklyY1EqbHJMcTdCLXZFQjVnTTVhX34K
eihgWmo3K3AxZylKN19uJSNIR0tDTEdFYGN0TFhjNXs4QlVFI2UjIW5Lblh6NFdQJmEwUVVBeCRv
eVI0U3w5PTNWCno4NGtIclI3NS1qeXptVXElJloxUF5BNjk8dG5rUnh0V35xSmF0amEqTyUxUUs4
Xy1KNGlwPEt8d2dvZFl2cUgwMAp6JUw+aVBaZiZifGNVJCYxLXswZkdwWnF0JkZyV0FQXj90cnhf
fkskMik/UCg5JndeYW9uND9sTEVtP1J9UEBjPWUKelpaR0QjM15HfjFFeFdAby1jMCl9UipVITRx
dWs7ZFZTQmRtZStNZ2tBYlQwfDFHSlBHQzAhRyZVKX4kI1d3WkV+CnplQl48PmM7eXlNUVBfeXlY
aVZ4ZXBTZS1HRlApRUIrPHxnQUpRIUpRQTFCLTRsYUtyK3xNMUBuVEdLKH5mNjw7VQp6YGZlPlU+
aUh3K2lvbDkyblVqOGRyR0RfUUpObzlDVDs0bzdXOHtFUyMkP3g7Um8/QHl5fDRrSi0teFkmMTBQ
alQKej5xOVk+NTF7ISVFSTRoVlBMOWJvPk9BKWpIY29TU0VhOWxwPFFzYXAqKlNgYUNnVlZYZ1I/
JVBedyFLcjUyPENhCnpDKDIpeWIjMj9VRlJtPEpkTTUlbFNqJWUyNEplYU5pMjNBd3NRYHdyK0Fl
SCEkUTQtb0RfdTkmYSF3TCZkYllTJQp6U1olPVdLamVFKHgwSkc+ZVN7VWVIWVNuVilMKFZUWjw4
eSZ5UzN9KCQldnc7aVZrTWt2e21FLV9kfnduYjw7RkEKejNxNTUoXzRQc0h4dldYOyQ7ZGFLby1O
dF57bk45cHU4SGx9UEpTQmsrbmxAZGViVDhsQyRwWWVKPDE4JSFIPkVTCnpTPWJxRSM7fXdgPDsw
eXpEUilYZ20xJHpuT0ZaSGItN25xZ3lgaSQoPkNCVVdnMVZEO0VFN1hjZ3wmQk8tbDxMNAp6QnJQ
Vjd2e3V3Uko/ZTVPVX5WWEMqbTxZWTdwZFk3KS1raF41YHpza0s8TGE8TEZDJTUhSiE2Ymo1MkM5
Xlc+ZXcKej5GRyt9M1VOdW10b3hhbnMlMV9kKyooI2g5bkJAWlotQkNLcm8lNyhhaDJ1OHgjYEJZ
PjhHTXJkI31DbyNRc2Q8CnpQQGBNY3JOXm1WblM8OzRsMT9SNmE5M0ViPjVpPjd1JWo+fT09T3d7
bH56Tz5sXlgzYEJBMil8ezN3TTh1S0R3Tgp6aTBCfkchNUVfZTZeeXw8WG02NERMK3FSOG8rTDVl
ejlMJjBQOFlJITJiZEtmcSZXS3sqfVZnRkheRzsxYGt8cjEKekZ4KDt1ZUFDZUx0MlVTcl9YUzI3
MmFVcHwyYldIZVBafURzJCoxczZMRjhiZmVnNSFXcm5FQ1dnWmF+cTNqRVAzCnozV1FecHB9b1R4
R05CZnpGaXgyNXg4NUF8R1JrXlc+cyp5dlBKPEBZeTdhUDFkKzZxPnNSK2xNWnFhPT1AOGExPwp6
KWBDPE9oQmMqdzIlY0F1ZGg9SChYJTIlX2VzKmxFKWo+JS1GPjE0e3EySn1MalJRRlhfc0Z8NCU9
Y0ojdCluNzsKemJsNkklPyFIQWNQZlcpTE5STX04cXFGa1RMSlcqeE1uY0o7ZHB5em1wMllkTWs0
fj1OST1XO28/MiV7aytwK3FGCnohMF9SX3FmNmNuLUF4Rkp5ODV6YT5ELVg0JTltPnM5R2FhVUo7
JEBgJnkmcWsodUpvZ3RAbSgjc0Ejdk4zV2g4egp6SGNheFlKNCU0bmA0UFRwNXRkSz15cWVBOGBT
cktWO3hmVFFsdDFZNDYzVlheekg0WkFmPVgpKU91eSR2eFNyez0Kems5T18yOXlqUUU9NllBOUAw
WmFYTHRhQnNPRTNBfTg3UXNzSj5PUzkxVEh8NyktaHxHTmZ+WGghNjBWbXlAMkBSCnp5TUZSJUFA
MlU8WHVzYSRRamZDQT9RUk9RbGV6Km4hRE1tc2trakIkPUpzZGs0KkExTXN9PWNMKDcqemcxSj5E
QAp6SihFUCY+d0V9ckViQ0UyZ2FvK3xPNmV9e0JZQ3Y0ITxmeDxRKWhjV3k7SEJXcyt2OX17bTZZ
eDgqc2whdGBpZXwKeko1Xmw1dEBFO1FyKUhiMzBZKjcmeXAqeDtFNGMqNnNNM2xKP0hqYm5lOGc5
PSlUc2hKNzR8WHp7PzB1Z0Y4X0FfCno0VHxLaDFNb2BULS1CK09SQjdjdGYxWVJMd0FOTG91UmRk
bjtPN0A0I0A5NkBZaDBwWlZKJEtLbTZFRVU7VyFadAp6Nk9UTzVGYjU2fSVQbytKNkVaMU5IMGst
MFMwc35eR1ktemYxMDREbm5MbndJdlBQT3s8IVZ5N0ZeWHhKIUBncV8KenNsPlJqNnNRRjl0PnV+
ZGttWX4/bzFvPWRjek99eXlDS1Z8dzVRJiRVbFJXRUVuV0FBeEdDWHNhXnZvTW5gfX58CnpSc0Ba
UllLcGhYdDxIPUFlcDdXU2I8YHdqMlUjenMpeWN9KGVNN1gzVmJIb2hhPGRPNSlKaHMjVyVmeDxW
QmxVYQp6M1F6OEo4PEtUdGByST5DWDdeQHYkdDdNQkZLTG5Me3JSMDQqbSFvU1pDbzNTc1dVTihQ
MzJQTjBKMk16ZzMjUDUKenJWUFFpdCFDKGl4VXJGZ3Q7R3BgYitQNSVzKyh7a0V0b29wc0hXRV5P
PFUpVTAkUFd3SFUhKVpueXgqdj4tRzJKCnoqVCQ8XjJnT25zRWR4YkpRMElyUmRKVGV2bUBKQTJf
djg+ekRuaztOUTNBLUtNLTk7VmMjbGpldlFzYDQ0X298Wgp6OGNoZEpAOHw2QWVnajFiKG5+bFVD
TGdVQl9SO2ZVQmArZi13Tnx4d0U+NExSQy0qVGFvTWo9fDVjTEF0I1hUJSMKek1Ba2N7T3MrSzUq
S0BUMWIlMHJOSUp2JVJ5M2hYV0pyLUhpNlZEYEVhMyV8RGM7K24zemZsRjFONyprYWAqeilnCnoo
WUYlQnUlenJiNT8kKWppSHhQTDdBRkg2SnoxPHUmTEpnYigtPTQ4djBSaE0qUVZxcEFNYDxzSjRG
PE5aSHFSOQp6QFE9bVdZe3I/TjQ4bCtIMjZvaiZfeStIamNKTnxHUjB2VlB6XjBHfkBxc0UyMH5Y
OTlsVmRTfl5pdVYhSHgofk4KekxPaW1FU0VwIXx0Vng+M3dOWFhRPUBRSlBqfWY8KllBMSFvLTVs
SmJlQ3tvQFB1WmZRWHtnTk5BJVNPN2RFPlhzCnpfe3s7S1gwM0Jpb3V3TGwyWElLQm9KSFJZJU9J
KHJNVldPOHN2MkVSNXpmdXNjOW9kZnhiUVQlXjk3K25gZDBxcAp6Km5rWHRzRXE0NkxAcytWZUtP
RHx7MSMxaSk5TjM4UFFhT2Y7SzJJVz5JRDhoTzYlQXd0M2pBQitoRE1DUD97eHYKelJCIWgrXzJI
SW5YQ0N+VjhASW0qb2BrJWwrQEheODFaPUUmaD5JQ2h5TDRRckA8WWFUJkU+I1NoOGtPdm58Kj5N
Cno7NEJZIVBAMX5YITJ+dmttPzk5SGNFYVRJTX4rcUg4VnU5WigjQDZ+ZSYrbk95OD9Ec2xGIUBv
c3tQWW1oNUN3Mwp6NHlYIzx7az13Tm1vYk5gYEYle14zKWlFSEF5Wms4aEtRQGgxPyQzMmB8UFQz
NztjZy1je3tNWm5jUm5oYCRZNE4Kej19bEw8LUomOCkrY18xemhVfTdITjVNUU53d2J+NEkte2o+
Nl5aZWFReHZtXyE+dih6KFY0bXJgRyQ2eE56an0jCnohSSZealhPe0hpUiZ3ZT4mKDA9V1RTXl5p
T0ohYX5pcTF4RG5VUERIWEBlfTI3JVN0RFRJck5IQHp5UyN1UHVnMAp6TDZ2blhoJWJzQDFIbVBZ
RkYpTzBhVmNiRGEyb019KXJSZyNgS216TytgezV0eCFfIUt1dndldD17QClxV3dUNjMKejZPPnpj
KTAhXnRLT2BuVTthNTdeV08lSms5YGdGYzQ8Qz9wVDVUdzxxSUUxT15BPCFBeElOPHJrSlpOVUA9
KEoyCnpNP0lGak5rVU9WOGJzKmYxJiFVVCs4eT9pMjQoYz9ufT5haWE2Xl9PdmNIQmx1QiQ0Unpv
ZVo8NjB9Wm8zQShuXgp6a0MlKXA5KFk4JDYjbUVOPzUpTzxfdk8pPnNiYEtQPGh4VF5gRmFVejdt
VTluKD55dyYwPHAmZTBDVHd3ZFFndWsKeklSIypqIzRvOHtLcHZnPGZhTS1qMXdeaDZUSUFMY3Zu
Jk85V299eVhFR00wdSRMKF8odGZ+a1o+TlRte0EhKz44CnpoUjl4U01AYCM8Y0syNWxNK2IxdEBY
Pjl+V1VDRntGQWtMfjN0N05TenckNjcwOCVzeWQ4a21laD4pIVlNU0lAMAp6SGhnUkltb2VkJChU
KiRQRnR6VVA5RElCfSpROX59SHU1RThWT0E5NCpFWktTdjNKK20mY2MyZUgtcyYxamk4dFgKemd+
azJpWVUweSokPyhSeiMxMSEyTFMoPWhXPHdqPUxrcnttTjc7WEI/N219XntFRUZMeTczeXZTQ31a
KGx1QChMCnpec1VmNTgjSmZNamsqV2tSUzZBMHMxTkRLVTw8XjglO3E+bV4qUilCUygwQU5We3Z2
X1hATEJ1IUV1UHZkNHlLZgp6R3woNGlxN343aSlUVmpaKyRmRjxme3YwR3RmUHFKbk5kRmxYdXhN
OCVNdV9yY157VWRhbSY8VFEqQ284QjNlVWwKenorYSkxViVUfkRXdDtqZXpwQ0d+TEZBSE9aSy19
fSltTGc2TUQpPU9VZCtfYzhaXz1BMUItKHErT29UcjJTdHtZCnpRZFp+V1ZfSHJCKzVZWHRmR3lr
WFlGcVR2RHVaM0R3WSN0SF5YJDdWZEU0dU1pTmxoayV1YF9sbU1GOFQrPnxIcwp6VlRudnxGQVF2
dyQyZSs/Z0FrTGYjKn1FTm5mSGw4VztPV2VzZiF4bzNuOD18RFo9Nz9FOWU4ckFRUXhONy0hfXwK
eilpWDh2UG8oaSsoNV5aVXZVaClPQTdzfjV3JVVDYmElYzZ2R3w2YzRmfHhfU019TXRnbVQtT2Nh
MkdCY0tOZGItCnopNW9PQ1I/PkNoJEh8YWAxZWo1cThMKDFYemE5dURAJjBwb141TWA2UipfXiQ0
SE99VCRTI19Fe142Nkc4XjNJbQp6KzwmI3MmN0FqTjBLd1ZAXilIJWxOJEZ6PUM5NXVRSXg9NkpR
RGo4V0JtZVN4Ymg7NnBSdDgtKmQyQ2hIPi1hJUoKekRGTShoWGtzZk92QV8kOTU4Py1lXyRuQSs+
UFQoViZDTEpATG5uMl4jPkU9KjUzdW5OalBqJSN4ZUxIfFlUJU8kCno/czx2NSFGNWJQayFyPTMt
NkFYOWFiYVI5dEJvVkhJbjJWPGFnSzlEamhxb21Ta2lIaGIlUzJ5Qk5LQyRNVHBGJAp6JUd6RjY4
NWVPKi1CZFROKE5BMm87UDc5Oy1VeERzMno4WDN0fGNwd2c/TG1KKHRZNnNDNXRGa0JEWkV1SFl0
X24KejZkYVUqQF4lTmtPdzlUY3MlWTF0cTl7JllyK2didFE8eUp3bCRSRHE0SHQoITk4bmt8N3gz
QUg7cG59VHolVmMoCnpoRWU+cCtQPFNkZ1JpVk8yfEBgJU96SVNKLUtmUXk8cjNrT296aXtYJENm
dVRGP153YFJmRkxLKENFQHx6PThYXgp6Oz11PS0paXY0MktlMUxiTjB+QnF1WEZRKGgxYGI1TSN7
cVotWEBvSTN0ZjkoZVdjajR4TmpmZj0tRlo+eVZyZF8Kej8zZjA+XjRzViFwcUVhRG9GcVUrOF9q
P01aWWMmIzNrVmNfTCNCZ2dJKXp1aC1qVyhWZWJ7bWFJUT9TK1F2eShoCnp5I2RvTG87SGI4XiM8
T3dvbkZtdmFkZTFrPTI+VCtTWXpBZ1EqMGlOJld0Rk1JSTZYZCpGaiNaKUBaVmlsfjBjOAp6PFJ+
eX01VnFIcFR1Yj51SHM+TFFpP15nIWhsbl4wc1NtI0IydyF3QCN0MHRaaDUoQlh6YEB0QnU/ezlx
c31KZGYKeilFT2IzNTBocUtpJnBTJHBVXmEhNk8kQC0+I2xSVjR0V096YH1IQklvSyl8YmR1fUJZ
OS0yUDQ+Mj4hRHFUVC04CnokNVAjTllaYmRXcUZqOGR0Pz0oJENwNGJ6ViowbFM3VDNmfVduNVo+
UT9iV2c/P2EkTGwrZCFUKUpMQDxzMyYjawp6cWo2eCpPIz4kc1FqX1Ekb1h+ZkEkTXtgT14taGla
SWVjbjY0X3FIPTc5Y0BBWk42PUh7TTJzUm5UTDRnTiVDVj4Kell3NX1YcD9SakxHPWcmXkZxcHpx
X1NIZkd0V3Y4ZTdmZG8+cT1WYj9IT3F4UzByZlBvMmRKKXYtfTJqQz8rWHBiCnopTnxMPj87OVMt
eXRzJllVZ0NZY0kyViNsdGFmTHdiOWFDaTB7RGUhe0pZaWJKXn1kZndERGQyOylRPnd5OTx2MAp6
bUVHST9HaiE7JEZwc1Z+KFRAKGp0ek80KWhuI3AyanR2QyhRN2ljRUM+UzAqTjR2Q0c4MWVUUXNk
TV8hVkloWEUKeiMhWWs8S0l6MHd0QnZQQlB5cjhaN0R4cm9TezUtXnJ4RUFab0BoeFg+ZEI4PndD
aH1zaWR8YkhJNXczbmlSLV87CnpkaFFqWEFCPj95MDxVPVJLXzBSTDVSKDkhPFk7S0VvMWJoS0o7
fiptQ3Z6eCNRNV9lJmExNCVtez9YKFg0MTVDMgp6dEFzYCRnakJVVXFMNT9Ka1ltOEFIS3okb2tF
IXVOWj85RUtIemJPdnRzWWpSZVU4bzAmcHFOTCQ5c1BVJlFnPWwKem17Iz82d0ZieyEzWioySl9K
Sj8qcWxBPn07KEt9SkNobm91TU5Nbi1sUUE7IUAtfWNzMElRRyFVZCoxZkR1eXhICnpvUy0oNCho
TFN4aUE+dk9KaXxwVTBqRkZANHs3fExYZXBtKipMeTlOcD9yODhUMVApNkw5fnEkP0JfbDwrLU9r
Ugp6ZSl+KzlMR0pUdForZlgpdldaVSojUVM9V3A9PnV6dSR7M3dAJTNFans1ajJ8UjB4OUE0WlNk
NUtQN1pkPzxHI0MKejRIMip3MlJYPEFUbXlfcHdCfk5MKFV8JnxDdTtMQ1dMRmwlOW1jS2o7NXY7
Qj85UT9hdDhsak9nQzsjRmxTQGFQCnpoSSsleVV4d3ttOWJWbHE0UTRjZE9aVFpVWmRtJUBpd2JX
KSVkSjV9KWZEbVQwe2NZfW0lLXZQJGRFR3wtYHBUWAp6N0xlYnNmaWIhZG05WntlJEpHQkl1fmFe
UWw4ND0/eGxua3B2cnM5JGNqYGpue2Y4SWQzTmNrYE94M2FTZGstO14Kel9aSkhXTUokbzJmSX5x
PiZncSp+VkJ4VHA2fFk8NUlCbnxzdDBxfilpdk40JmU4bWZlOzRaI2NvJkltSUliU20hCnpeWFh9
bGh9TEA2WGB9V0ArX0A9SnglbXZ4YDJqRk9kcz83Mz15RXl3aH1gNnwhKWxDNy1KQWR1a0hZNTVw
Vz1Qagp6MFEyNVFgcWxVJHhIRU9vTis4STc3T2k1SEY3ZHhmTyVWTV9VPSlYK0Z7bzBeLWx7U1NU
Vj5yVUUqJC14UnNeYHMKemVBOyFncENWfldKO3c9Yik8QSZKcHklZU9oc2RSWV9zTXBKZnN9aEBV
OVpWUilVeDF5R2FnOTImYjNWNV53ZUZNCnpuWXduOUpMbkBeO2NJQChoZHF8Xzw/VnY+YGhUd2Re
bTktQTF1MlR6NTEwITtFYU0+Y3M1blo2SEVHajQ+Sn53Swp6Kmgla1UjTnk8MEE9VkFSQXl0RjJi
fCRMYiV5cll8ZURIY1g7MmBLLV4hQEFjPlVeaTcxUWBOJDQ+ZEk5Szxib3IKenVOUU9PZz5SZjRU
RWY3Vm12PzZFWE01UkB7dn1+eTF7Ml5LTzdqUzBFK1o0Tk1+bXozNFNYb2NaQDQjYmozUTxyCnor
TUJ6SUN+MH0+R0VBYj1xMHBRPTluKkswIUJ9VEdHOHRkTD1XUyVpRylea1NOYTZKVEZsfVchXjE7
WiVHVU1USwp6TkErT25fZXZMZEpVVklvV09HKSRGZXV2SitGNG0lSjhoeW5GTHNAPWIyQmlmd09e
IWYpKXpUazIrPiZtMnNZM2EKekpZJCtyNTxtO1IlKm5eKDZ8QEsmRX5nZllraGM8QClzPSQhOUtP
PH1WVnplJSojIzZaTkcrfCRDbWV3anNWKkU1CnorVnFJXj87aHB8KS1vel8+OHwjPD96OzIkSS1p
WGtiRnp6MTdgVU40am5YWjBmJXxENnpNRks0S1A5Y21qaGcmZAp6X1JjQ3c0ZEA0ZWpeMmVHUSFZ
UV8tZFgtXjs2MWolK3hNT3V6MW8kbWJ2cHtWd0JCXmZBRVVNUFhIcFBrMXJeQnQKekl4R3M3KjYk
bmYzZUxUSnpHUF9NQHlBZE0lblFnOXQtYWtkazw+PCFMWXRpNW52Jk9nci19PkRiPmpNM2pSY3pJ
Cno2RyVUYFF8al54cVdYK0V2UlQ5VEZWZXVhNlJEY3xIWCpUN1pQK08heTBlWT48MjRfb094VGls
JiFgVnUoUms4WAp6diZgPCpRb0R0bmlgYFg9eS1pIUA+MENObHlxNjBaanNsRWdaZ21OP2RqQTd3
aXNnPGt4TU18cnA+d2I/JXpnR1AKensoZzx7cDBXVTl0RGsyWDl+ZyZtWkxOYD9nbG5Kcm5TVlZp
Y25UeFdFYVR+RUJTQWhYY0BDISo7Iz5kTEg+YXdACnpjYl9ANFQhPkcmcEp8Kyo9P3AqPHlFNSg3
ITFVa2V7PCNMQDh7VEk3WjtUaFoxZ2JNdjNOYTQ5KnNRITl6SSY+Jgp6ZE0jJUQjRC1nZ3c5JF95
JEo3XlhLXjw5ZVpse0orcHJMa3RGJmZlcSNCWF5LPVNqYHF3YnBzfmQ3Yip1Yl51diEKeldeLUhw
VHNpSVhheUxKWWIxMFhGWmlhPCFZQ3c5LSlMbGNSKyYoWk94K3RgOD1ARitUZVdwY2VKUGhrO0wz
ZDRBCnohMiRJP15CdyhlTDZKZXRUdU9rQHZAaUppeXlII2M3e1llREJtfXArMkQ+QGpeckRwaEl9
anYhbGo/QyllMCFsJQp6d1g/fTJmJUN3KClUYj1pX2ZXXnZxWHM4Qml2UXtUe0xrUiR1MV9pNFd8
K1VGYGBTKyZqfj1+K2RCOWZkP3JOOHoKelUjQGlRRCZOSSlwemt0SClpa1dZbzNxWT1Qa2kwM1FF
KTt5XiV1YW5NPnMxSyZQTCg2cVAmJm55O1dvM0g4VXxhCnpxY0p0cHM+SXUzcWFDWV8pXzxFYGB1
d1BZbUB1ail3ISt1MSFHQFYpSSpsdTxJJG5LVT42Z3g+WEUpRzBoMHlZRgp6ZF5iUkowTH53fHZD
dFNlX3VHM1lQO2lILSM/alRgTz9oe2cwaHJNbmgwMHc3K0lRVVN2ZDsoWmthUipyb3A5fXUKenpy
em16P0tkfj18R0hXNTV9eH5mQlltR2JlY3w+LTx5PzYxd1grdUx2IzBtR2R5YHlhc1ElTCFSK3Mo
OyFKNmdDCnpKTn47QGAwRH08T3xHRjB6eV9IKzNgVj1+MGJCQ3h8TmEtWE1PWEs/RGQ9JWtBTVho
bGRwISk8UHhafmdyNmBuVAp6MWQ2UnM9OFJrISsrUzdaP2E3a0VsVXhrSmgraDBQSyt7NHB3dnsk
dG8jdW8jYyU+Knwjcz01SGdJKmIzKCgkXjgKemhHd3JkQzckaEI9YzV7MkxOQl9ueypxZ0RzOHxf
OG5pMUItUzt3REtXO1MrUmxEaDRsQGllSzgzbUslaU1CZmhfCnpYS3MkQklObT1SZSR7MHxjIU9n
fFUlOzh5QiUycG1fbHEza1V3MnlpWX1pLXRfJVFLSWxKfX1SdmE1eCtJdipkNwp6WG1aPUNWYWBU
Y2BSQk0rU1peQ19YcGNCYClYfmhtIX1MZ21kP2F1RCVjfSh6VllQVyVIUDB8e09gZlorYjw+OUYK
emxLbTlkSUMpcllrZmV+flNAcHx8cmorYXlVMXNWcih1Yj5jOyNLTVczd0FXJWc2NU1DcUBQQHxW
RT9NV3prWGJ4CnpjPU40WU1oR3JQS2tFVjhjP0JeK3hwYXFMeEhmK3d2P3dffHZtV3Q5R3MhVThC
KHV5U1BJJGt9SSs7QypqQ0JqPwp6QX5ZN3N5SV9sRUctJkhCR290PEVJSnAyemg/MnwySExoKjdW
cD0qSSstRTVlRzkpSSNSLUxIWVI0eH0pYCpRJmkKekkjaGQpPSgoI29PPTchNHAxI2xSIWlPe2k+
cTM8JSF1QiV5cH5OelpiI2FJbUBJZWJZXyhpfVYqQFB3bCRTNHw7CnpiXjc2UXZCaFZEdSghJnVK
Nzd2OzZjZUQ0Nyk4Kzs8KDlOdDkwUDBCTUIxUVJkb3hHNXV2LWc4KntUSy07PiYydAp6XiE9V2Yq
I3JBTWhnZWRFTT9fPG9wNkhtYTFzX301JkxEbUx1KH53N3FpNG1MTzgrNVJhRF9lWllHJnQ9ZTU7
bWIKent8PElXckU5LVRYfCs/aV54Z1F7UmR8MHBBRXpFTytvR3RQbFpYOHR2cyp8JCFWUkl2YjVw
IS1QVjlKNHtyZSZSCnpGNHt9V1JTZzQhQ31aaVkwUDw7VktWPk84bDlUMXQtKDJ2VG9yUjcoYnp4
c14hST01bClUPXt2NWsrYE1MK3k/RQp6LW0wMzErNn5ubkRqflBSJiZGOzhmT0Q1QjY1VEopcEVs
c15xUEg0XihlRzNmVW9hVUEzNl8zISFAPD9RY2x1XzYKenNmIzcjKSRGJC10Vk1CaG5yeCpGMzA9
USgqfC1EczN6YW1qb2BaJXtIaHJ9bD1ZNSNoS0pCYVJ2UTZiKz9DNlo/CnphPEAqdzxuMXNmTChq
e0IzNGNqdVU/OXpiOGY3fW4hPGdzTmMlTGtgKz9jQWdqITJ2O0NEMiokZVpYYF5RJVQ4Xwp6aX11
LUJnKCpOPURfTDVMUUpfP1R2YUNZRnozd0JwUn1DcWRYQCgzfWM3IStKXz5seGB3ZHd3bGlwS2d8
RFomVWAKejBuI09MQXkyTkx1VjZGJm8+fW11VWA2RFRmd3FCPWxNQTs+bUphamsjZHd4Pl4yQ1B+
JjJ2JCVkSzs5fEVTKXhyCno0dH0hO053ZW13ODN3azZ4Jm4jb1hKP2F6QTdGITtUflpfSiR4QDwm
NClUJDVjPV9FWmtEP0JHYSQ4LTtXdG5TSQp6RXkwUE96bnwwfnNBREJDMiVGVXI3eCM8PSMhSUsx
MmtPTERITiNZfER0NXw7e0MlLVg7bFdsNCFfcSVvenJ3bHwKelMpJGw7KTMqTlYzVSRXP2l6MnFZ
LUZuVW5wUnJuPU9WVWZyTSo7bW94flp6Jj8zYm8zXmZFX1laRGs/P21PY1V1CnplRG90MHtYSSUq
Y0lIP2JecGYybChDQFhtR3MtYkpwMTNlT0gtM3A0ST9jVStuVFg5YXlqRmFSMTwoUHxMNShJewp6
MlI3cHZRWSlVNmpJNTwkPGJfXnpsT1Uoc2V7TC0tbytHWjhqOUFFaGA8VWVpN2pmSTxmcnJFVD14
bWV5byVoNWgKem1vajtEYXN5NlhaTWI9WittVWhxO2soZiNPcH1FSiN4TG13Nz5mb3EpJm5PcEVT
NW9HcWpHRkJ2WHZnLTlPcV5GCno5QU8wPEMyWmxCe3VefF5wZVZhazx4ZHVZSTJjMzswUGBMYDB9
MEJKOEZFbU0qKEMjeyNyZntgTjRYfUliY35QQQp6aS1PcjtOVnxLZiUpU1QpNEwzVk9rb0xNc3N9
U3B9Oy1Fcmg0cF9QbkJHSyhJcCtiOXUhfUp2dihxWVUmaUUjVWsKemFRbHlhc2JNflo1aEJsNjt3
NFB7OXc7eHsraCgrNHdxOFcpUCs9bnlJTX52PDd4KXg0JVg8IW9eXnVPJjZ0WWJzCnpiMCYjPHJ8
cUU/YStIVT1qQnNMM2ReI2JLeXl7TVFWb0YlNFd5Qj9uMyZrTlpMbV4oMVlGZyZrdCNDP2dZY2Y1
awp6Qmc5X2M8akhhP08rTHQ5PXBgPzs0TjJ5ajliX0x8PnhjfThuQkhQTjc4PUYhSWZtemp5fio7
JUdGQWBRUEVkZ0YKekR5JURXa0o2QUgwOGBXczRJKm9iRFZ2aV5TXjYxT2Q3fDlANjI+anJCZ1Uo
O3BWZ1VXNmdoTnJFT34jJEJjLVhsCnp5XnF4YDVKNmlhaCljJH10ZjIyQGV5VExle2tCYEl1PGFs
Jkdjb0QpZXdvKiVTdXNidHNJRX5XQUBUdTtKMHhDdQp6byVVKlhudSUwLWs3K2lWcGRrUVdRVWst
TyN1dmt7eDJMfGY8K1ZDRCpHUzlre1NfNl9ZSHJAOTQ0JFpSWFBISVYKej18d1VETmM8bXIlN1pZ
bldSMnM2ZFIjQXFkODkmYT8zNSZnJXVubUVHcngpcUMmKHstOFdlYWRIaD4wbk96UzlUCnolJX4j
VVNmQ1o3NjlrNT53NDBQdVQ4V2NgMil+Kyt2TDImWHZRfHdRWnE2PWNvcnxqVWMyOSRfJFphXnkx
S20jMgp6NFZLUD1raGVhdCl3MT18Kl83PFQ2QkZpZDB1RzE+NWlAR1lyVUwqUilIQHV5TF4kdGoh
dlI8RTA0TX5HbzBINC0KekNhQSUtdC1qYDM3MTk5WlYyeC1BTD9iXlopKT10WVUjS3phUUoyfUk7
dGZgZlgpMTtXJWEtUFRpenUxa0hnPnozCnpSUFomI3J1TSQ5c3tKZFQ5Y1M3ZV87eDhMM0NENmxk
SUxXVkstWnIwXlcyWlR3PigyR1Y8bDxvNk9icURtZ0dfXgp6O1JkWU5raUJJKmtZcWgwZUJ+YnlP
c1UxKEokN3JqKCFOdGUyfm9NRj9wTzFRKzlxKns8bHhucCkyV3ZkPzE+U3cKeiQxRnJJdWI7bipZ
SzA5X2B4SzxMR2ghO3s/NSVYbERibFNVTml+JW1ZekJTUENqWTRQNENfQyo4Kmt8SldodHQxCnp6
b3dtYDk9dXhZI1UkfnxeQDNtdko+JlZtZ21raiswdjtwUjJ1fkttbkJkWm8tTmxwWjxjcFooLXk0
b1J7aiRIfQp6aG0kenlhUT5eYE54YUQ0aihzI3lZNVNiMTk0VGolWmJJNkVFP3piVjwtZ2whdTwp
fEJ1eGpmP2IzcXNSdXsrdmMKelJvYDx0MTJTdnUxYVdjZk5zMl5teFBldGwwflRQTlg+dSs3Qmo7
WHJLRik0bGgjaWNGa0A0JHRGVz8zflVJM1hMCnpyPkZTOWhZVUExcEp+a2FmRFFjbUR9SnBMJS1i
bChjKFV6fm1FUmc9clUwe097Y2dpT0MkN156e0F7K2g5YkVnUQp6cnF8JF80RkpGbUVtY3RhbSNO
a2BvWkomQEMqXyFFWE5AaCV1NnlRTWRUSClwbj83O316MT5JTWppKmpJcDRSSWsKeik8VHlXOU5O
bXhye3s9JCM+N1M9c2BCTXE3K0FBSVZjNmZVWTJ0UD1lamskVntvJHMkV1NVe3ZwS2NmZENpNkp2
CnpoKj9FZFFJNE9yTElTRWFsamVOYD0xQyZrRDhAd2s4UGNlRktePSRtU1p4P0xYKCs5SlZqQTMp
RFMrcyhXcnYyNgp6dGZqMD1HaENOdW9+a2deWVYwTzdVUCp7R211OXw+VzQ/fW9pe3h9WWsoKjlU
UW80Y3JgY19oQXF5VSVVPCY4WmMKej1VWUJ1ZDZtM1JvMGZXVUhReFNQVWZ6SG9aM2hmND5rUW0r
bHBEZiRydlh5WUIqbTN1Ozc7R2AmJX47UGdkWkZYCno4WUhnKyRPKGVxek1MVldMRFBnej5ATFBr
QCNHdHZlJUs7QyY0aj1wR2tNNTJGeGd2PCVvRUBJYUJDYGg4JVQqVgp6T0lON1Ipc1Q2b0w3MHh0
UmxtMjNgWW5oPGNGbn5rc1JJVj9WXypTPkYyWVd8S0RAPX4kbHZAclByTy0+OyF9RjsKekBoS2d0
UHhwQzFfeFkzPk1HPn5WdHs/fjkmZExfZkpIZWkoVXtYVVQ5eXg4ZUUrayRDMkc1YmNQVXNBdSVa
O1hXCnpNKD1jbmVLM3YqMEtTa3hrSXVsZ0xyPyM+R0l5bjYtYnp4aCg1aHdGSVkzM2E0O3lab2RT
MGJvWnteQXBJRTQ5Jgp6aV47RmglaTNeJV9tUz9PNG4+XmQrLWJCe1pLez16cX51MXMzUi1BN1p+
KDJuajVnQFdMPzAlRWJxbmJ1NThgOSkKek1hVHNQSG9jN0c0UUtWcW42dD96NkpEJDBiR2ExSE5Q
Tikxe2N9VF5Mbm1KeGxfUlZze3dQZVM2aE89NWxwIzg/CnpScm1iRVdANEN2KDlyOTdQKT9YbUdh
dXlRbVp7SDQ+NGJGKHFeeEpWanplSWJ3dFFWfSojUjA+ejhkYEFWS283dwp6N0sja3dDbj53Z3hL
ZyY9SSk+JUNOb2xVZXZZRH4pbj5Ue00+TEBNTFkqQ0xCZ0pOZXlNNF5iNUZURHlQR2g3dXUKelBM
bzYmaTxBYUw7Ync/NDQ8Njs4Rn16NEhzRzVkfmdoYWpPSEl3JlNVZChUT2srJXFHUktjVzBJPiR0
aSktZHRqCnpqSTFHbCtGITZtWkdAUkBSRnk3aUhabjFseXEoOUF5UiEyOTYoK3V1PFR5QjdlaTA7
ekcmZk0ydkw/O0VLfE04eQp6Zm4ybURTMDk9c1RgLWB9KXpRSHY/Nm1pfWFgS29fSilMMzNXU0Vf
Kno7MDArLXEoP0k+U2djaWpyISRsdGtsPloKeiptOUdPK0ByPkY+M34lUE59QChkeyRDY1lxbXhl
USMqezw5aGx3YVI8X3hFRk1sKmtxS0lzZ3poZnM5N2E/c3ROCnpTYnpASDtVPFJHX1VZX3klMHUy
M2duO0tze3AhIWFYUz5oUTFnUlNRRmRZbU4haEVYPDt4S3wtY2UrWndRYV8wZgp6a2NaTXV3Kysw
YVlYIWBRYXgtXzBYPX1HeEFjR1I5RndHU0dQbTtYc1lZflcwdCozajJBfWp7ZVl9QkFsS2Z+NUYK
empYNU96YDhySE1oWntfZmRkdUZnJXJ2KyVybE85ZFpVNXIhKkU/YzRxXkd5N3laaVkjJEdxWH0q
cjNqXkxvczsjCno5eWRodldYZmI+cUhJQ1JxfDxYRDwrVz9vNnZPZmYtRjYrfkUoKEQ8Z3s2fDcr
NW5efGI7JVFqJipnSCQmPWwpRgp6bGktaTZaaT5kWDA9OUxHXiZnX0olaGM7VDJDaGxtNUpkSytZ
dWF8WmBZRF4mUWBEezdMcGQ0IypsN2FKMDJkYTIKelBVM1VTRXErdkhjdkJ8aTJfYmhuXjlPaTZM
NUhid0cyWjApMV9tKFIzWDQ1a3ZMYGsqejs2I2JXRz1VeCE+JEFKCnpeSWUqWlN+KmteMmQ1d3BX
dHFKIUhDZCpadi09NjZzekVDYE5NJXMxNm1ZcHEhP0wkRl9ZcSFFTUR8WGpXYH1NYAp6emB4MGxG
OzNKUzF+fjY9OG5QNEtqMHV8UWsoUTFCU0pEKGM+dW8mQWxkZXFRbmQofiV4Tnh8JTNMdlFnclRg
S0AKek12M1k4dXVhX0gkPz9rUXtgO15JMD58REwoRWRHI2AmdERHZ2hYQCRNRWM3Mz5sSTJXJEpO
MWlRWWhTKGczdiNQCnpLTSVjZkBfbW9IYzU2cH4+I25jfTFHISshLWdnZjl4Z0A+RGM3JE8hbEo/
VllOfV5WMUl4PWJkVmJib3lxJUhZUgp6VGhiMk8oTWo4UDk5I01oaSMoMFpiYEV2QiRuTHFxQ1F3
OWQxOG5Hdlk8bjVEcEE/b1hITDBKMjRgdFktMTZ9QUcKenJjeGp0YlVvVio2UTFaTyheWkNnaVNP
YTUpU3l1VzFSUSg8NnlKaj5RO2hLaGhJeFg5ZmBHVlZCRlkza1pjVW91CnpqQmRkYmpRKHJlUyp1
aXlXdGhUclQ0TnFGMSUpWjNNKSNvKmshUUhRLTJgV3F7Y0JwQyMtTmxPeUl4V0pSNnUjSAp6RiNY
e1hjNztpKFlxTW1abzR6NUcqSW5gfGFxRlNJcSp4aUh2QHtaTlZXYlB3azVyRjNGNihARCgwJFNi
X1VgbzQKekYmQUd1O2tqUkNqalVzRDhHJSRJaDhkTnlCKlRvbD1NeXAkVCg/RHRSRj0zOXF4QDBA
O3NkViNDT2I/SjE+QUY1CnpXO0pQNno3ZXxTNGgyREF1N0dMLW4lRlNQTUtMcDNCOCQtTilPR04o
U1loRFRfbmFTbTw2dFV4IyY0PE5XRy03fAp6RyVEIS1kU1RmdUhKO2w1MzNSakJibzl7YDtTezBi
TWprK2JMQW40RFc+S1QqZjVAdV9KNHcwNl5pKUt7QWEkd24KejRGWlU7OFR9KlBeZ2FwciZ7cnJk
TWxGTUpvbkVCJChZI2x+cFFwVyY+dzREKj0pUTZAVnwzZj9zZXFJdHU2ZiU3Cno3M0tiZlV0fitU
VnlUNlJrTENGdkMtZVdJN0gmUmRHb3JFVzx3V096Nm1eO2ZIX1phVWJxNSVSeCpYZFBrPER7UAp6
XmIzdDhMXm1BYVY2amZ2QDBBM0I2UUt4fWp1T0k3MCUyRWwkKis5Zmx0TT5rMndvT35LVDBSWXFg
NGl7cD91dy0KenFYUEcqaXsoY0pfJiU3QGtuWHhmSz5FUWtaMCpBSiF7Kkl0cT1SYjhLXkA4e2hK
WUItUlZvRDJ3ZS17czlge2hiCnpvTHJNU1gmUkBZJFNpaVE8ZHs9Ym5EclhCQyV+I1NDfklJIXJ3
M2tNXlNudVYydkU0M0Q8JHM8PDYkKyZ3XjF0Mwp6XyY5KVRFPVc/PW9iN09jaCo+WnBNJnleVGQm
dV58RWB2fF54cEFGYiktdzdgWSVnR2AzYklke0JvQCZ6NigrP0IKelktPClLNHY4Q2IlLTlOKD03
KD0+R0BWYD1hOzJ4aFBobGN7dEZ9cnI7bVUpSmJVPVVfPHRoaTA9JG9Xd1dHaiUwCnp0UUBqcG1f
Y2pJZGFUVThvSE13N3hjIWUhV1dhIUlidEgzQmZ5dFNoPFNvI2hqPTMrI2J0bj5AWFozZ3xJe0t0
IQp6VlR+cCloRUM2M3VHXk0lXk9aY1dlfUpCUTJrdXIwV3pLPmNPeE52Zjd8cjl3KnVWZSpmUHco
fGFYTlBeR3olQ2YKendafTEqMUZLQTdBbStUNUpGVmFCMCl5fVJVXyR7JipFSzhAR0tMakRKdyNe
QUN2OCgxaEU1fVB4alhhQ3RgdH09CnpEJCsxKWRQUzIxWCpOemZFRGtlbG9IVUNMdUQxUWF1fUhw
M1d2TllqTEJkRUhyQTx3VitkJE9Ia0RMQEhUJUt+Zwp6cUJQfHhvUmsxait5SW4/ZzxmUDVsUXtU
TzBQRC1pcjFjRFc9JSgobE5ifCM4MXBXant0NnJjTDt2XzshRD00aSoKek5MfiluM0duMloxQ05F
NEZ+WUdGWmdRMntRSHdrO01vPUdtSi08V357T1FEWDQ1QkJ8d3JGek8xXkRReVojdlQzCnpZZmZw
VlBWc2sleHUrUGZ5fmVUKSo5VEclbnRWaGM0NyhUV2o/PUZAbzdnUiY8b3lqKj9iXz9sWXF5X258
Mz5jbQp6TCUqcG1Oc2ZnUzYkS3lfSSkodTNHZylCUT5LKzVOKXE3dSFOd2JmSlFaPylhRTtBUDhg
Zz43bmpCXkp2dnNhNEkKekpVUypUamtCZV8hWXxFKS1gdSZBVjxzM3J2cysmRmQ0Zyg/WDF1YFIk
byFAd15RV2smd0RxKjItK2NycWcwUXY7Cnp5fGM8ODlIJDBEJT5pfWl3TzJIVnU3ZU91Qj45TnBX
d19oQDBVa0d3X2s9TmZ0ITtsYypsOHNNQnxqbkojcVMwJQp6TWw9dWszIXNzb3AjYjRDKGZxVEVQ
WWI3fj8tRGxlQ19mK2VKYWZtbnI8WnNCMH5OaXFvdG1gT2k1ZnBEc0hBa3QKekN5bmhXWFl6JlNw
IUlRXjBnZGdHLUEkV0MpTHhNZEpaYW1qcTJ7R3d3fTt3cD1oJSlZJT04b3NMcjc7ajB1clYpCnps
dmRiY05WbnxALTNkKV81X1okNHptQ2h7diZ2VXZhaVoxdDlyeW14Pnk5TGt7dEt+NitMcE1fYCZo
V2JHaWUocwp6NkVAVU9uc3h7bEszMWNDXnBUS2NRQFl4PUwmMT0lJXxDSDBeSG87YT98KFVfYWcm
QSNPan5HUU0rfWFBdmBvQGQKem5sJWReIX16UzxrdFZgPSsjbEVTUXRxeGJxU1R6QnRePGtWUXNN
YkNALTVlVmhFIXtRYFMkTzJwPG5tQTExakt0CnpGb1gyUnpMWlBFKklWUSFYUFJGaGY2fC07WSVv
fGVONzVNTmBaTmdBR1ZRflU9RUJIcFghYklZbiFmenxgOUk4TAp6U3RHVW08Y1l3Zyp+S09gWHpB
UTh1cEVWSD5xbGJ1V2Jyd1JsQy19SllWe1ViM2FzfWVjSk4lOHVfb3xuakR8ZjQKej1kT0xRelR6
em5HJU5mV2BWb1M5e3dxTEcqWmNLPzZBcDl9YHVJbk9uMSs5XkViYk5oSSh9WlJnTSNRITZXUCR2
CnplP0txKTlSaEdMcXI1NGlYfFREJUl9TzRCQ313Q0I4LX5SWVFacEokNzZfcCM2YWJMUF40MWst
OTM8emxnK2khXwp6aX4oM3wjXjcob1p+TW8kSHI7PjVeMzZJcHt4cytGK1E0bUxrODB4c3phbU1+
dWV+MStVdm9SIXhpRmAjU1lhTT4KejM8O3JySSpTKiRUMmdpJjlBWkNZWlhtODxDM29qbEM/JVVJ
RV4pYnMjXlhZJnM5cnk+dCpHdGx1V0UxKTg0QTAzCno8WVorNyhgPX5PKWpKZnc/cGp1WSViaX0q
dXtaa1RwQztOUF9qdy04ZEhBK2h2PDc/TUh6NHpEPlo5Q3t5Tn11Owp6dWVoRFBBbyp+cS03b2o/
aHMpaWs2MGIkeGBoMWxlVShzX1lCNU8jVnZIY3o4RVdkc3Y+aENXbk43Xzt6KWp1KmwKekcxVH4x
PzJBb19naFpGPkNmXz52PWtaJG0rWHJwdXg2Sl5yTGRxPlgwKDJAblJ6TmE8QV9hYVJxbHxMcVRZ
MyFfCno7bEFffCNSPUlBaFBhSj9sVVl0UDlvVUVMTGRRQVRwSHFubXo3d2ltTHJHPkdwMFVycEU2
bkxjWDRpbzgjcCMobAp6ajktVShpMzwtU0JXTCE5XkcmJUJmdXwqLURaYThePU13PStoPD8jRzlW
Zz9zKjQ9UzshRjRnNit9entCKz1CemYKeklKKHJLRXtyYTBUYTBybTE+KFhPZFhhLVRFViE3Zilr
Yj0zP3VJZU0/OW1ZYkI8RSU7cWBTfXsrOUgpNCspXkZLCnopK2lnTzB2OFoxTm9hJC1YNT1CUkJM
Z3BFezJxMEp3WTtgbikzS2xoMUpCX3hLXlh1dEB2UzJmeGEkJUNBdnZgcwp6PUx6bHc1MH1pZWBY
bUckRUpgYylUcTFnJTVJND1VanRPamtIQ3BBfklIdWc2YUhyNiMhdXtGQEBCMiZ0OTRvfkYKejFJ
Xkhfck5kWEo0clhNakY1UkxmQFZ3NWFAe2V8dlFEUypzd0BlZU8zWHEqcG95ZiM/TThoTyRUfWB6
SyMkZU9ZCnohYWl6ZlctVnNqPUEtRjluUD4zfUFQVD01NGs3dzlxPFdrQ0h5fkx8cER+Xkg5aUlV
cDxjX3pEOVpZZl8weDslRAp6TVFOM0ttJFMqQGElelNnIzg/ZWhEYXN0YjN0dlkwPSstaEw5RVlV
QXchMGQ7bzFTcUxSZEw3TSZPNnhLZDAhZVIKeng3JjRrXzY9cjdUfWR0Sz1sUHQ7dk9TSTJBY2A3
QDQkdjhhUSErWnFDK2Y+ZW9hYzNaRn5ROH5NbFg/dD84dyt4CnomUWdYUUVefisqVkVBPnl4YyU7
NWZDfWUybi1QPztVJkQ9RmhKMUhqMXctWW9sc1otQkRaPzRmZilPPlVqKkZ5Xgp6TmZNZFo+MlJK
bmpEQjRXTWI2IzZpRDxTIyhpb2h4VSo7NVU7ZWBPeHlVdkdeN0JmUSNjO28pOEFqTFQhdEU0RjMK
ekNgRWZsUHBgbnZvVTRzSSlXNWUpITM9Ml9SI01xbFhJOHdzeUhXQD0kQmxrK0M0KUBobHdlSk97
IXYoKnhrPUpDCnoyTTRsZjA5fTt0I1kjWlJmeXY9bXBQQW54KD5pZWZzYTlNYSprLSZWSWkxdTk/
XmB+WSpsO1N+bUY7X0VRMiYmbAp6JEY+aGopNntgN2NXeXpqWEV3TzNhaSVnYiEzVD94eWZsclFV
MTkjMU99SEpWaUMtPH1VVD1qbEV+KmQkR08wdVQKekd9NUgwUXFYOD9acWl6SFhySnAtPUB8cHU0
TUZ0RUI9PEJEenhqNyttKDEmfl85UClte25EZmpGMC03aUo+YWopCnpjeUxabyMtK3h8bEhfNzRP
TjRjc3pkKTR2bVhmfF9WPFNfPTBabmF+ej4mZz07IzRNaHdOZ1kxOVdUJEZRQnI1ewp6QXkoSCk4
LTBfWiYwWTk0PEFkZFBrdCpqKz55eGNfVDwwJmlAZXdBYjRte082WX1kS21fLUhgTW59PnwldV8m
YC0KejBlVV57PXg0cVJxOUJXfiM7IVp6dG9Xcz9pPW99c3hWfkFNTGR2NWwkJG4mPlZIXiheIz1t
JjFQQTk0O0NRSHE9CnpMYjYwRWFsbFJEP2M5O0ckM0h3Szg+flF6NFVqX3tmUWV5P3VAYXFHYjhA
XzQ8diF5MmBLYzg+IWR2ZFNXSVhwUAp6VkN0c3NKR2hNRjs4aVYrRStqMVkoeztzWjkhbSszKn17
X3EtU1B1MEleUj5fcVFEOTJmWHU8dTRrbURqITwxX2sKej9VRnFkPHtBeDNUfkhHWk8hVGFmRVkq
b1IpKEomXndoYW44PmtKK2RYWUhCKzE+c2c1QDdDdjR6OEUxe1VyQFBmCnp3QVhTbHlXRT0pPzYr
Z2ctWShjdWZ6JHNQVlUqRkhWZEg7UFYkcSpRVHFzZVJ0KCZFP3cjT2RXRW9yZndrQG9eZQp6TWRo
eG9yRyUqS2BgNjRXJVlOMEM1ZWpubHlPRDBQVEBuPEFMdjZoamY/MWcoRH4rVFNNNDRaUEJ9VXl8
Z2IzP1cKem4tSWlHPSpBRT5hRHB3JHYzSTduQlFae3VtfDdKJUBHOV9rTFhIKl81WHp+VCteKHRo
djM4XyV0OWN0Rng5cyN9CnoxKGdEZTtLZVhEbVVoZGh1QW5rajB4ZndtKlNuamBBZTxMUGApQXIp
ZCZHemF6cDAjP0NqSjZuOUs7V0t4Y2dBbgp6aHNwTUE9aUBWdDBebVJ6U2dPfVJPO149ZVdIYiMy
Xk58cCs7Sy1zYHA1WmMoX3lLJXR3alohXyFkK203IUF3KEcKenpOa0o8NTJKUlRsTlkmJFgjI2hg
eENReSN0JXV+Y1BKamExR31zSXBYQTJHTVlAaXF8cDZ1MmY7dmA3MzVCYyMyCnpTKE9ZTCh8SV9I
UEZpdTlgdVU8YW5PN0ctYXlodmJrIX5OSWojb2Y7K3JaWXVBSGJNdClaRHYhcFlId3ZGPWVmWAp6
c0F7QXorWU9TKVpLJkNXNUsjKiF8SlQkRzNaPy1zI3xIbDEjOUItO0xDa0d6NTBlYm04NSZpdDNP
NUpqa04hU0AKelhMWH45ZSE9O3owTEhSZGhtSTZOY0thZ241aypzdjc0bG9HPnsjT0pma2hUUzRv
TCk7KiFYXlpxVjBFfmZ3XyYyCno2cSVzM05AK2Y5K05RJERUdExFSENEKGpCP3BCMGd4Vnc1YSpS
cWFMRV5nR1VUYUE+dGB7P0BIdH1HMnxkQS09Twp6WGJJTFFRJCRnIU5SJiE7PCpPbkVWZU1FOHZ2
JlZQQFpWbXR5eyl9UUhzTkt5Ulo2b2ZjP1lQT3J2ezMxNnAjNEgKenJFYzBlaWJzKGUtUyRhSFlT
MG5weF98JCprXkYmclR+JlQ9PVNSd0dsTEw4fnI0ZkpYbzBqfUNxIUFyI018bjJHCnpART4hJSlF
KlV2QTMoIWBnQnBeajA5eURYMU1NK0ApSChBZk87dExBQ2wxN0ExOSZwcnpIUih6VSR3amVle1V6
Iwp6YlpIT1FJRCN6M1lJUzY8VCF8QWs3QnpCR1pzNCF1OyZPb3NpJjRQTEpZdTZVRUtCUD50O1Z8
WlB0eWJYaF5hck8KemwoI25wRWt0WTVFaGRvY1Q9ODViISVJcm94emc8RWB7eGw/SG9uJjVVXj13
dCNee1FYam9IQz42U01AeypZX0M8CnpLO0Z4QC0rTy1oOEJOTDtFPyojY0BYT1cjYmk9Nlp5UUto
LUVjLWNfTmBEOT9LTilIQSZYd28+XiE3VnU1ViR6Pwp6Oz40QnpIalhjdFRvNTdeJkFhaEl3KilT
d0UpQHVtXyk9SFJSKVo4ZGZTT3VmWUNCLURKYXp1MCNoeWR8RW9jPUgKemxWa0E+YStIX1FzRCpE
aEJmfm02NkhjKVMtfjlaQjVwOWB8LXo+TXpsYWMxVTdoYiE+SkVMM0VhUy0hd0AwSktZCnpgbSs8
fVQpOW1JQU08Xkw4Yj5FPW5neHF1RWl3UlYwdzNkKHpxekVfJDQzQW1MQWMrKXQjQmVzN1d0cTh3
YjFjOAp6WT1aIVFLTVM4RE9yMyk7UEpHWnAzO0t7Wj50X1ZtOUQzQG9YNXBuLSF1ZnB2Y1YybDBs
ZVhXIzVuampvcEhweDgKemt3e2JrZ2FFWGxQUEk0ZSY3d2U9VjZpRzk9bjg2JFI/c05saWxCKTAw
Pz8hdWl9KzAqWSQqSVk7MFF3cVJoNlhrCnpfOXg+KmRvI301V05oN05mMCVFLWg+VHlQTUs7QWtf
RjdifTQ2bkF8ITdSaWJkRmg9aCp0dGohOVMrX30+c29DMAp6NE8qfWJ2cSVUSTBsNUE3eFFrP21I
fkJedWVqOSR9PEdleHhqRD1+UUc2LW9nUyhpaDhHOHx2Jnc5T1JQN0BzOSUKem1sIUc+TXoyKSYr
XiZBb3clYmUmUFBUem9EbHBMeHc0PktwISE9VUBwZWVpTCh1JEhSSjN1bzVGZiZGQGIzOEVKCnox
Q0JOQ298V3BlT1RUWnR2OyZ4PHY1TDdScE5vTk96b1ktbCRGRlgmSGY3b1ReSlI7ZjNQN3M+K0ZN
fEg2PStaMQp6SkdUKjkhYmFeV01LUmZSLX5VOCNVVnFKfmk7YGxyaEhQfTdqJXJiMWxFfTdlUk07
Rm8rcThKa3NlRlBgOXt4NDQKekBSRkt6aGl+fGFaV0ZmXnpuUTsmZSoyell1Yi1+WFRLQzEke19y
UGtXLWxCeiFFN3VyZXRMNUFOKHZeQlUxJn42Cnp0KDhsSDxJNGhKTmw4TyQkdGNGR0lROTBjMnJV
UUc7K3ZtQk1rVmx4WXczRl5eZkZzQT5hP0tuI29SaXY8Tjc+Nwp6V1EoQnVmYHBWYXV3SjFxTkEr
VVkmN3dkaiFTfnlrUkd9YWhBbWpqcWomOXBWSExAQkF6bnB5dCQ9ZCM+KlpyQGkKeiNabXlCNiMp
T3VpY35HO0Q3fSlNJlU3UFpIaylQRCRgPiF2TGROK0peQ3NUMjRxeH5Ocl8kbW8kb0w+KCtBMGB4
Cnp4aEtGK1NMcjU8Y0FiVEs0bCRTTnMtQnRRd2wqekFlNmJAaUdaLTZKVTBqdUMwWF48IT9wY0lX
cWt7SVVhVE99dQp6IUJYNmRuK0dnKUhEbUtOI2wxRH1Tdjd4TUpAQTFnd35+UkZsJHV2RnB0WSp6
emVBdVU5a2lsQHJtbCtWRzRqYDkKeiY/WDs1OzRrWXlAYiUxenxMe3MmV3pDTnNJaVcqdCs7TClS
cHZFcCZ7P31oMUJMKHhIb1NaeW4oO05GITxYPTleCno+an0kV2lVVFljMjB6P2RRTVRacFJlSzlC
P3A+bkIrP0Fqcm9seXh3Qk1UV3hlKz5Xe2JzJTlET3AtVjkkKFM2cgp6TUZpNU4pYEgwYntRNCk8
dVVZc3JecTs8RW8kOUBTamw2MUlIYzJ7MUMhNy15JmdCek0oRnE4JnImSjU/QVY/JEcKel8paF9U
REY1X0QtPm9ld1l5eTNjbEdsYDJUbzdtPDtVJmxIK3QhNHprX0JIfDI0MTx1KG95KClARVd9S048
cCh7CnpjRXB4NHlTISVYcihzTjl7KzxfVTwqI0Q+dVRjcUdUVG1KRW43XkZZZzlqdCRJY0p1ckF+
c3p0VHE4OGtuPyhpQQp6YHYyQ0FOPipkcjUxQyN+aHhwe1o9MEw9bWFPQjNVVkUzYiVeS21FT0t0
QzxoSXV4fnZqUTd1bm9NQn1CMG5fQyoKej91WklzRFp1VF5ONW83KE8yZEREaGQ8Nns5XiZobHB0
cz5fVlpKWHRMcjlKbDMyPVlCSkApMFEoX31xPGt6OHNkCnpAVWNDfUIqJGc0V3x1WSNtekhVOSY4
bnJGeXBkZ1NYZjdGVDRXUkFVYmlyXyEhPHJoPlZVWDAoTWE9QyZgWFNiSQp6dzBHbzFVdCQrTGRt
KyVlaXdrI2d3ZGk2N1dgU0pjY253QDJ4VlVoQ20oUWspekg4OV9ANE5sMihUbStLYEsrbiYKenYr
anhgYzZsJTl2U01UWTZYYTBqT1Q3NSg5Q0FxN0I/WHNgSSl9bDAkLSlrSColYGsqUjQ9MWZsJHF6
RDFVZFhnCnpRfn55WjA2UXNQKmRvVSlwcmg5TDYtRWVYZEBfbipWdyU5bTZXRSoySnFGUF8wLV87
ZSVyR25YaUgkMFo5WHJCSQp6aT5QfFEwM1d8WHVVaExtZkpuSSo2ZGtwSVVUN3lVbz43QyZiUWNS
OTdAdGhzZ2RFRyVTT2lqN3c1PmZZN2p4RD4KeiFqPSFGMig3YnAwS1d+akdaSkg9RW5UQzwxaX5O
enp9ekZGcUxoM1E2RDVjektIcDlGUC1fZCRIfHZJZmVafD4mCnpOdz10d2FwUSpYMCsqe09IVmlK
fDZBY1JZbVNsaWIqX0EpaUt0fnJ5ajA0dXA4YnxPIWt7byFvcWhOSHVnUztXcgp6S2lfRDxxbk1W
NUYoLXVRKl5nMDYqKGU3WHY9eU0xPUh1ZUFPUkM5NHBGKjUoeyNqTkFZTjZuTm9keUpybzxFRX4K
ens1IzU1cHopUE08LW15cmFYNl9PX3BCYmJuWSgxdXBNVjJeTnleOVUrPDJhaWcoIzdATG82ciM9
Zno3ekB7NWE/CnorPXtjbD09fTZ6TGdifXsmV2o2PHBrWCRlYVJra2twfkQ1fSUmN2lnODlGQmp6
M0ZJd0kybnh+JkJ9Ynp7YU0wawp6elRydGVIZ2dtbSZGJldqcH1xZE81VldLfUJkVDgjRz8wNkFB
WHcxdl8wUjEqUWRmSEZyRkN9fkNka28mPlhVczYKemJpXiFaJmFYOFFZeUA8c3Zgbj1WOFB6d3M2
JWE0QD9WYTcxWnojOz0ycVA4ZG8mZnZqRUZwKCZKRVAkI1clWC1TCnptXkVaazhHfj8jakVXT3RT
fTNTSTNEISZQI1NfUmpBI0NsUipEV1czUSo/fkU3SG83Y2JVMk5edUgxdnQwWlNBQgp6QVR1R3l2
UTcpSTxPfHJoYXR4NlM1T2pvR29pbFI+R2AkRldDMDM4WXV8WXlVSUs7cT1NdU5aRHB2dmwrQEgp
VWsKejJlakI9M0oyRmU8fXtEalVReklFKj8kcjtPVl4pbnBhV3kmZ0p7KEUrZmV9a2lZbXVrUldH
VlB3Q0YkfnhOe0FECnpPTVBxM1A3d0lsbXxDPjFJUnhWYmZMRlZLKE1eeUs4Snw9QHlhSHNUU1V8
b2lYdSZORXdGR21nRU9tKk5kRzthaAp6cH1vQ0NuMSljZVJXblFPTlRERWcjdiZOeVFWMDJGcDxL
dnVWPF5YUnk4VjczJmdKIzdNRylSejRGczErQzBxQkcKektpdShuSEw0Nyp7Q1glfHtsYEVzODcm
O0A3dXQ/aFItdG9qJj5OJXJxaHg0LWU1fkBgP1Y1WSZjbU53czl+U2BGCnpIMiEkUSgoJnxFYmk1
aj9vRiZ9VygrekwpM0YtOXlqbn5KYmJeWkgoZWJUdVU5bU9CZCZBWXs4cWp7PmF7WSVrZAp6Pldj
eip0azFpPDFDRSQld3FHKVUzRk09e3dtRi0oRkVRbCY4ZyZ7KWM7bTlIWGhEaUxxOWQ9OXFBc2U5
Qn1TK3sKeiR2VlE8RzRSMkF1d2FAUk9TZHA+I3R4QjxCeSRuWm1rPyV6emh2ZCg9ZjdKJlZpUWJV
WjJEQEFIcHd2d2ZWY2UpCno9dXpHO2hRcl9qO0ZuYFR6YDt8X0x+QFZrMT87YSYySmZxfClFeENL
Z3h9PzNuZ2olSWZ0IzFrdyZTMEIkenZkeQp6Z0JnTkIlUzw7RWZaMU48fE0/TXFPUGxUYzB7Xz4k
JWskPjk/ckV7amspaUg3MiRtUzI+e1h+UF5gZ0hsPXhpMUoKektgY0h7Sy1jP19fd0crT2B4P31+
bVc/JFJZV0l2WlFHZz5wSHUmUk8pTnZXKU52fldBMmwoPEtkO1YoPVdJdm8xCnp3TT9oIVUlYkot
N2I4KWo7dW9ROFVjVllqaiVMVy03XyVRUypyPzxjczlIQWh6dFIydSFSZiEzOXYkQ2AlaUhMKQp6
UFlNXyV6RjlQenpEUVNQOSVuel5nMTVOYUZPYWBJVHIrOyQyeiVjNG9xWEI1IygkcVFaNjEjJVc3
Rjd9antFUEIKekxHTEVwX2cle3shRX5fSDMwJU5PJExQQFVJJmAjYnRZejh3WiNUdj1xZHg1YV9z
UVg3VzBmREQ5Qz5+Ylc8VFowCnpgITlkJj1nUnVJPlprRSlZQkMmPkJPb1hRTGtuaEVDT1k4TWlq
dyZHWEE1PztGTHolNXA5c0BZKn1BSS1fNGB0Tgp6U3p8dUlUISp8JjExKVMyUHJnUUBweXJoNWxC
eFJ1WS03anlsfXM7ZDBhaEdLIzF1R1N1Qm91VWVWYDg0Vmk3czwKentgVDtRTHFeNGFgXzFleVVL
TXMjXioyRkRIbTAyfmNxe3UxcyhedWZ5dGYrTStsNmw0anM5TU9VbT5nfCZ7NEQjCnpwTzJjXzhZ
fjQ8dnslczE3S3djUGQ5QVIkJnUre01mQSpjTj5DZnZvMXA4bHwjbmo3MzxTTl8jbCoyZHJNd1h9
LQp6RVN8OzQxJCk9WEpJKTt6czlSQmV3a3oxYmBYdUU7MzctSFhIa2lNQlp8NjlxbCVDaEFAbSZK
cUcrP3dlfExuZU8KenNoOVRnbEtlbVVicnB4bV8rPGkoMk8wN3daK2wkeWhSKXQqT29uVjFxZit4
UkAlSzxIZVVrbHRjOz5MfD16Y1FzCnomO1c4aEEhb0lCe2UkZ31ALSVsPGc7I20+JCV+RiNfdSlA
YGRWQVYjeXc+KnAhRHMobS0jZFFGMj5aKGsjRzN1Kgp6IykpQFBAXj1TKzl7PWVfbSNHZSZaaTVi
IXtXJCZucEpAOFdERHUxV1hVRTJ1enBKIUdVdFpmRXUwYHw2PTswZ3YKejh6KmlCdERpPWFMKVAj
XlQ2ODFAYEN4UyVgMDN7SWBWbGgwKFBlSFVTV2g0YTdWKEZ0SGJmdGBUfmVnZW5na20oCno1WUkp
ZW9qdSltKCt2WmwoUj97dlZIdW1ATnVzal9mR3s/VDBfViR3UCNNc1k2e1ZVITFwJEQwPXVXa3pk
P098agp6MmhzRTgwd25JKHhVOUhZRjZiPnx7bj95MiEpQkJsU1ZtO19qRkA4ZGdOS1ZeREZNeS1j
TiM3STteWWFVNWs7d0cKentKOVFaP0VWZWFaSncpSm4hX0pYYT8zbShYX0dzO1BtTVZHLTB3Sk1e
KFl8MGFSOH10YzJJSWgrdjV2MXthV357CnpCZ3RkIXgqSnRrJTs1ZWUkQClER0tRMV80dmFxUnh8
MFVtWmlndGB8O1U0P0hpcTZISz5IVXg2LXx1KCMmSFh4Owp6WCY2UyM2azJve3AkJXotPHtFUEFL
QkE8e2BFRUExWmdWU3k9MkRHUEJiN1NVbk0qfmZNc1gtPE4/SU0mYmZyNFoKelpAKyl4YCo/Z21t
LXB4T2RPa3kqKmN+LWZ7JnpSNEVtSHNyK0trSUxQeS1ZRjNmYipFX0RUUTRMbHElY3Fjd1ckCnpa
bFNpNVhUVEFqUGFkYWZqV0N5S15ZdTYwKU1QNDMkZVY/YiNkPnl1RF56Tl4tKk1VdnM8cUh+I2VE
TEs7M1pZNAp6NlI1O19xMGhTMTxySllfdzRefn42JHNSOCMqX2VHZ2wyWXZyQjw9ck53bzErSWtG
N1ZoMyZheCs5VEV2RnheKH0KemNHcytITDZOYlJSMyYjaVZoYDgyMXVReTw+fHhRWDBveCtgWUwt
b3JtUztpKCZpPmZVRVghV3dSS3FQVTw5PmVOCnpicEM1NSoxa1BoUGBGZzJDbiZUUXZYVG5QdVl6
cUpkRVN7eiEhTngkM0toR1Fudz5Mbj00ckM3SSVLaz44QjNQUgp6NXh5JWBhMH03JGJKQWg2QilS
V2xjVns8Uz4tPCFPNTY7a0BjU2hVcF9iajxNbCp8UEw2KC1gT3FhR2NWMzdWdHsKek5AP0pQPUUw
RF5EXnBvVGd0JEdXQzxzZSNBT09VfVhPSjJuVW42K3IxSmVpLUFeO3E4S1NzVDJzXkNFfDlHSFUj
CnpATDMmWENMZUgpWVAzQms8cz94JWdYP3xLKU47aXVnVXxzcnYqXn17UjA1ejN7eig5KTc5aHIh
cVhXYnpFPSY1IQp6bSR3Xmo0OVIkN29iMl8+Kit9MTZNbEp7cGVod0NwWlpsbWxxKlllZCQ7M1Qj
Xn53MjMzMlRna3ZoP3VhNmokX1cKeihjJWx+ZD1UeEYwfUMrK0NXYip8S212VCZZREpOZEZrfDE9
YnEhREMhNjFyQVBERVFvcnpoVjA5THVXanYxPFFWCno/YElsNzF3fEcrblVtV2sqTE5RKXJkXzFn
Xk5tKFNPX2k8TCtMeD88YGAxRUtOZmRidDM9LW0wLVJQZ092UDhMIwp6PDR4O1FSeVk8RW5QZEI+
Mz5SbEsmRUI8TWNDOVVkdj88R3RXdFI2ZncyJChAYFNUczhJSFQ4aEQ3YHNKU1cycDgKeiFgZFlV
SXFtbktAQmdjSUZGb15kYCROaFJQRmJPaSFwSjZNY149UmB6dT5yX1p+TkZ+I2BzKmRkJDNGP0lM
VVFfCnpET2hffHdnOHtvJUZLN0M5YCFsdzY0MERONUM9Xk5AUXhadnR1Z25MSzEyYn5UcU9uSSlZ
RF82ayohPGI7R0tkSwp6a2NacyhJNU1EUCl8O1RjUlZpO2RuPDdWIXdqZ1JiQ1RwRjxDQiUqZmZa
K3pQdVBTd3V2dzh0TFliSFFXREFwa2MKenA7Z1IwTEBgdFl7UXBSJj0+RjQpVHBXR21tQXpSQklJ
djNYZzFkTWFLeCR9eD4xV29RMkFEP3UyfWluWm1ZUjhuCnpQY09sSjJ+SkI3SjxMJTg9O2RsKERz
dlgpKjBQPGpUbl9mRm4kfm8/NTxIZ0E1bTdXNWRTaFdYLW1HYj9lZGl2NQp6KUVXa0xpQ3VgIS03
R3ZrMHNaTVp2QG4lUk42X1gxMjttOUdPcGJCKnBKS2M0byhXOUUzWTxVPkU9NUlsYGl9VEEKej5u
XkB2PmJXTkheUX5seShNUk5IO0J6JmUtWGAkWGdIOChSZSVlfC1TZip0WHMhRF4pMz9mXnhNdThw
NkcpXmF0CnotQlp0OWYpcTxxd1pvWHAqVHU1NHN0KnNvVUZHMVZ4VVJ+b1N4aD1zc1RLfG9RblMy
PSFtOUdzazRWPi0xX2pUPgp6ZUcpNlliOG1tQ18wZmEkaXM+a35MVGY/Kjc0bXU5YDxOYChmVXAk
SXVXLSpRUVdIcGVDYEQ+ZjY+YEZiUHRmPmYKeitlPWdoWGMoQDk+P04/eTROMlpmbF5sTi1keWcw
bEJNUkw4RmlYXyhzMVA/QCV2NnlyaWFyWC0wRTRCJGwwVlJ6CnpsRXktXnlwJXZzKnVSd0ZrMUJg
ci1OR2R6QlIhaXwmQlhEJUNWflY/PCFkWVFVQEZ6dFIpLVRJVXI1QTV2aUM3fgp6SnZrST9lSCtM
a1RSTFVQcCQ+XmlMdzxDQCF0aiNuJHp0TjNVaEctQTZZJU9yelQ0YWBzNnJZTEctfStzZnpzJTkK
ejFiMWdNV2xoeVJfdnQwSWxRVV98RTxKSFlzekZrZ3Q7TUBhRnsjZmNXeWZ6SyhmfmY/djdIYSQ2
NXlifFlvYjUmCno5KlVuWVo/Wm5Qcl5jK1chTFZIfCg4eiZgWGZ2PXVJREBac0g9KkJ6M3U8cG5f
ZHkocjZxdTtlUl83bSghLTMyXgp6aXpjfHJsP1VRRXZpZGM1K2NCe2NlK29tdFh1VFJSdFlabHNi
Vn07aEZueEN8Unc5ZF8xKjBNWjtqKVp2LWdkOEoKel4mb1U3VHokaDIpVihwVSs/QmlZKU1RODQo
YTRSSSNVZm5MaWRRbnhOeT1qX1M5Wj4pZndZZ2B4NGIlSjspQ18pCnozWEZRbUNgYU5oMWU1ZFJp
Xj07SGo9d2lzbXg9diZGR0M1Z0pab3pAKz1XZGJDeXo5b0FaWTRjU1U7ZWp3QjFHWAp6aDlGcH43
KTA1KkJnNGJlU3oweUxkQ3tZNWZXT3xJaDYxRnBsTGl2SHh6bUs7c3l1Pj5CfHBOIWEjUisqbT1L
PCoKenkrYTl1NUQhWHxFUk5udGY9dlMyVX1VZzdwWi1vQG0pfXJ4Pzh1fjVEXm1fRlgkS0doNmE3
ZERafTgkQXI1UTBwCnpJZU1iRCZLOHN6UVZ5eSozbD91cGFkd0pAXjZ6PjxOcnp1OHo9MlBGIU1L
I2dmVzZGMjZ0VHpQT252VlRyPUg1Zgp6PzlpbVRYNXN4a2E/eX4pRW9GRHBXfVEqJjQpSHpeTyZ7
anRNKE0/PUYkbztmOE0lSnV3d3s8QHA2VTVoUU14RFkKenFPMys/Zn5XVys8d15vLWRTVnpLU0pf
NFdWaEVYSnY2TnJnVjhQSHh7azlYPXN2YjJkWV83YChFVG4wLT5uY1NLCnpURkpCUFo9Tikpc313
cTxYQj1qaUU0T2Bmb1hoey1CTThIZm0mS3wrWTE/UWVSJGtpT0otZm17PW4tcWppKk4zMwp6e1U9
UFYrUEJfcWFEKGRTZnchbD1Sdyl7bkB2KilOQ1E/Z04ybjs0ZWhINSRiPVhKJC1qMU9ZQHA9UWNX
SVUtdW8KelZgQjNoKWFKPWltb0RYX040fEd5Pk4kQX1gVSlteUNGN2BXMEYxRGgwaTJhJCRhcUtg
PmE9MUNpYmg/ZzhJWChKCnpyQjJ9YVlCe2xIdmUtR2ZjTDFSUj5mUX5rVHk3YyloU0VfYWxMUmlj
MUIkfitqRkZIRzY9YkJPbEE3aHY0T3hFdQp6JW5qPGMmVm9pJE9+Yj1reGhhVX0mbzwoTFMoVz8/
SS19NSVtaEFXOHRebnlmdERYWlRwclRHb0x+Q1Y4Yk03V3cKeiVJTVh8PEBAZHxyWj1BQVgjSHVw
b3Z0O29sfFBmPkBUYlljNVVpPSFHfEhpMTJJRlZhd0tZKktPOFg+NyhsdjEmCnpYUCQrcFRKWX4+
RG5TQXU3NXdwfVY9P0NlMTJUeEZmUXtfRElDe1kqYXpVSjI2ano5SlZJbUdTTFIxKVhtcUpjNQp6
JE9UeGFlI0B7WkczP3hpWEJnP1pZRVhoWXA/dHglRT5JKGdXIVAhQnBhJCR5ZFkkJXFFV1dYWHp3
SCV4aTRCX2IKel8tWEhiM30+cjlgfShYJjB4YiU9PVVKZkJjRUZUYnRARUlwI0Z4MkQkKTVMSChy
O2VaK2VUVil2c0N8MmhpN0pPCno/b1VhYyZSIXk0dWVhOUYrZC1pRGxtO3Y1KXcwMSpIJGZeSTA/
NEVQTX05dDBBfm5weXhFeEhoNX5CNi1fNTFqKgp6dEM4Rk8wazU2dkJ9ckAtRFdPRllQKyFld0dx
cj1MbV5mR3ZPKWM7bDZxSUhaYXVpXlc2b3VFJjMkVTYqejZsbH0Kemd5byFFRmF1NSFNWHJUUXl9
UzhjMVE5M31ASEItNDRHQGMpdz4haTdxQipkWDhLQVJKMjx0fH1DPz4pazA0JDxgCnpoVT4hcE9h
dnJkb0tnajZ4U3teYkRDVlVqQEJxPUJtI14jUHAtVmlSKW1mME5Ad15XflZSViFaeDUxV3FXT3Ar
Vgp6c3UwQ0IhdkVtX1R+X2BeSTtzZiM+JUsmVEhxIzJfbyRnZFJaYDUhTjBvKGpoKDRgWFRJUl9D
dDtqfnxUT1U7KDkKejJYNHkpcEU4ZFVoPHBPPHQtJnBfPUxCVV9iXjB0QU5uZUpNMHY2X2t0anFO
cXowOU07cVFvOWlPckt+JWRmTjtaCnpYdlpSKTc9bDtXWUgmPT8yLXx0N09WezM2X3B7OTw+RE92
PU9SO3tURWBQRFVsP3BUbVQrTHg1UDE0UGhvUWYoSQp6dyY1JTtgR0VHWnIhY1V1MXVQNnZCV1pC
V0xZbGRTJWhUP3Y3emVCUVREe0crVERGRUhhS0xxQFJ5bGlwe0pNaj8KelV5cGsqKW9XaiF1KVdS
VnZZUVJwJVVUVCYzPE4pJUlkfHdZcGdqc2BfV0BwN2VsKjY+SEk+THIwTWxRSGJtZC1oCnpTS29O
ej59UiNYazFhLXFrb157XiFMe3kzdCkhQDJEVDsmQFcjbHZtc3YoeWAmezZeIU4oKHA9S20jNGsk
TyQxNwp6QCsxOFVJMGB8VEpEPTZYUGE4IU0pVHs5XzcrSHgtY25XMzdrU0g8YCM2c1ZeVXg9NDFP
PzV8cm9qbz5zMWVFNGIKenBsbXRJR35LQWl4WDEoR0R0TEZmQVFYVEpUbVlZZzR5cHZFTXhtNVcr
KHEqfExtcXl3T29Ofl8kK35YM0tYeUhwCnpnVjtIfjsxUUliQU5TZT1mRlokKikrZmEzWm57Pkdv
K3dCdkRpRUBnU14xbkNOMExHaSRqV21zPGQ7e0s1MGwkMQp6PjNrQmdefnBgfGs0P2JsR01BRyV4
Q187TXF+LTFFYUdsZF9ZPCFgUGhVTGpvY0N2RlFIMkpiMThJbWYybWFHSVYKejFrNndPa0RzZzJ5
O2dKb0JIIW5OTWo9NyVlOUpndkZ8Tm49PyhTZmxOOUJNUEQlNSV6cEdCd3JDYFA5R2NJcVZaCnpL
ZXFHZF5gMEptLXBOdygpMUwoZXo2ZzNidyFGNXtmdno8MFhtVihiUyExeGRYVzRhIVh+JjRTVHty
SWs/aCFTKAp6dHhBP0V3QVNoOXQ8JGE/aj4/WUU3UTxTRmZaYmRIdVRLPUtMUzske2M8RUA0M1lt
QmNuWXs5JWB2U0l8cX47JkgKenh6NHE3VUJfWGg3YW8lPE1kQytBSlV6MSQ8OXJSVyF8dTxLQC1j
b2NRQUE9S2J4Rl85OTMyI2wzWjV3VmFZVCRoCnpeWFRPI1Y4MDl3V0VCTGUwNmVRZTwzY3pyMERQ
PDt5VkNPKm9BMEp9IW9TRFk8RWV9QTBHISVjOzNSaWklNTJ0ZAp6Nj5pMllOfDhzeCV9fmdmQXtg
PmFqRGc8XnVUN2MxPV9iQns+JTY1S2ZvT3piO3lOSFdkYVZsd3leJC1UWjlOaSUKejcxMnAxOClV
KnE+OE9vVFZ0d21pRDZgK1A3NVRpN1BtbisqTUlxdlR1O2kmSHRyQUk0dG98SUZjVFgrdyVmKiQz
CnohS2Npc1opX2NQeXdaUGhEfCZ9XldHP3I0aXliRDBnQH4zMyZCV2xzVmk7PGZIQGxuPl87MlVn
LV5BO2U+Y1AqeAp6UFglUjk8X2VGNGlCSjdAU1QzRnN1UWBLXj5JQy0lQCUzY2pvIU0lYnpAVXNE
Pz5+QWgyRWF0QU02cWgyRWNxTzEKenpUMV5PNVU2ZVNAO1pzO3hUWVp7JmR9Uzl1YGpzS0o+cV8+
UkVza197JXlfQk94KlkjSUhtJVFzZzBPQ0dkeClWCnpIPHRsOEByfTQpKFlyb1QrJGYzJVVeMjBv
T2lzYWpaT2xJO09yfHRtZ0QrNCRNRXlUUkBQVzwyaWc9bmV1WTx7OQp6TWhZMktZXjVOITVjelpv
aFNSczJyaWkzYjMoMTVmbWExVy1NNEx1RG4pVT5ZO31pcitudn47THVrSDQ8UkVGbHUKemZIPTZv
Q3UqYzVYXjl5Tj1FMGMyaDZOeDtpaFAyQUg1QllCNXJDSlhMUkJ6cDRhT3xKLWpKQjVER1RCP0Zr
V1VwCnpBaWZMRzVtOTlVUCRBVUl6Kz0rMlA7P05KMXBfSzU3NDluPjh3LV5RUHYyP3VORWJ5QHBC
NEl7N2g5cGNpJFNOSAp6Qk9ZWU9iOCVSYXs3OypfemlmeTlMU2xpfFJ2fUhecUF6ZEtBJWJSJVl1
aF41K3J2QmpnSnwwPl5EVntLXnlII0gKeiRlNntJcGM5ZUxadHVeMmFNOFYxX2IlSUsqK0lURWVD
bT1KemphWDhMXj41fCEwNEZPKF4rbXxBcyFEb2J7NFVpCnpmdUNSWXVldkZxU1F5Z3hrajxeT0Fv
OW1VPEpLS35eTCpCVDZrN1UoV0h7ezYqMUtaQkFaWDNxMH1mIyMhQGRKKwp6QjJhP3lnX1d0QkFI
bjBPaTMhcD0/UyN+UGdMVFNWNXoxTnMje2dkMk88KT1MPUVFP2V2eCp9WXhtNWdMMl5LPnsKek1O
MzIraVJlOHdHVj44Q01sUTsrUG1fJEoyPDQpVjtmVn1aTDYkT3ArbEw5Jm05K2dNcTdMSW9eJFhG
SlIlQkc0CnpDfGNHM2okUlBVKiFWUVooP3pkNm51dXtfSVIzSjtlT0IzPHt0YkYyPVZ1VEwlQSFW
OCFGakY8aF5TWVBJU1JmeAp6UCFMRkxDZD4pa0NCVSFpYTN+aU05fHx9ITN2OVUhTD9TfDBKaEBM
KzVQXmomOSFgPyh4Pkx5X0gqU1N5d2NEN14Kekg2KCZyWSgkRnEpd3A8JnpFVSZ3RDJWM2ZYfVYk
MjhuPlRYdE51ITVENmZifT1ZKD9lN0pNZlN8TEtNMXAxLSE3Cno2UFU/WjFWelp1MTAjPSU9OWZe
LTQ2QUNLc19ISyN0Y2p0JURGbX1RbXxQQkt3PV9QcDQ7PTBnOWwzcXA7NmxHfAp6WD53cnZES2lR
fiQ4MCZueloxa1VFfCg7O1FeU0t5dTVXZj9AUnhxelQ8byRVenhrfmNRQDhWQDhlJWBzUlR+aygK
enslXkoxNkRjX0BHU3xzQmV+WnJMLWNQeD1xQWxeNXB+ZGJ4R0d9XmwwTUpzc05aRmFIZUU0eloo
RFl6M1Jme3UkCnojcU41b3tSeUYtZXpnK1ZfSSg8bSQobyEoaERiemxUeXpYS2Y5QCh1XkMhbWo5
bX5JcCVEamsqaylsKlBSSC1yJQp6aX4yVX1zI1k5UGwoUSFgYDIjeXlHIWNnbFQoflFUa0h0cmtS
UnJWJFpAKlBSdFRhQkJvRXwwQlAje3JBbGVmRDgKelJMNSg8OGpqZl9ITUdzdm1aKi1mT3ojKVpM
akNmO0dPentUN1o/Mkh7bXp8P0M4PU4hNzFSakNXSEk9PS1vWntQCnohMGF8PTl9amhMJHg0IV5O
Y3p1WVAkMnx5VkkzSkp1OF4tVS1ISyt1UDk9KHZkbHlBPmBAWmNqaCtgcFF4T3RoWQp6TTZROHBr
RU4mfW1iK21ndzZYNzleZ1B+NzB5d2tzWmNjenNsfU1IVyhgRHxOTkJTI3xSTUBZQDkwaUEydn5U
XyMKej5WOVlCN1RUJGJCKS08cWw8NyVlYlNISiVQY3lgQ1d6I3clcWZoeDtVR0pUSmUhPTxGWntx
UXBtWl4yQXpDU3pwCnpeVX54P1JrMSZiZH5OSUZ4M2MqYnFaRXNVUFJLd2lyZSs8RnIxOGdBLXVR
ZFIhMFFuUWNnc3xjfEJiWjBBMi1CQgp6WT5wb3VmM3hRT19ucSVRPyVYYFJiMH0raUZnI3dmbSpE
MWhQOUJBMFF1YiFLP3dUNWdLZDFoe1FGbSFFVjdvYT8KekFVRVpRPVVjR2c2THs/dE09ZXhhVCNT
UiZ6YX4oPnVBJX1aIW1KVGRZQzJqbUR5c1kxJis+WjY7PkdeQC1rJTs8CnomNmNDfmMmP0FwcTxf
XyM0aUBUdzRyVnR1Q1JkOF8qZkBYcDVHSSNma2o9cEM/d3JwaVYreE49eXNPbFNPNWIocQp6N3NN
dGVXSkxENU4od2wwZzhPcTJtQ2okaUtFIUVNVjBwKGpSVkk4WmZPTHRsWkQ5ZD4hez91YWxiJkt3
aGolZkUKem4wR2B7N153UW9lc3xGVkRfcz9tQEhZRzZnXzRhMGFwXkRGM0sxX3BFISM3KUkxb1RZ
Uihpfj5hM1oyZUYhMHhkCnpLUj9ZdVBEKklXdSl1ODghI3pGOGgwWTlrZHU7ODA3fn1ZM1lwb2FR
YUF3fTl2KTJEO0xObnBAaSl2bkRmb0FLYgp6Uy1RbXNoKjdmYk92JnlJe0dqbkNIMU0oOy0kMGY7
O1F3QE4qe0xwJVNnJkUtay11cFlZdyorUEBlNClBRl5jTjMKejlYa19OZWNWKntVMUt0UHBKdWd2
KTNEanx4YTIrNHNyQz13S2ljemdiJG5YRC1aeWEqKmB9WWNqMn53Z2U/bjxgCnpRSVp+JWRPR1VQ
azNYPHRUQlVHQ3tFNWZPNSRYUUwwdCgmQnllOFd6NEBQSilIO2c8bDQ+dCN5Mkc7cnh4MTJkWQp6
TXZGJTVAUEQ8P1VHI3Q9eXRiWUhzezBQK0ImbFRVU2k4cU5HUyRfN09VXiNDent1OXZ0SzUtaVJ+
OCNscWlUfiQKelV5Q3dLdWspcj1GMEU7bzsmMUhAZWI+NVM/Wj5UKjd7PWFWezJQeT5DWnpCb1BF
a0R+UF4lLWZxZmJoJjd2dXEpCnpuSE5oVnoreD9HPmN8Q3RybDdGR0Uhcnp3aytHez4kN09ZZzY3
SVRsSU1+KDRkdEhsYFE7am9RNV5xcH0ke0pjMQp6UXtofng3Z0pQUGlve0F9Xn1hcUJKSiohfjFC
SjtWTFBmaDQ2d1kwR0tkaX5qSShWUW12MEhmTDUxd09adE1ZMTMKempMeElZOWdMan5jYUU2IT49
Pm9IejJZUEF4JmgmSFIhTSRFVSpCekwrQishXz9mPkM4Xj1IQ2t0Q2hLKj8xRSpnCnokNEx1KjJP
VllmTWNTVEVId3A7MFQzbCVWeU1ORWNBRUs7YWBzUHdOVCFIWHFnPGh8b1BZd2dBWElhY2hEekdi
Xgp6T0R1Rm1ZWEpYP0ZKaz9RRXIyIzNHJjRQNl5IS0F1Tzh6blAxZntLYiNhNT1SKnFyRmROOShp
NVR9WFkzcVlwQVAKemFJNlc5O3FLRzg3XzJuSmJePysyI142ODhFYExoTl9Ic1FKWSh7Yihkbklv
Vz1ZWilpZUwhbmgqZ1UxZ2dgLTM1Cno7cy1NaUpJNzdRPy0pQn0+bGU5UDZQQnRkal5BVz9ybl8k
bEFKQSgwUFVMQj9XPXtLP3IkKFpxWTMtSGE4fC1Tfgp6cD8qJGRSQG1YUl88YlY9ek5gNEolVkBY
ezRHJnl5MnVwKCllPS1eZ3ZVLUtWe1ZmJmhWVWJ6MVdXamlpMXwoN3YKejs8Wmg0WlEzMnBZMHVY
cHNqYGRnRHdfQ3I4UFVBfTAlaFZaMkREYXZXZ0Bnej0xa2A0ZE4reWxENjVyPDkkb0w/CnpfQSZO
eHdvTXR6WWxmYnV2b3d8dHEwVXJAKXx+U2BCS05tTG41R0d+RjV4Vn0rZUoxcHlSYW5ONitOcVVz
Mm5oSAp6U0N3PF4/bUd8VnF6QWdBSmR2QEJtPjBXYFF1JXw0d1ViRk09Z3Roal4oOFJ4eUBkcS07
LW5KWEZTezN6SyRFVXsKemRCOVZfYz90aWtROEZDemJ+dEohaWk/XjFDTnYwQ0g1Nk1OJURGbTUq
N1N3UGNKeUhWaiVLX3JZJl8yVShQeWktCnpgdHpMYSVlfCh9VjV1Un4oUVkhN0NWbiMrOHBhazlI
PCFCd25FMigwciQ3ek5ZNCZrX25PfUYyZ1VpdlpweFVfMwp6I2tvIUdvTjVrWllWSWtVNTxOPDF5
RU9sfTVoVWU+eWthfCRgK1htSS1PVEdMcVVgKnNTNSN3dG93N2teYEhYQ2gKeiZRY31acVoyKE56
aGhkSyh7X3tYeF5DI0wtfTg7MXxOWmVpTmEhP3dCRm5kRS1ZYDNpP2NiPEszU0l4fHxGUE4wCnpm
bjkkcm96RjgyVkxWaE5KQCFgVWQtRWlTPTxrdlREP2V0KTV5eEl6I2UjVU1PfWItbCN3NGFkbGI1
dDwlVWtxWQp6aihQVzxPZyRqSj4ycXJfaFRoazhgP2dae0ghJSYjcGRKZ2heMXl7U0tTcTFZeF48
KXlrdnEyYClMWVdreEx2bHkKek1UNnVlQElyUm10NH5hYUU0XklnJEYhcHBALVE3UktKKS17ITd3
Y3FHN3UpTEBjUVN0O09VbnxeQDkkcDBRX2JgCnowSEBhRHklclBrYkx7RWFYKUN9QHdjMn5Ma05L
N1NkWTZXYE5UTipfPylMTipxYmA7SVBIKVFkMzNRYCp6cUV2Ugp6SWM3WSFkPlElTWo/IUYmTEZv
eChyX0dqMyRYcVhXKHMjX1JvQWUwS1NIbmhrNlZPWXlDdSlWITEkd3xuKEh8RmQKemJKe3ltdj8p
Sl8oQCR9RXdYPyFecyZMKSY7PklRSDx8ajQxS0FQRjxOMmdVJF9tLWQ3X2FGfVQmMDgoODNVejk4
Cno0VD9+UXh+RlN0Q0QyeklgQFdBR2MpLV9YbUlPN3hIcm9HdTNIfWppajFORHZ7QH5PPExjMUhv
dHNZSTIoR142fAp6RkNiYiFUR2UxPEdJKUNCUTJudkptV285YGN2NUo9eFJiZUdAdFg4YmllZEQl
OFJmPkpPaVB1WlRFYG1xV1lYczMKeng2ZlU9ajRtOFVPfiRNY0E5MH1ZT0JWKEU4a0FQez5oS2JK
WU13Rm9FeEE2dT9wKG8yZW9qNE1fKDRKeXhrdSFsCno8K0ZUcDYzI2wmPkd6Z2RsSHdfRUJzNnNU
OHpQNSVaRG1tISsyaChlSCYmVzJBekNyTSFLMHlCZjZLNGdNKCpWNgp6ai1OITwpLUJuTSEtYDd4
KSVNeUtWbWliRnpsbldLal9vcDY4O1o0ZDYhJkB4OUtkKTZ6eCtQWmM+NylKdUZAQTIKenc3NUtL
VkNSeWNJKzkod0ElPjQpMHYtQyZhWnJsYExzJUhsdSsrZllleX5vJHFxOXkmNGU1SjlZSittZiY/
QytmCnpvbCEhRmxeKXg+Q2tnTHlZZURXcU1CMyNuQmZhejU2PSttNzRRd0whT0g0SXZnemBkI3U7
MWI+TVV5IUFXUGNvOAp6JTVfdl9SeWVHejImfTgrTHtOYzFMUFMqZSE3c25IbmNtakxmbHNmK3s2
O1BNRiV5MTFaczVLUkEqIz9CdEVDZW8Kel50SExkSl5paE5jWigkSnJeTlAyU1dEfDtQdnpGZnVU
WVkyUldJJSk/Q3ktV3loJT9rUGVVeHFudjFpVD96WXx8CnpNLVVaRURXWWU+K0gzU3VfM3N7fWp1
Z05JaiMhcFFEM1I7Uzh+JiYodGFDcn47Z1NqZEFKWSQmUnpSKFgmbiMjPQp6U2VIfWx2Wig0dm1K
MjZSeUpAOEoqdGE0KGBqU211S2txRmk0NHByb0pZJXp8OTk7ZmpVJipmZzxtNHwwcVY5KmEKenZr
cDlIdmJQZzJNRU5XJERofl5eWV9SNDRTUncjJXF2WnxgQEBOMV4wTG8yWiZ8VWA5S2djbWNhaiYm
c0BkUjU5Cno2WUF1bTxzKXEmQUBUPjVxMlZIRF5FPGRXVVZ8SD40fEwjbDtqKmZ5cyFkazhzdm9n
XipQV3FZKyZOYkpOP3VnZgp6T2FtQWpNeHFYKjZVI1h0WnR7OzNZZmkySXVwPFVLSURQN15ZP3w8
THpQajU4Sm18Xz9KNlctPntkdUBfQ3s/IzAKenYmPnR4S05RPTE9WWwtK3s4S3dXKF59OTx6MT5P
ZWlkfUttb3lGSm4lTkBkWmtNPiZMdzBBaDlLKWgrfmgrbDVQCnoyPXE4SlViT2wrVEslZjRaUUZx
OHRVLVA8QztNPCMkaWZ4c0ZOZF8pMlI3dTVSd0xmdSpJdE1XKiVzWWVCVSQqYgp6RGZFRjBKQGFI
XlVweEtwaDskRnZGTlVjNyg1SX5KK3UtRU81NFdTIXVEX1RzaU1UWGF5SHN2I3oybjhNcysjU20K
ej1ZS2F8YSY7XlYlcnRtcl8relhtQG08RmBtc1V2Ml5vKjtFMVVOfjlBdl9adkg2YnJBcDxsSjhs
O0hSZXgtcCplCnpKSWxwR2dzODdKcmdhRyRAbXApNFdtVk0jUHZgSUdfMlhTSnlNTSV+JjNCeX1F
UDhZeExjRExyX3dCcEpnQ1Y/egp6Q3VkanBBIXFGTEhfLVpDRXhNfWVIWVAqKmZzKj51JUVzT3dV
dlVTNWd4dj9gRlN5P1F4JFg4UjxDb3pFJVBXNGAKemB4Tm9aMUFuJkR2OWtgb2dqI2hOPCFZYjVZ
b14odWchXzxEXl9XYE1sRShYVGB0UCYmUG0rSjB7OShYZkNAP2FUCnpEU35OLSt7UW1ZQERyfDNj
WGojS1g/R3NadE9PRWtWKCpgKyoqJjBUNiZGI3BDMVN1fGRFWlNOYiE8NTVNYUJNRAp6Wkw4KSVi
Qyh4fTgzamhlNjtIVnBkYFNnJnchcU53TWIrZkpmITxpTSVabyRoYSs/JFkmNTFrdWwjRVVRI15x
N2sKejZKK2kwKndTUiEwY1NsMT5XbyNxdXM2MFlxcC1gMiVuZnh5NDA5dnZgKElGdEJBPmZ4R08k
ZE9tSj1YVjRwUGxjCno0NENAQWQkM0pSTTNkWSkyYnhJflA9Rzt+VkJneEE/alNMT1NfcVNkbjFT
SHFYfUcpNWBMWDBUR3BQUV89WTtoZwp6ajs3TnVxQnB4K2JZd14wbUp6aTQ+aDJaa1hea2RNKzBg
aCF0UT9ZfHd7c3pjU2Y3UV5ZfHh4M0cme2dJWXd9cyQKeileJnhvTm5Oa0lEdWJ9PGpwM0ArXjxU
IXlSKGcjNz5gaUtoZVhtezZ7aUY3Tl5MWCNnPi1UUj9fUj9tPFhxS0M0CnpiMjBQbVpkMjt0eF9Z
cmNoWTM8I29qbFo1OFlNMXJZb3RpYktXUDJVWXBZZmIhaTwwa292KDBhSUU+LVJrd34tZgp6UiRG
bkdYdCVfU3BkTFFOP0s1JENAcHJnPDBESSFgSF9NVVYxJWxEZ217NFc1V2JBUFlXKUV2bnQ1YmZU
WXJNdikKeiVGdVl+QHhTQV50bD56fFV9RlUzWCUoUWVzI00zc2doZXhYc1pkZjxOfGg5QU4mU0Bt
MzZqTElnbkVsJnlhI3VKCnpUTklxc3ppbmtTPW0kNU5GLTw9PW5lMGduRkBnMXNMaCgoMnVIXnpX
diZGe1prdVU5KndGN3RreGdzWEVrU1MkJQp6K2F6ISgleiljUklKJH5hPj9BQ3dBSjBDemt4P1o3
YXp1Zjk3KnNJIV54aHojYHhPWGB3ZV9eT3lXJjxDaz0yYkkKeiZvYE58cWtnWSp7Smc8alVBRFNA
ZWNSTkFTXmJ4dkp2SlJ8VWpPR3EheHJZST1KNnoyOzhgYz1yQXVWS3JgdD17CnotMjdTJXJAYCpF
K24md3lSV0Q2ZmpRMlJrZFBGd2JSfSZxa3BwfmxBJWF6QGAqYUVnQzFRYSprZlZLTFduREIzQgp6
eSY3dEVYOTQ2YlErez0zcio9ZU8jUD5HRUJAYTJUaXtZMVc5a0R+PFlxQDYwMWsweyRge1dFVThU
LUFfdWMyeFAKejQ4dyN8X0xWeHx2ZzlWWD13d19xR0FqPDlLQyp3fF9QTGpfcjNPMW81MkVXIU1q
ZXpqbHlXKypKaD1YdWVuPVRvCnpURTMkQ2BPIzlveGZJTXtaJXNfKDxROVJ7dUdJczh1QVorM3BF
PEtkO0x6TGUlc1kwYnUjcGkwU3hYNjBlKnVmcwp6JkNjT09uV1RnVSF+fCtDP2oyMEtfJWg3YzxZ
bHV7WlQ/b2VtUz5kQiktKFJ5OVZybGZPT3BNMj4pRWRZRkJvQXIKekQjdmpeem5MPjhTJHhPJXBv
R1hSdExMb31iRHomblp1bnhuPXM/TnclfWVaQyt8TzJDSj1KbnglazFwbUY0ZDErCnpMeGVKSChE
QDZgKkY2PlJ2YHVTaWpifCVVZkJNYDA+WilfcnZJQDJJPHk8SkF8NXEtX2dvPkBrYipPN0clekl2
WQp6bkJGYW9rbXZnK1Y2OUpQI0xELUwzJUtPTCUlOEBuZ35xSlV2RHt8O2pxOWR4MU09cHJYLTAk
MEhHJXtxPipTIy0KenJ8UX08MCokbVVFWkg5IyRfPHBHbko0ellIYHs7SkE/VCs9a2E+T0VOWk1I
S2kmQ25OdUAlI2hDTzRgeGRBeyFhCnpeTV9OXnM/eD89RlA8TzdITz9vNChpM3tXXlBHVnYmWHd1
KiZRUkVtKC0mVXxPb2RGbW9eRjJYRUI2M2pVQTBeJQp6eEZPMVNmPmNfaHRDV1hOU2pZWms7d2Yt
PUZ8YWZMbmRXb24rcjY9Jm9hdCQ/cmZrPUY/Zj05QUtkOD9JP1k4QHYKej1KPUUhST1sJXpPfVBO
NzZDTTlaY3tnaSlfVUQwakNyNH5mM2J4JDhaOH1pKiZYMmZoNzMkPj1tZnlwaiY4SFJKCnp2Vmso
JWd6Jn5iRztNMDMqWDxSdzwtSF4zYHNzQ0RicT9FQT9rIUpUJCVlRTZYdmQhMzwhMmpyVUE0WE0o
WHRCZgp6NUwrdT5WZVlWTVhYcnpUMTM2b0E7ekklUnE2PEYxIXB8eXNQd0tycm5ka09nMStzZ2Nh
ej9pOW57SThibFVHPjYKek5aX055MSplUT1FM0l9O0VffHBzUTFyXzQ7JWlVWj4kNHsrNCZjXkQ/
dEJ3U2R2b3sxbzJ8NjxjVGM+e3cwXm5lCno7PGdXUStpfWQzJGBfZ0BOQHNWR0lrWTlMI284MSRg
bWhoRz5XZkVqdkgySlBeX192UzkybVBAP30kZ05FSVN3PAp6ZD9zZCg1SWFqTnswVF4jPiVWayZE
P0tpVkBtcm9HYnZKK09Vajd4NWUxKXxZWG1lb19eQFBuaVBXUUZuYzc0UyYKej03cTtzKSNrNVNG
bmMtaHMlK3J1c2hgUUdEYHtzM0NVIVlEJXY5ZlJOZER9cVNXPW0kTVIxIzd5WjkrPyFfZVMjCno4
MWx9ZCFWSENWN09+YCZ1an18ciZzQCFUO1o2UjFVa2RkZUdLPVlUdjJvO3ZaNmZEPWU5P31UNlIh
dXtPSUdEZAp6dlJocEtwdDd2UzI4V0Uydm0wOCpsaCpGUj5mLWBLZVhYaXx3bz4qRHlgTVBvbVVx
SSh0azgkKCZOcCEyOCFYRSgKenFfaTJYWjhLUVBIKGMqeSRlbEd4WGZzO1lYMXVBKlZER0h5dko0
fDxBMHppSmdQS19iX2IlZjNTK2tSfld+VmFECnpUe1RaKVprRWZzRUdfczNxcTdGb0V8TXZLKEp3
Yj08MVdrclNaX1BpPG9COSZ4T25AWT5CcGh4YGAoMDZ3eVEofAp6cFo0N3V5fXMtUHdRMk5lZSlS
bnQxOH5xY3hwbnlTOVdFfTh4PmlyUj4lUUxwPXJHe3grVlN+UzJLM2BJdnBtNH0KemxnT3JCNn44
KHFyVUZWYFVGN18ke1pxZnFedEd6VHlNKWJ+dChMQkF5S3cqUiU+RWFxZjN7Z3ZaI30pU3YkPUww
CnpDKHt+ajwpTFViLTVOYlNgYH5VUXpxPT5wXiRgQURyJmFmVmFtMlNye3o+SkBGbG50IyNxQHJ5
YjIjc0AkWSE8dwpzKXI4JjAtYXBIQyFZX0hhKkRBVGlxYD1wdEZvRzFkWFooWE1CQk0yeEApOFF1
SmUrI300K1BqRzUmIUBJCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Blcm1pc3Npb25jbGllbnQvcmVzb3VyY2VzL3JlZGlyLnBocCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcGVybWlzc2lvbmNsaWVudC9yZXNvdXJjZXMvcmVkaXIu
cGhwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjE2YTAxZWQ3ODIwYjg3ZGYzM2MzMTU1YTc0OGEzZGZlMzVjNzIxMDcK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Blcm1pc3Npb25jbGll
bnQvcmVzb3VyY2VzL3JlZGlyLnBocApAQCAtMCwwICsxLDMgQEAKKzw/cGhwCitoZWFkZXIoImxv
Y2F0aW9uOiAiLiRfR0VUWyJ1cmwiXSk7Cis/PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vaHR0cC90ZXN0cy9wZXJtaXNzaW9uY2xpZW50L2ltYWdlLXBlcm1pc3Np
b25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2h0dHAvdGVz
dHMvcGVybWlzc2lvbmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOGVlM2QxMDliYmEyYWJjYzQ4ODQ2OTkzZGIyMDAxOGI2NjZjMTcyMgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2h0dHAvdGVzdHMvcGVybWlz
c2lvbmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBA
CitQRVJNSVNTSU9OIENMSUVOVDogYWxsb3dJbWFnZShodHRwOi8vMTI3LjAuMC4xOjgwMDAvcGVy
bWlzc2lvbmNsaWVudC9yZXNvdXJjZXMvcmVkaXIucGhwP3VybD1odHRwOi8vMTI3LjAuMC4xOjgw
MDAvcGVybWlzc2lvbmNsaWVudC9yZXNvdXJjZXMvYm9zdG9uLmdpZik6IHRydWUKK1RoaXMgdGVz
dCBjaGVja3MgdGhhdCBhbGwgVVJMcyBpbiBhIHJlZGlyZWN0IGNoYWluIGFyZSBwYXNzZWQgdG8g
dGhlIFBlcm1pc3Npb25DbGllbnQuIER1ZSB0byBidWcgNjgyNzksIGN1cnJlbnRseSBvbmx5IHRo
ZSBmaXJzdCBVUkwgaXMgY2hlY2tlZC4KKworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2Nocm9taXVtL2h0dHAvdGVzdHMvcGVybWlzc2lvbmNsaWVudC9pbWFnZS1wZXJtaXNz
aW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vaHR0cC90ZXN0cy9wZXJt
aXNzaW9uY2xpZW50L2ltYWdlLXBlcm1pc3Npb25zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmNhYTg0NjNh
NTA1ZTc0MzkyYzEzMTE3MzBjZTVlOGU3MTBlY2E2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2h0dHAvdGVzdHMvcGVybWlzc2lvbmNsaWVudC9pbWFn
ZS1wZXJtaXNzaW9ucy5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2Ny
aXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RD
b250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wUGVy
bWlzc2lvbkNsaWVudENhbGxiYWNrcygpOworfQorCitmdW5jdGlvbiBsb2coYSkKK3sKKyAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0cyIpLmlubmVySFRNTCArPSBhICsgIjxicj4i
OworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPgorVGhpcyB0ZXN0IGNoZWNrcyB0
aGF0IGFsbCBVUkxzIGluIGEgcmVkaXJlY3QgY2hhaW4gYXJlIHBhc3NlZCB0byB0aGUKK1Blcm1p
c3Npb25DbGllbnQuIER1ZSB0byA8YQoraHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTY4Mjc5Ij5idWcgNjgyNzk8L2E+LCBjdXJyZW50bHkKK29ubHkgdGhlIGZp
cnN0IFVSTCBpcyBjaGVja2VkLgorPC9wPgorPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9wZXJtaXNzaW9uY2xpZW50L3Jlc291cmNlcy9yZWRpci5waHA/dXJsPWh0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9wZXJtaXNzaW9uY2xpZW50L3Jlc291cmNlcy9ib3N0b24uZ2lmIiBvbmVycm9yPSJs
b2coJ0ZBSUw6IGVycm9yIGV2ZW50IGZvciBmaXJzdCBpbWFnZScpIj4KKzxkaXYgaWQ9InJlc3Vs
dHMiPjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vcGVybWlzc2lvbmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L2lt
YWdlLXBlcm1pc3Npb25zLWV4cGVjdGVkLnR4dAppbmRleCAzZDk3ODQ1ZDU2NmNhZDU1MzkzZTA1
MjhkMTBhZWM4MmFkMTEyY2I5Li5lNjA3YTEwMTMxMTI4M2I3YTRmYzA1NzliYzZhYjVhMmZlMjQx
MjEyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9u
Y2xpZW50L2ltYWdlLXBlcm1pc3Npb25zLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L2ltYWdlLXBlcm1pc3Npb25zLWV4cGVj
dGVkLnR4dApAQCAtMSwzICsxLDcgQEAKK1BFUk1JU1NJT04gQ0xJRU5UOiBhbGxvd0ltYWdlKChm
aWxlIHRlc3QpOnBsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvcmVzb3VyY2VzL2Jv
c3Rvbi5naWYpOiB0cnVlCitQRVJNSVNTSU9OIENMSUVOVDogYWxsb3dJbWFnZSgoZmlsZSB0ZXN0
KTpwbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L3Jlc291cmNlcy9ib3N0b24uZ2lm
P25vY2FjaGUpOiBmYWxzZQorUEVSTUlTU0lPTiBDTElFTlQ6IGFsbG93SW1hZ2UoKGZpbGUgdGVz
dCk6cGxhdGZvcm0vY2hyb21pdW0vcGVybWlzc2lvbmNsaWVudC9yZXNvdXJjZXMvYm9zdG9uLmdp
Zik6IGZhbHNlCitQRVJNSVNTSU9OIENMSUVOVDogYWxsb3dJbWFnZSgoZmlsZSB0ZXN0KTpwbGF0
Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L3Jlc291cmNlcy9ib3N0b24uZ2lmKTogZmFs
c2UKIAogCiBQQVNTOiBmaXJzdCBpbWFnZSBsb2FkZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2UtcGVybWlzc2lvbnMuaHRt
bCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Blcm1pc3Npb25jbGllbnQvaW1hZ2Ut
cGVybWlzc2lvbnMuaHRtbAppbmRleCBlNmViNDY5NzhjZWE2Njk3Y2Q1NmU2MjQzMzRkYmRlMzYw
N2IwYzk1Li5hNTEyMzFhNTU4Y2ZiOGMwNzlkYmJhOTcyMTMxMTIyMzZmN2NiOTA0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9wZXJtaXNzaW9uY2xpZW50L2ltYWdl
LXBlcm1pc3Npb25zLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vcGVy
bWlzc2lvbmNsaWVudC9pbWFnZS1wZXJtaXNzaW9ucy5odG1sCkBAIC0xLDggKzEsMTAgQEAKIDxo
dG1sPgogPGhlYWQ+CiA8c2NyaXB0PgotaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
K2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKICAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci5kdW1wQXNUZXh0KCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcFBlcm1pc3Np
b25DbGllbnRDYWxsYmFja3MoKTsKK30KIAogZnVuY3Rpb24gbG9nKGEpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5k
ZXggYWVjZDMzMjlhMDZkYjI3ZGM1MTAyNGY3ODAzNTkxMzlkNmFhNTE2Zi4uNjA0ZWVkMTA1ZjNm
MzQzZWNhNmYzZmM4YzliYzBlZWYzMGVlNDJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBA
CisyMDExLTA5LTE2ICBKb2NoZW4gRWlzaW5nZXIgIDxqb2NoZW5AY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJlbmFtZSBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJbWFnZXMgdG8gRnJhbWVMb2Fk
ZXJDbGllbnQ6OmFsbG93SW1hZ2UgYW5kIGluY2x1ZGUgdGhlIGltYWdlIFVSTCBhcyBwYXJhbWV0
ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY4MDcx
CisKKyAgICAgICAgVGhpcyB3aWxsIGFsbG93IGVtYmVkZGVycyB0byBibG9jayBpbWFnZXMgYmFz
ZWQgb24gd2hlcmUgdGhlIGltYWdlIGlzIGxvYWRlZCBmcm9tLCBpbnN0ZWFkIG9mIGp1c3QgYmxv
Y2tpbmcgYWxsIGltYWdlcyBpbiBhIGdpdmVuIGZyYW1lLgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHRtbC9JbWFnZURvY3VtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkltYWdlRG9jdW1lbnRQYXJzZXI6OmFwcGVuZEJ5dGVzKToKKyAgICAg
ICAgKiBsb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1l
TG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2Fk
ZXI6OnJlcXVlc3RJbWFnZSk6CisKIDIwMTEtMDktMTYgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFw
cGxlLmNvbT4KIAogICAgICAgICBERkcgSklUIHNob3VsZCBpbmxpbmUgTWF0aC5hYnMKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwCmluZGV4IGRkY2IwM2ZiNGRhNjhhYTk3YzZlMTA0
N2I0NjM5ZWZmZWZhZGNiMmQuLjM3YWQ5OTM5NTA2YjBlYWRmOGJkMzUzYTdhY2FkMmQ5NWQ5YmE1
MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEb2N1bWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbWFnZURvY3VtZW50LmNwcApAQCAtMTI4LDcgKzEyOCw3
IEBAIHZvaWQgSW1hZ2VEb2N1bWVudFBhcnNlcjo6YXBwZW5kQnl0ZXMoRG9jdW1lbnRXcml0ZXIq
LCBjb25zdCBjaGFyKiwgc2l6ZV90KQogewogICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCkt
PmZyYW1lKCk7CiAgICAgU2V0dGluZ3MqIHNldHRpbmdzID0gZnJhbWUtPnNldHRpbmdzKCk7Ci0g
ICAgaWYgKCFmcmFtZS0+bG9hZGVyKCktPmNsaWVudCgpLT5hbGxvd0ltYWdlcyghc2V0dGluZ3Mg
fHwgc2V0dGluZ3MtPmFyZUltYWdlc0VuYWJsZWQoKSkpCisgICAgaWYgKCFmcmFtZS0+bG9hZGVy
KCktPmNsaWVudCgpLT5hbGxvd0ltYWdlKCFzZXR0aW5ncyB8fCBzZXR0aW5ncy0+YXJlSW1hZ2Vz
RW5hYmxlZCgpLCBkb2N1bWVudCgpLT51cmwoKSkpCiAgICAgICAgIHJldHVybjsKIAogICAgIENh
Y2hlZEltYWdlKiBjYWNoZWRJbWFnZSA9IGRvY3VtZW50KCktPmNhY2hlZEltYWdlKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IGMyMTE3ZWIyNGEzOWU4
ZGNlMTJmMjdmMjljMGZmMDgzOTVlNjNkYjcuLjA2YzIxMmIxYmIxYjkzM2ViZjZmODZkNTAzMGU3
ZmJiMWU1YzEwMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5o
CkBAIC0zMDIsNyArMzAyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHZpcnR1
YWwgYm9vbCBhbGxvd0phdmFTY3JpcHQoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpIHsgcmV0dXJu
IGVuYWJsZWRQZXJTZXR0aW5nczsgfQogICAgICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dQbHVnaW5z
KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7IH0K
LSAgICAgICAgdmlydHVhbCBib29sIGFsbG93SW1hZ2VzKGJvb2wgZW5hYmxlZFBlclNldHRpbmdz
KSB7IHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3M7IH0KKyAgICAgICAgdmlydHVhbCBib29sIGFs
bG93SW1hZ2UoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsIGNvbnN0IEtVUkwmKSB7IHJldHVybiBl
bmFibGVkUGVyU2V0dGluZ3M7IH0KICAgICAgICAgdmlydHVhbCBib29sIGFsbG93RGlzcGxheWlu
Z0luc2VjdXJlQ29udGVudChib29sIGVuYWJsZWRQZXJTZXR0aW5ncywgU2VjdXJpdHlPcmlnaW4q
LCBjb25zdCBLVVJMJikgeyByZXR1cm4gZW5hYmxlZFBlclNldHRpbmdzOyB9CiAgICAgICAgIHZp
cnR1YWwgYm9vbCBhbGxvd1J1bm5pbmdJbnNlY3VyZUNvbnRlbnQoYm9vbCBlbmFibGVkUGVyU2V0
dGluZ3MsIFNlY3VyaXR5T3JpZ2luKiwgY29uc3QgS1VSTCYpIHsgcmV0dXJuIGVuYWJsZWRQZXJT
ZXR0aW5nczsgfQogICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDJiOTMyYzUyYTczMzZlYjI5NDRlNWY2
NDgyZDg1NWZmMDA4ZWI0MzkuLjY5NDQ2MjIxZTFhMzYzNTUyODhjZWQ3Y2RhMmQxZmE3YzQxYTU3
NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlTG9hZGVyLmNwcApAQCAtMTI2LDEwICsxMjYsNiBAQCBGcmFtZSogQ2FjaGVkUmVzb3VyY2VM
b2FkZXI6OmZyYW1lKCkgY29uc3QKIENhY2hlZEltYWdlKiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6
cmVxdWVzdEltYWdlKFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBpZiAoRnJhbWUq
IGYgPSBmcmFtZSgpKSB7Ci0gICAgICAgIFNldHRpbmdzKiBzZXR0aW5ncyA9IGYtPnNldHRpbmdz
KCk7Ci0gICAgICAgIGlmICghZi0+bG9hZGVyKCktPmNsaWVudCgpLT5hbGxvd0ltYWdlcyghc2V0
dGluZ3MgfHwgc2V0dGluZ3MtPmFyZUltYWdlc0VuYWJsZWQoKSkpCi0gICAgICAgICAgICByZXR1
cm4gMDsKLQogICAgICAgICBpZiAoZi0+bG9hZGVyKCktPnBhZ2VEaXNtaXNzYWxFdmVudEJlaW5n
RGlzcGF0Y2hlZCgpICE9IEZyYW1lTG9hZGVyOjpOb0Rpc21pc3NhbCkgewogICAgICAgICAgICAg
S1VSTCByZXF1ZXN0VVJMID0gcmVxdWVzdC51cmwoKTsKICAgICAgICAgICAgIGlmIChyZXF1ZXN0
VVJMLmlzVmFsaWQoKSAmJiBjYW5SZXF1ZXN0KENhY2hlZFJlc291cmNlOjpJbWFnZVJlc291cmNl
LCByZXF1ZXN0VVJMKSkKQEAgLTI5NSw2ICsyOTEsMTIgQEAgYm9vbCBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBjb25zdCBLVVJMJiB1
cmwKICAgICBjYXNlIENhY2hlZFJlc291cmNlOjpJbWFnZVJlc291cmNlOgogICAgICAgICBpZiAo
IW1fZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0ltYWdlRnJvbVNvdXJj
ZSh1cmwpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIGlmIChmcmFtZSgp
KSB7CisgICAgICAgICAgICBTZXR0aW5ncyogc2V0dGluZ3MgPSBmcmFtZSgpLT5zZXR0aW5ncygp
OworICAgICAgICAgICAgaWYgKCFmcmFtZSgpLT5sb2FkZXIoKS0+Y2xpZW50KCktPmFsbG93SW1h
Z2UoIXNldHRpbmdzIHx8IHNldHRpbmdzLT5hcmVJbWFnZXNFbmFibGVkKCksIHVybCkpCisgICAg
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgQ2FjaGVkUmVzb3VyY2U6OkZvbnRSZXNvdXJjZTogewogICAgICAgICBpZiAoIW1fZG9j
dW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5hbGxvd0ZvbnRGcm9tU291cmNlKHVybCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGExMjA4ZTY5YTJjNDhjZTVkYzc5YjRhMjBk
NzZhMWFlNzIwOWUyZGIuLmU0NTAxNzYxYjI2MGQ0ZWU4ZDE1OTYzMjdhNGQxZGM3NjNiYmJhYjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDktMTYg
IEpvY2hlbiBFaXNpbmdlciAgPGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1l
IEZyYW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxs
b3dJbWFnZSBhbmQgaW5jbHVkZSB0aGUgaW1hZ2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9XZWJQZXJtaXNz
aW9uQ2xpZW50Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYlBlcm1pc3Npb25DbGllbnQ6OmFsbG93
SW1hZ2UpOgorICAgICAgICAqIHNyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpGcmFtZUxvYWRlckNsaWVudEltcGw6OmFsbG93SW1hZ2UpOgorICAgICAgICAq
IHNyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuaDoKKwogMjAxMS0wOS0xNiAgSWFpbiBNZXJyaWNr
ICA8aHVza3lAZ29vZ2xlLmNvbT4KIAogICAgICAgICBbY2hyb21pdW1dIEZpeCBDQ0xheWVyVHJl
ZUhvc3RUZXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQ
ZXJtaXNzaW9uQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJQZXJt
aXNzaW9uQ2xpZW50LmgKaW5kZXggYjAwMWIyMjY2NzcxNWJlZmZmMTUyMDc1ZDJmNjA1OWI1NDhl
NDI4ZC4uZTE3MDZiZjc2ZWRlMTQyNzc0MTZhZDRiMGI0NDUzYWRmODI4YWVkOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViUGVybWlzc2lvbkNsaWVudC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlBlcm1pc3Npb25DbGllbnQuaApA
QCAtNDcsNiArNDcsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGFsbG93RmlsZVN5c3Rl
bShXZWJGcmFtZSopIHsgcmV0dXJuIHRydWU7IH0KIAogICAgIC8vIENvbnRyb2xzIHdoZXRoZXIg
aW1hZ2VzIGFyZSBhbGxvd2VkIGZvciB0aGlzIGZyYW1lLgorICAgIHZpcnR1YWwgYm9vbCBhbGxv
d0ltYWdlKFdlYkZyYW1lKiBmcmFtZSwgYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsIGNvbnN0IFdl
YlVSTCYgaW1hZ2VVUkwpIHsgcmV0dXJuIGFsbG93SW1hZ2VzKGZyYW1lLCBlbmFibGVkUGVyU2V0
dGluZ3MpOyB9CisgICAgLy8gRklYTUU6IHJlbW92ZSBvbmNlIGNocm9taXVtIHNpZGUgaGFzIGxh
bmRlZC4KICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFnZXMoV2ViRnJhbWUqLCBib29sIGVuYWJs
ZWRQZXJTZXR0aW5ncykgeyByZXR1cm4gZW5hYmxlZFBlclNldHRpbmdzOyB9CiAKICAgICAvLyBD
b250cm9scyB3aGV0aGVyIGFjY2VzcyB0byBJbmRleGVkIERCIGFyZSBhbGxvd2VkIGZvciB0aGlz
IGZyYW1lLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2Fk
ZXJDbGllbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVy
Q2xpZW50SW1wbC5jcHAKaW5kZXggZTI0YmQzYTYwOWE1NjY1ODc4NDYwMzFmNmQ2MGZkYmE0YjU1
OThhZC4uMGI2M2UzMDcwZmNhYWViYzRmMWY4ZmNlMjExNjEwY2EwMzhkODM3NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3Bw
CkBAIC0yMDIsMTEgKzIwMiwxMSBAQCBib29sIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDo6YWxsb3dQ
bHVnaW5zKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKQogICAgIHJldHVybiBlbmFibGVkUGVyU2V0
dGluZ3M7CiB9CiAKLWJvb2wgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjphbGxvd0ltYWdlcyhib29s
IGVuYWJsZWRQZXJTZXR0aW5ncykKK2Jvb2wgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjphbGxvd0lt
YWdlKGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBjb25zdCBLVVJMJiBpbWFnZVVSTCkKIHsKICAg
ICBXZWJWaWV3SW1wbCogd2VidmlldyA9IG1fd2ViRnJhbWUtPnZpZXdJbXBsKCk7CiAgICAgaWYg
KHdlYnZpZXcgJiYgd2Vidmlldy0+cGVybWlzc2lvbkNsaWVudCgpKQotICAgICAgICByZXR1cm4g
d2Vidmlldy0+cGVybWlzc2lvbkNsaWVudCgpLT5hbGxvd0ltYWdlcyhtX3dlYkZyYW1lLCBlbmFi
bGVkUGVyU2V0dGluZ3MpOworICAgICAgICByZXR1cm4gd2Vidmlldy0+cGVybWlzc2lvbkNsaWVu
dCgpLT5hbGxvd0ltYWdlKG1fd2ViRnJhbWUsIGVuYWJsZWRQZXJTZXR0aW5ncywgaW1hZ2VVUkwp
OwogCiAgICAgcmV0dXJuIGVuYWJsZWRQZXJTZXR0aW5nczsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgKaW5kZXggMWFmYjgxMTJk
NjcwYmE1ZTE0Y2U0M2RhZDEzMmYyMmYzYjY3YjdmMS4uODk5NzM5N2JlYzVjZWY5ZGFiNWQ1NDAy
YjVjOWQzYzgxZTA1NTYwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
RnJhbWVMb2FkZXJDbGllbnRJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
RnJhbWVMb2FkZXJDbGllbnRJbXBsLmgKQEAgLTIwNyw3ICsyMDcsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldCgpOwogICAgIHZpcnR1YWwgYm9vbCBh
bGxvd0phdmFTY3JpcHQoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpOwogICAgIHZpcnR1YWwgYm9v
bCBhbGxvd1BsdWdpbnMoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MpOwotICAgIHZpcnR1YWwgYm9v
bCBhbGxvd0ltYWdlcyhib29sIGVuYWJsZWRQZXJTZXR0aW5ncyk7CisgICAgdmlydHVhbCBib29s
IGFsbG93SW1hZ2UoYm9vbCBlbmFibGVkUGVyU2V0dGluZ3MsIGNvbnN0IFdlYkNvcmU6OktVUkwm
IGltYWdlVVJMKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dEaXNwbGF5aW5nSW5zZWN1cmVDb250
ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGNv
bnN0IFdlYkNvcmU6OktVUkwmKTsKICAgICB2aXJ0dWFsIGJvb2wgYWxsb3dSdW5uaW5nSW5zZWN1
cmVDb250ZW50KGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLCBXZWJDb3JlOjpTZWN1cml0eU9yaWdp
biosIGNvbnN0IFdlYkNvcmU6OktVUkwmKTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkTm90QWxsb3dT
Y3JpcHQoKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwpp
bmRleCA2ZDMxMzAxY2JlOGNjZjE3NmU3Nzc0N2MzY2JmZTFmYzg5NTQ0Yjg2Li5iMWNiYzQ2ZjA0
MGFmNmFhOWI4MDQ2NDI1ZmMyYjk2NGEyZjZlZGExIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VM
b2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDktMTYgIEpv
Y2hlbiBFaXNpbmdlciAgPGpvY2hlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmVuYW1lIEZy
YW1lTG9hZGVyQ2xpZW50OjphbGxvd0ltYWdlcyB0byBGcmFtZUxvYWRlckNsaWVudDo6YWxsb3dJ
bWFnZSBhbmQgaW5jbHVkZSB0aGUgaW1hZ2UgVVJMIGFzIHBhcmFtZXRlcgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgwNzEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1dlYlBlcm1pc3Npb25zLmNwcDoKKyAgICAgICAgKFdlYlBlcm1pc3Npb25zOjphbGxvd0lt
YWdlKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5o
OgorCiAyMDExLTA5LTE2ICBWaW5jZW50IFNjaGVpYiAgPHNjaGVpYkBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgQWRkIFZpbmNlbnQgU2NoZWliIHRvIHRoZSBjb21taXR0ZXJzIGxpc3QuCmRpZmYg
LS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxl
ci5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxl
ci5jcHAKaW5kZXggZTY0MDkxMmQ2Njg2OTc2YmExZjM2YWQ3ZGUwYzE2NDFiZTYzOWEyYy4uMGEy
Y2U4ZGQ3MWRjMDQxZTA5NzA1Y2FjMGE3YWY3YjVkODE1NjU1NSAxMDA2NDQKLS0tIGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcApAQCAt
MTExLDYgKzExMSw3IEBAIExheW91dFRlc3RDb250cm9sbGVyOjpMYXlvdXRUZXN0Q29udHJvbGxl
cihUZXN0U2hlbGwqIHNoZWxsKQogICAgIGJpbmRNZXRob2QoImR1bXBTZWxlY3Rpb25SZWN0Iiwg
JkxheW91dFRlc3RDb250cm9sbGVyOjpkdW1wU2VsZWN0aW9uUmVjdCk7CiAgICAgYmluZE1ldGhv
ZCgiZHVtcFN0YXR1c0NhbGxiYWNrcyIsICZMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZHVtcFdpbmRv
d1N0YXR1c0NoYW5nZXMpOwogICAgIGJpbmRNZXRob2QoImR1bXBUaXRsZUNoYW5nZXMiLCAmTGF5
b3V0VGVzdENvbnRyb2xsZXI6OmR1bXBUaXRsZUNoYW5nZXMpOworICAgIGJpbmRNZXRob2QoImR1
bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tzIiwgJkxheW91dFRlc3RDb250cm9sbGVyOjpkdW1w
UGVybWlzc2lvbkNsaWVudENhbGxiYWNrcyk7CiAgICAgYmluZE1ldGhvZCgiZWxlbWVudERvZXNB
dXRvQ29tcGxldGVGb3JFbGVtZW50V2l0aElkIiwgJkxheW91dFRlc3RDb250cm9sbGVyOjplbGVt
ZW50RG9lc0F1dG9Db21wbGV0ZUZvckVsZW1lbnRXaXRoSWQpOwogICAgIGJpbmRNZXRob2QoImV2
YWx1YXRlSW5XZWJJbnNwZWN0b3IiLCAmTGF5b3V0VGVzdENvbnRyb2xsZXI6OmV2YWx1YXRlSW5X
ZWJJbnNwZWN0b3IpOwogICAgIGJpbmRNZXRob2QoImV2YWx1YXRlU2NyaXB0SW5Jc29sYXRlZFdv
cmxkIiwgJkxheW91dFRlc3RDb250cm9sbGVyOjpldmFsdWF0ZVNjcmlwdEluSXNvbGF0ZWRXb3Js
ZCk7CkBAIC0zNzcsNiArMzc4LDEyIEBAIHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OmR1bXBU
aXRsZUNoYW5nZXMoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCoKICAgICByZXN1
bHQtPnNldE51bGwoKTsKIH0KIAordm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZHVtcFBlcm1p
c3Npb25DbGllbnRDYWxsYmFja3MoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCog
cmVzdWx0KQoreworICAgIG1fZHVtcFBlcm1pc3Npb25DbGllbnRDYWxsYmFja3MgPSB0cnVlOwor
ICAgIHJlc3VsdC0+c2V0TnVsbCgpOworfQorCiB2b2lkIExheW91dFRlc3RDb250cm9sbGVyOjpz
ZXRBY2NlcHRzRWRpdGluZyhjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50cywgQ3BwVmFy
aWFudCogcmVzdWx0KQogewogICAgIGlmIChhcmd1bWVudHMuc2l6ZSgpID4gMCAmJiBhcmd1bWVu
dHNbMF0uaXNCb29sKCkpCkBAIC01OTksNiArNjA2LDcgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJv
bGxlcjo6cmVzZXQoKQogICAgIG1fZHVtcFdpbmRvd1N0YXR1c0NoYW5nZXMgPSBmYWxzZTsKICAg
ICBtX2R1bXBTZWxlY3Rpb25SZWN0ID0gZmFsc2U7CiAgICAgbV9kdW1wVGl0bGVDaGFuZ2VzID0g
ZmFsc2U7CisgICAgbV9kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrcyA9IGZhbHNlOwogICAg
IG1fZ2VuZXJhdGVQaXhlbFJlc3VsdHMgPSB0cnVlOwogICAgIG1fYWNjZXB0c0VkaXRpbmcgPSB0
cnVlOwogICAgIG1fd2FpdFVudGlsRG9uZSA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuaCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmgKaW5kZXggN2EwZGIwZjM1
OWE2ZGQ1NTZkMTc3MGUyYjBkOWJjMTQxY2UxNGZiOS4uNWYxZjgxMzU1NmZkY2ZlYTIxMDkwZGFl
ZTZiYWIyNDVmMzkwNTVlZSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCkBAIC0zOTEsNiArMzkxLDcgQEAgcHVibGljOgog
ICAgIHZvaWQgc2V0SW1hZ2VzQWxsb3dlZChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJp
YW50Kik7CiAgICAgdm9pZCBzZXRTdG9yYWdlQWxsb3dlZChjb25zdCBDcHBBcmd1bWVudExpc3Qm
LCBDcHBWYXJpYW50Kik7CiAgICAgdm9pZCBzZXRQbHVnaW5zQWxsb3dlZChjb25zdCBDcHBBcmd1
bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CisgICAgdm9pZCBkdW1wUGVybWlzc2lvbkNsaWVudENh
bGxiYWNrcyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CiAKICAgICAvLyBF
bmFibGUgb3IgZGlzYWJsZSBwbHVnaW5zLgogICAgIHZvaWQgc2V0UGx1Z2luc0VuYWJsZWQoY29u
c3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOwpAQCAtNDMwLDYgKzQzMSw3IEBAIHB1
YmxpYzoKICAgICBib29sIHNob3VsZER1bXBTZWxlY3Rpb25SZWN0KCkgeyByZXR1cm4gbV9kdW1w
U2VsZWN0aW9uUmVjdDsgfQogICAgIGJvb2wgc2hvdWxkRHVtcEJhY2tGb3J3YXJkTGlzdCgpIHsg
cmV0dXJuIG1fZHVtcEJhY2tGb3J3YXJkTGlzdDsgfQogICAgIGJvb2wgc2hvdWxkRHVtcFRpdGxl
Q2hhbmdlcygpIHsgcmV0dXJuIG1fZHVtcFRpdGxlQ2hhbmdlczsgfQorICAgIGJvb2wgc2hvdWxk
RHVtcFBlcm1pc3Npb25DbGllbnRDYWxsYmFja3MoKSB7IHJldHVybiBtX2R1bXBQZXJtaXNzaW9u
Q2xpZW50Q2FsbGJhY2tzOyB9CiAgICAgYm9vbCBzaG91bGREdW1wQ2hpbGRGcmFtZVNjcm9sbFBv
c2l0aW9ucygpIHsgcmV0dXJuIG1fZHVtcENoaWxkRnJhbWVTY3JvbGxQb3NpdGlvbnM7IH0KICAg
ICBib29sIHNob3VsZER1bXBDaGlsZEZyYW1lc0FzVGV4dCgpIHsgcmV0dXJuIG1fZHVtcENoaWxk
RnJhbWVzQXNUZXh0OyB9CiAgICAgYm9vbCBzaG91bGRHZW5lcmF0ZVBpeGVsUmVzdWx0cygpIHsg
cmV0dXJuIG1fZ2VuZXJhdGVQaXhlbFJlc3VsdHM7IH0KQEAgLTU4Nyw2ICs1ODksMTAgQEAgcHJp
dmF0ZToKICAgICAvLyBJZiB0cnVlLCBvdXRwdXQgYSBtZXNzYWdlIHdoZW4gdGhlIHBhZ2UgdGl0
bGUgaXMgY2hhbmdlZC4KICAgICBib29sIG1fZHVtcFRpdGxlQ2hhbmdlczsKIAorICAgIC8vIElm
IHRydWUsIG91dHB1dCBhIGRlc2NyaXB0aXZlIGxpbmUgZWFjaCB0aW1lIGEgcGVybWlzc2lvbiBj
bGllbnQKKyAgICAvLyBjYWxsYmFjayBpcyBpbnZva2VkLiBDdXJyZW50bHkgb25seSBpbXBsZW1l
bnRlZCBmb3IgYWxsb3dJbWFnZS4KKyAgICBib29sIG1fZHVtcFBlcm1pc3Npb25DbGllbnRDYWxs
YmFja3M7CisKICAgICAvLyBJZiB0cnVlLCB0aGUgdGVzdF9zaGVsbCB3aWxsIGdlbmVyYXRlIHBp
eGVsIHJlc3VsdHMgaW4gZHVtcEFzVGV4dCBtb2RlCiAgICAgYm9vbCBtX2dlbmVyYXRlUGl4ZWxS
ZXN1bHRzOwogCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0
U2hlbGwuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcApp
bmRleCAxYWFkMDc0MDEyMmRkM2M4ZDJhMjAwZDE5NDdlNDhhNWMyMDIxNzUxLi43YjE1MDFjOTA5
ZGYzYmExYzlkNTJkMjU3YjdhNjcwYWRmMDE4N2FkIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAKQEAgLTEyMSw3ICsxMjEsNyBAQCBUZXN0U2hlbGw6OlRl
c3RTaGVsbChib29sIHRlc3RTaGVsbE1vZGUpCiAgICAgV2ViUnVudGltZUZlYXR1cmVzOjplbmFi
bGVNZWRpYVN0cmVhbSh0cnVlKTsKICAgICBXZWJSdW50aW1lRmVhdHVyZXM6OmVuYWJsZVdlYkF1
ZGlvKHRydWUpOyAKIAotICAgIG1fd2ViUGVybWlzc2lvbnMgPSBhZG9wdFB0cihuZXcgV2ViUGVy
bWlzc2lvbnMoKSk7CisgICAgbV93ZWJQZXJtaXNzaW9ucyA9IGFkb3B0UHRyKG5ldyBXZWJQZXJt
aXNzaW9ucyh0aGlzKSk7CiAgICAgbV9hY2Nlc3NpYmlsaXR5Q29udHJvbGxlciA9IGFkb3B0UHRy
KG5ldyBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcih0aGlzKSk7CiAgICAgbV9sYXlvdXRUZXN0Q29u
dHJvbGxlciA9IGFkb3B0UHRyKG5ldyBMYXlvdXRUZXN0Q29udHJvbGxlcih0aGlzKSk7CiAgICAg
bV9ldmVudFNlbmRlciA9IGFkb3B0UHRyKG5ldyBFdmVudFNlbmRlcih0aGlzKSk7CmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5jcHAgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5jcHAKaW5kZXggYjIz
OGQ1ZmM1MzdhM2IxNzEzNmYxY2ZhN2I1ODliYzBlNjJhYzk0Zi4uZDZkNTdjMGFiOGYzZTRkNjc1
MmZjZWE0NDI4OWM3YjUwMTEyMDMwZSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vV2ViUGVybWlzc2lvbnMuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2No
cm9taXVtL1dlYlBlcm1pc3Npb25zLmNwcApAQCAtMzEsNyArMzEsMTMgQEAKICNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJXZWJQZXJtaXNzaW9ucy5oIgogCi1XZWJQZXJtaXNzaW9uczo6
V2ViUGVybWlzc2lvbnMoKQorI2luY2x1ZGUgIkxheW91dFRlc3RDb250cm9sbGVyLmgiCisjaW5j
bHVkZSAiVGVzdFNoZWxsLmgiCisjaW5jbHVkZSAiV2ViQ1N0cmluZy5oIgorI2luY2x1ZGUgIldl
YlVSTC5oIgorCitXZWJQZXJtaXNzaW9uczo6V2ViUGVybWlzc2lvbnMoVGVzdFNoZWxsKiBzaGVs
bCkKKyAgICA6IG1fc2hlbGwoc2hlbGwpCiB7CiAgICAgcmVzZXQoKTsKIH0KQEAgLTQwLDkgKzQ2
LDEyIEBAIFdlYlBlcm1pc3Npb25zOjp+V2ViUGVybWlzc2lvbnMoKQogewogfQogCi1ib29sIFdl
YlBlcm1pc3Npb25zOjphbGxvd0ltYWdlcyhXZWJLaXQ6OldlYkZyYW1lKiwgYm9vbCBlbmFibGVk
UGVyU2V0dGluZ3MpCitib29sIFdlYlBlcm1pc3Npb25zOjphbGxvd0ltYWdlKFdlYktpdDo6V2Vi
RnJhbWUqLCBib29sIGVuYWJsZWRQZXJTZXR0aW5ncywgY29uc3QgV2ViS2l0OjpXZWJVUkwmIGlt
YWdlVVJMKQogewotICAgIHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3MgJiYgbV9pbWFnZXNBbGxv
d2VkOworICAgIGJvb2wgYWxsb3dlZCA9IGVuYWJsZWRQZXJTZXR0aW5ncyAmJiBtX2ltYWdlc0Fs
bG93ZWQ7CisgICAgaWYgKGxheW91dFRlc3RDb250cm9sbGVyKCktPnNob3VsZER1bXBQZXJtaXNz
aW9uQ2xpZW50Q2FsbGJhY2tzKCkpCisgICAgICAgIGZwcmludGYoc3Rkb3V0LCAiUEVSTUlTU0lP
TiBDTElFTlQ6IGFsbG93SW1hZ2UoJXMpOiAlc1xuIiwgbV9zaGVsbC0+bm9ybWFsaXplTGF5b3V0
VGVzdFVSTChpbWFnZVVSTC5zcGVjKCkpLmNfc3RyKCksIGFsbG93ZWQgPyAidHJ1ZSIgOiAiZmFs
c2UiKTsKKyAgICByZXR1cm4gYWxsb3dlZDsKIH0KIAogYm9vbCBXZWJQZXJtaXNzaW9uczo6YWxs
b3dTdG9yYWdlKFdlYktpdDo6V2ViRnJhbWUqLCBib29sKQpAQCAtNjAsNyArNjksNyBAQCBib29s
IFdlYlBlcm1pc3Npb25zOjphbGxvd0Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnQoV2ViS2l0OjpX
ZWJGcmFtZSosIGJvb2wgZW5hYgogewogICAgIHJldHVybiBlbmFibGVkUGVyU2V0dGluZ3MgfHwg
bV9kaXNwbGF5aW5nSW5zZWN1cmVDb250ZW50QWxsb3dlZDsKIH0KLSAKKwogYm9vbCBXZWJQZXJt
aXNzaW9uczo6YWxsb3dSdW5uaW5nSW5zZWN1cmVDb250ZW50KFdlYktpdDo6V2ViRnJhbWUqLCBi
b29sIGVuYWJsZWRQZXJTZXR0aW5ncywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBXZWJLaXQ6OldlYlNlY3VyaXR5T3JpZ2luJiwgY29uc3Qg
V2ViS2l0OjpXZWJVUkwmKQogewpAQCAtMTAwLDMgKzEwOSwxMCBAQCB2b2lkIFdlYlBlcm1pc3Np
b25zOjpyZXNldCgpCiAgICAgbV9kaXNwbGF5aW5nSW5zZWN1cmVDb250ZW50QWxsb3dlZCA9IGZh
bHNlOwogICAgIG1fcnVubmluZ0luc2VjdXJlQ29udGVudEFsbG93ZWQgPSBmYWxzZTsKIH0KKwor
Ly8gUHJpdmF0ZSBmdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitMYXlvdXRUZXN0Q29udHJvbGxlciogV2ViUGVybWlz
c2lvbnM6OmxheW91dFRlc3RDb250cm9sbGVyKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9zaGVs
bC0+bGF5b3V0VGVzdENvbnRyb2xsZXIoKTsKK30KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25zLmggYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9XZWJQZXJtaXNzaW9ucy5oCmluZGV4IDc4ZDk2YmFjNGVhZTQ2ZmNhMWUzYmI2ZGEz
ZjZlYzAyMzg4ZGExMTguLmJhY2EzYTE3MTE1MDY5ZmQwMjZiNDI5MWFiMjE3NDJmMTA4ZDJkZGUg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlBlcm1pc3Npb25z
LmgKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViUGVybWlzc2lvbnMuaApA
QCAtMzMsMTMgKzMzLDE2IEBACiAKICNpbmNsdWRlICJXZWJQZXJtaXNzaW9uQ2xpZW50LmgiCiAK
K2NsYXNzIExheW91dFRlc3RDb250cm9sbGVyOworY2xhc3MgVGVzdFNoZWxsOworCiBjbGFzcyBX
ZWJQZXJtaXNzaW9ucyA6IHB1YmxpYyBXZWJLaXQ6OldlYlBlcm1pc3Npb25DbGllbnQgewogcHVi
bGljOgotICAgIFdlYlBlcm1pc3Npb25zKCk7CisgICAgV2ViUGVybWlzc2lvbnMoVGVzdFNoZWxs
Kik7CiAgICAgdmlydHVhbCB+V2ViUGVybWlzc2lvbnMoKTsKIAogICAgIC8vIE92ZXJyaWRlIFdl
YlBlcm1pc3Npb25DbGllbnQgbWV0aG9kcy4KLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dJbWFnZXMo
V2ViS2l0OjpXZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzKTsKKyAgICB2aXJ0dWFs
IGJvb2wgYWxsb3dJbWFnZShXZWJLaXQ6OldlYkZyYW1lKiwgYm9vbCBlbmFibGVkUGVyU2V0dGlu
Z3MsIGNvbnN0IFdlYktpdDo6V2ViVVJMJiBpbWFnZVVSTCk7CiAgICAgdmlydHVhbCBib29sIGFs
bG93U3RvcmFnZShXZWJLaXQ6OldlYkZyYW1lKiwgYm9vbCBsb2NhbCk7CiAgICAgdmlydHVhbCBi
b29sIGFsbG93UGx1Z2lucyhXZWJLaXQ6OldlYkZyYW1lKiwgYm9vbCBlbmFibGVkUGVyU2V0dGlu
Z3MpOwogICAgIHZpcnR1YWwgYm9vbCBhbGxvd0Rpc3BsYXlpbmdJbnNlY3VyZUNvbnRlbnQoV2Vi
S2l0OjpXZWJGcmFtZSosIGJvb2wgZW5hYmxlZFBlclNldHRpbmdzLApAQCAtNTgsNiArNjEsMTEg
QEAgcHVibGljOgogICAgIHZvaWQgcmVzZXQoKTsKIAogcHJpdmF0ZToKKyAgICBMYXlvdXRUZXN0
Q29udHJvbGxlciogbGF5b3V0VGVzdENvbnRyb2xsZXIoKSBjb25zdDsKKworICAgIC8vIE5vbi1v
d25pbmcgcG9pbnRlci4gVGhlIFdlYlBlcm1pc3Npb25zIGluc3RhbmNlIGlzIG93bmVkIGJ5IHRo
aXMgVGVzdFNoZWxsIGluc3RhbmNlLgorICAgIFRlc3RTaGVsbCogbV9zaGVsbDsKKwogICAgIGJv
b2wgbV9pbWFnZXNBbGxvd2VkOwogICAgIGJvb2wgbV9zdG9yYWdlQWxsb3dlZDsKICAgICBib29s
IG1fcGx1Z2luc0FsbG93ZWQ7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>