<?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>113626</bug_id>
          
          <creation_ts>2013-03-29 16:23:21 -0700</creation_ts>
          <short_desc>Resources from non-HTTP schemes should not be cached indefinitely</short_desc>
          <delta_ts>2013-05-30 12:37:11 -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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>113632</dependson>
          <blocked>116259</blocked>
    
    <blocked>117007</blocked>
    
    <blocked>116906</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andy Estes">aestes</reporter>
          <assigned_to name="Andy Estes">aestes</assigned_to>
          <cc>ap</cc>
    
    <cc>fpizlo</cc>
    
    <cc>japhet</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>866469</commentid>
    <comment_count>0</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-03-29 16:23:21 -0700</bug_when>
    <thetext>Let cached resources from file: schemes expire immediately</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>866475</commentid>
    <comment_count>1</comment_count>
      <attachid>195817</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-03-29 16:29:57 -0700</bug_when>
    <thetext>Created attachment 195817
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>866476</commentid>
    <comment_count>2</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-03-29 16:30:30 -0700</bug_when>
    <thetext>&lt;rdar://problem/13313769&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>866495</commentid>
    <comment_count>3</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-03-29 17:02:51 -0700</bug_when>
    <thetext>Committed r147263: &lt;http://trac.webkit.org/changeset/147263&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>866531</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-29 18:58:31 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 113632</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>866541</commentid>
    <comment_count>5</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-03-29 20:19:23 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Re-opened since this is blocked by bug 113632

This failure is expected given how the test is written. This needs to be an http test to verify caching behavior. I&apos;ll fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889611</commentid>
    <comment_count>6</comment_count>
      <attachid>201905</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-15 18:23:21 -0700</bug_when>
    <thetext>Created attachment 201905
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889639</commentid>
    <comment_count>7</comment_count>
      <attachid>201905</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-05-15 19:38:38 -0700</bug_when>
    <thetext>Comment on attachment 201905
Patch

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

Why don’t you use the short format: https://webkit.org/b/116199

&gt; Source/WebCore/ChangeLog:12
&gt; +        Writing a test for this is blocked on &lt;https://bugs.webkit.org/show_bug.cgi?id=116199&gt;.

Why don’t you use the short format: https://webkit.org/b/116199 and we don’t need &lt;&gt; around the url.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889640</commentid>
    <comment_count>8</comment_count>
      <attachid>201905</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-05-15 19:41:08 -0700</bug_when>
    <thetext>Comment on attachment 201905
Patch

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

&gt; Source/WebCore/platform/SchemeRegistry.cpp:130
&gt; +#if PLATFORM(MAC)
&gt; +        indefinitelyCacheableSchemes.add(&quot;applewebdata&quot;);
&gt; +#endif
&gt; +        indefinitelyCacheableSchemes.add(&quot;blob&quot;);
&gt; +        indefinitelyCacheableSchemes.add(&quot;data&quot;);

Since there are only 3 items, it’s probably faster to string compare instead as in scheme == “applewebdata” || scheme == “blob” || scheme == “data”.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889644</commentid>
    <comment_count>9</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-15 19:53:30 -0700</bug_when>
    <thetext>Committed r150169: &lt;http://trac.webkit.org/changeset/150169&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889675</commentid>
    <comment_count>10</comment_count>
      <attachid>201905</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-15 21:40:05 -0700</bug_when>
    <thetext>Comment on attachment 201905
Patch

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

&gt; Source/WebCore/platform/SchemeRegistry.cpp:129
&gt; +        indefinitelyCacheableSchemes.add(&quot;blob&quot;);

This is not correct. When a blob is backed by a file, and the file changes, loading form the blob should return an error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893668</commentid>
    <comment_count>11</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-05-25 18:39:10 -0700</bug_when>
    <thetext>This is a *MASSIVE* regression in script caching performance.  SunSpider, V8Spider, and JSBench all get a lot slower.  I&apos;ve narrowed it down to this revision.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893669</commentid>
    <comment_count>12</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-05-25 18:44:28 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; This is a *MASSIVE* regression in script caching performance.  SunSpider, V8Spider, and JSBench all get a lot slower.  I&apos;ve narrowed it down to this revision.

Oops!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893670</commentid>
    <comment_count>13</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-05-25 18:45:37 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; This is a *MASSIVE* regression in script caching performance.  SunSpider, V8Spider, and JSBench all get a lot slower.  I&apos;ve narrowed it down to this revision.
&gt; 
&gt; Oops!

Wait, I&apos;m still confirming.  It looks like it regresses performance with how we measure in DumpRenderTree, but it&apos;s not clearly a regression in browser.

I&apos;m investigating...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893672</commentid>
    <comment_count>14</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-05-25 18:51:56 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (In reply to comment #12)
&gt; &gt; (In reply to comment #11)
&gt; &gt; &gt; This is a *MASSIVE* regression in script caching performance.  SunSpider, V8Spider, and JSBench all get a lot slower.  I&apos;ve narrowed it down to this revision.
&gt; &gt; 
&gt; &gt; Oops!
&gt; 
&gt; Wait, I&apos;m still confirming.  It looks like it regresses performance with how we measure in DumpRenderTree, but it&apos;s not clearly a regression in browser.
&gt; 
&gt; I&apos;m investigating...

Yeah, this is DRT-only.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893673</commentid>
    <comment_count>15</comment_count>
      <attachid>201905</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-05-25 18:52:55 -0700</bug_when>
    <thetext>Comment on attachment 201905
Patch

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

&gt; Source/WebCore/loader/cache/CachedResource.cpp:423
&gt; +    // Don&apos;t cache other non-HTTP resources since we can&apos;t check for freshness.
&gt; +    if (!m_response.url().protocolIsInHTTPFamily())
&gt; +        return 0;

What effect does this have on file://?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893698</commentid>
    <comment_count>16</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-25 21:53:07 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; (From update of attachment 201905 [details])
&gt; View in context: http://bugs.webkit.org/attachment.cgi?id=201905&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/loader/cache/CachedResource.cpp:423
&gt; &gt; +    // Don&apos;t cache other non-HTTP resources since we can&apos;t check for freshness.
&gt; &gt; +    if (!m_response.url().protocolIsInHTTPFamily())
&gt; &gt; +        return 0;
&gt; 
&gt; What effect does this have on file://?

The effect is that file: resources in the memory cache expire immediately, so subsequent loads will hit the filesystem.

This change was made to mitigate the compatibility fallout from caching main resources. Some WebKit clients that we can&apos;t break update their UI by overwriting a file on disk and reloading their WebView, so we can&apos;t assume that file: main resources can be cached indefinitely. And since many custom schemes are backed by files, we can&apos;t assume if for those either.

However, I think this change has had a significant impact on our testing infrastructure (there&apos;s also been some additional test flakiness) and so we might want to consider a different approach.

One solution would be to implement a freshness check for files, but that would involve calling stat() on each memory cache load, which isn&apos;t cheap and might even hang the main thread on a network filesystem.

The other solution might be to limit this change to the specific apps that we know need it for correctness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893699</commentid>
    <comment_count>17</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-05-25 21:59:00 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; One solution would be to implement a freshness check for files, but that would involve calling stat() on each memory cache load, which isn’t cheap and might even hang the main thread on a network filesystem.

Can’t we do this only for local (file protocol) resources?

&gt; The other solution might be to limit this change to the specific apps that we know need it for correctness.

Maybe we can add a setting to turn this on/off?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893701</commentid>
    <comment_count>18</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-05-25 22:16:43 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; (In reply to comment #15)
&gt; &gt; (From update of attachment 201905 [details] [details])
&gt; &gt; View in context: http://bugs.webkit.org/attachment.cgi?id=201905&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/loader/cache/CachedResource.cpp:423
&gt; &gt; &gt; +    // Don&apos;t cache other non-HTTP resources since we can&apos;t check for freshness.
&gt; &gt; &gt; +    if (!m_response.url().protocolIsInHTTPFamily())
&gt; &gt; &gt; +        return 0;
&gt; &gt; 
&gt; &gt; What effect does this have on file://?
&gt; 
&gt; The effect is that file: resources in the memory cache expire immediately, so subsequent loads will hit the filesystem.
&gt; 
&gt; This change was made to mitigate the compatibility fallout from caching main resources. Some WebKit clients that we can&apos;t break update their UI by overwriting a file on disk and reloading their WebView, so we can&apos;t assume that file: main resources can be cached indefinitely. And since many custom schemes are backed by files, we can&apos;t assume if for those either.
&gt; 
&gt; However, I think this change has had a significant impact on our testing infrastructure (there&apos;s also been some additional test flakiness) and so we might want to consider a different approach.

What about giving the test infrastructure a testFile:// protocol that works like file:// did before?

&gt; 
&gt; One solution would be to implement a freshness check for files, but that would involve calling stat() on each memory cache load, which isn&apos;t cheap and might even hang the main thread on a network filesystem.
&gt; 
&gt; The other solution might be to limit this change to the specific apps that we know need it for correctness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893711</commentid>
    <comment_count>19</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-25 23:30:08 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; (In reply to comment #16)
&gt; &gt; One solution would be to implement a freshness check for files, but that would involve calling stat() on each memory cache load, which isn’t cheap and might even hang the main thread on a network filesystem.
&gt; 
&gt; Can’t we do this only for local (file protocol) resources?

Well, file: URLs can still reference network resources (e.g. file:///Volumes/SomeAFPMount/...).

&gt; 
&gt; &gt; The other solution might be to limit this change to the specific apps that we know need it for correctness.
&gt; 
&gt; Maybe we can add a setting to turn this on/off?

Yeah, this is a good idea. That lets us turn the new behavior on/off per-client, and it sounds like DRT/WKTR/TestWebKitAPI will want to turn it off.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893714</commentid>
    <comment_count>20</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-25 23:35:38 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; (In reply to comment #16)
&gt; &gt; (In reply to comment #15)
&gt; &gt; &gt; (From update of attachment 201905 [details] [details] [details])
&gt; &gt; &gt; View in context: http://bugs.webkit.org/attachment.cgi?id=201905&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebCore/loader/cache/CachedResource.cpp:423
&gt; &gt; &gt; &gt; +    // Don&apos;t cache other non-HTTP resources since we can&apos;t check for freshness.
&gt; &gt; &gt; &gt; +    if (!m_response.url().protocolIsInHTTPFamily())
&gt; &gt; &gt; &gt; +        return 0;
&gt; &gt; &gt; 
&gt; &gt; &gt; What effect does this have on file://?
&gt; &gt; 
&gt; &gt; The effect is that file: resources in the memory cache expire immediately, so subsequent loads will hit the filesystem.
&gt; &gt; 
&gt; &gt; This change was made to mitigate the compatibility fallout from caching main resources. Some WebKit clients that we can&apos;t break update their UI by overwriting a file on disk and reloading their WebView, so we can&apos;t assume that file: main resources can be cached indefinitely. And since many custom schemes are backed by files, we can&apos;t assume if for those either.
&gt; &gt; 
&gt; &gt; However, I think this change has had a significant impact on our testing infrastructure (there&apos;s also been some additional test flakiness) and so we might want to consider a different approach.
&gt; 
&gt; What about giving the test infrastructure a testFile:// protocol that works like file:// did before?

I actually really like this idea, because it makes better sense to think about all this in terms of schemes. However, I don&apos;t think we have the concept of aliasing file: to another scheme in WebCore, so it&apos;d require a port-by-port effort to implement the testFile: scheme handler.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893716</commentid>
    <comment_count>21</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-05-25 23:49:19 -0700</bug_when>
    <thetext>(In reply to comment #20)
&gt; (In reply to comment #18)
&gt; &gt; (In reply to comment #16)
&gt; &gt;
&gt; &gt; What about giving the test infrastructure a testFile:// protocol that works like file:// did before?
&gt; 
&gt; I actually really like this idea, because it makes better sense to think about all this in terms of schemes. However, I don&apos;t think we have the concept of aliasing file: to another scheme in WebCore, so it&apos;d require a port-by-port effort to implement the testFile: scheme handler.

For that reason, I prefer adding settings because we can easily override settings via internals.settings.*.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893717</commentid>
    <comment_count>22</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-25 23:59:10 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; (In reply to comment #20)
&gt; &gt; (In reply to comment #18)
&gt; &gt; &gt; (In reply to comment #16)
&gt; &gt; &gt;
&gt; &gt; &gt; What about giving the test infrastructure a testFile:// protocol that works like file:// did before?
&gt; &gt; 
&gt; &gt; I actually really like this idea, because it makes better sense to think about all this in terms of schemes. However, I don&apos;t think we have the concept of aliasing file: to another scheme in WebCore, so it&apos;d require a port-by-port effort to implement the testFile: scheme handler.
&gt; 
&gt; For that reason, I prefer adding settings because we can easily override settings via internals.settings.*.

I agree. I can do this now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893718</commentid>
    <comment_count>23</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-26 00:11:56 -0700</bug_when>
    <thetext>&gt; Some WebKit clients that we can&apos;t break update their UI by overwriting a file on disk and reloading their WebView

Are they actually doing a reload? Because supporting that does not necessarily mean never caching any non-http resources. We can differentiate between normal loads and reloads.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895193</commentid>
    <comment_count>24</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-29 13:50:36 -0700</bug_when>
    <thetext>(In reply to comment #23)
&gt; &gt; Some WebKit clients that we can&apos;t break update their UI by overwriting a file on disk and reloading their WebView
&gt; 
&gt; Are they actually doing a reload? Because supporting that does not necessarily mean never caching any non-http resources. We can differentiate between normal loads and reloads.

No, not an actual reload in the API sense. Just loading the same main resource again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895194</commentid>
    <comment_count>25</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2013-05-29 13:52:06 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; This is a *MASSIVE* regression in script caching performance.  SunSpider, V8Spider, and JSBench all get a lot slower.  I&apos;ve narrowed it down to this revision.

&lt;http://trac.webkit.org/changeset/150863&gt; should have fixed the regression.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895645</commentid>
    <comment_count>26</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-05-30 12:37:11 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/150863 fixed this problem.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195817</attachid>
            <date>2013-03-29 16:29:57 -0700</date>
            <delta_ts>2013-05-15 18:23:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-113626-20130329162955.patch</filename>
            <type>text/plain</type>
            <size>2394</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ3MjUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWMzYTI0NTg1MjcwYTJl
M2EwMjViOTcyYjNmMTBmMzZhNTA4ZWU2Ny4uMmI4NDA0NjZlMDA2NjQ5ODliZTNjOTgwZTY1Mzhl
MDlmMjQ3MzA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEzLTAzLTI5ICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBMZXQgY2FjaGVkIHJlc291cmNl
cyBmcm9tIGZpbGU6IHNjaGVtZXMgZXhwaXJlIGltbWVkaWF0ZWx5CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTM2MjYKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKQorCisgICAgICAgIFdoZW4gYSBDYWNoZWRSZXNvdXJjZSB3YXMg
bG9hZGVkIGZyb20gYSBmaWxlOiBVUkwsIHdlIHdvdWxkIGdpdmUgaXQgYW4KKyAgICAgICAgaW5k
ZWZpbml0ZSBmcmVzaG5lc3MgbGlmZXRpbWUuIFRoaXMgbWVhbnMgdGhhdCB3ZSB3b3VsZCBjb250
aW51ZSB0bworICAgICAgICBzZXJ2ZSBhIHN0YWxlIHJlc291cmNlIGZyb20gdGhlIG1lbW9yeSBj
YWNoZSBldmVuIGlmIHRoZSBmaWxlIHdhcworICAgICAgICBjaGFuZ2VkIG9uIGRpc2suIFdpdGgg
dGhlIGludHJvZHVjdGlvbiBvZiBtYWluIHJlc291cmNlIGNhY2hpbmcsIHRoaXMKKyAgICAgICAg
YmVoYXZpb3IgYnJva2UgYXQgbGVhc3Qgb25lIHRoaXJkLXBhcnR5IFdlYktpdCBhcHAgKHNlZSA8
cmRhcjovL3Byb2JsZW0vMTMzMTM3Njk+KS4KKworICAgICAgICBXZSBzaG91bGQgaW5zdGVhZCBs
ZXQgZmlsZSByZXNvdXJjZXMgZXhwaXJlIGltbWVkaWF0ZWx5LiBNb2Rlcm4KKyAgICAgICAgZmls
ZXN5c3RlbXMgaW1wbGVtZW50IHRoZWlyIG93biBjYWNoaW5nLCBzbyB3ZSBzaG91bGQgZ2V0IGdv
b2QKKyAgICAgICAgcGVyZm9ybWFuY2UgZm9yIG11bHRpcGxlIHJlYWRzIG9mIHVubW9kaWZpZWQg
ZmlsZXMgd2l0aG91dCBkb2luZyBvdXIKKyAgICAgICAgb3duIGNhY2hpbmcuCisKKyAgICAgICAg
KiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2Fj
aGVkUmVzb3VyY2U6OmZyZXNobmVzc0xpZmV0aW1lKTogZmlsZTogVVJMcyBzaG91bGQgaGF2ZSBh
CisgICAgICAgIDAgZnJlc2huZXNzIGxpZmV0aW1lLgorCiAyMDEzLTAzLTI5ICBCZW0gSm9uZXMt
QmV5ICA8YmpvbmVzYmVAYWRvYmUuY29tPgogCiAgICAgICAgIFtDU1MgRXhjbHVzaW9uc10gc2hh
cGUgb3V0c2lkZSBzZWdtZW50cyBub3QgcHJvcGVybHkgY2FsY3VsYXRlZCBmb3IgZWxsaXBzZXMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCmluZGV4
IGRkNjc3MmRhZTc4ZjM3NWM1NTZlNTU4NDE1NzdhZGMwNjQyNzZiZTEuLjRjN2E3NjMxZjM0MjM4
ZTYyOGQ4YTY1OWQ5NjRmYjkzMTJkNzU0OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcApAQCAtNDMyLDcgKzQzMiwxNCBAQCBkb3VibGUgQ2Fj
aGVkUmVzb3VyY2U6OmN1cnJlbnRBZ2UoKSBjb25zdAogICAgIAogZG91YmxlIENhY2hlZFJlc291
cmNlOjpmcmVzaG5lc3NMaWZldGltZSgpIGNvbnN0CiB7Ci0gICAgLy8gQ2FjaGUgbm9uLWh0dHAg
cmVzb3VyY2VzIGxpYmVyYWxseQorICAgIC8vIExldCBmaWxlOiByZXNvdXJjZXMgZXhwaXJlIGlt
bWVkaWF0ZWx5IHNvIHRoYXQgd2UgZG9uJ3Qgc2VydmUgYSBzdGFsZQorICAgIC8vIHJlc291cmNl
IHdoZW4gYSBmaWxlIGhhcyBjaGFuZ2VkIHVuZGVybmVhdGggdXMuIE1vZGVybiBmaWxlc3lzdGVt
cworICAgIC8vIGltcGxlbWVudCB0aGVpciBvd24gY2FjaGVzLCBzbyB3ZSBzaG91bGQgc3RpbGwg
Z2V0IGdvb2QgcGVyZm9ybWFuY2UgaWYKKyAgICAvLyB0aGUgcmVzb3VyY2UgaGFzbid0IGNoYW5n
ZWQuCisgICAgaWYgKG1fcmVzcG9uc2UudXJsKCkucHJvdG9jb2xJcygiZmlsZSIpKQorICAgICAg
ICByZXR1cm4gMDsKKworICAgIC8vIENhY2hlIG90aGVyIG5vbi1odHRwIHJlc291cmNlcyBsaWJl
cmFsbHkuCiAgICAgaWYgKCFtX3Jlc3BvbnNlLnVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1pbHko
KSkKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6bWF4KCk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201905</attachid>
            <date>2013-05-15 18:23:21 -0700</date>
            <delta_ts>2013-05-25 18:52:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-113626-20130515182217.patch</filename>
            <type>text/plain</type>
            <size>48948</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwMTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjcxMjM1ODMyMjM2YmVl
NWE3ZWY2MDM1YzYyOTk3NDI5NGIyMzNjMC4uYmE0MzhkZjk4MzU4NzFiMmM5MDIzYjU4N2ZiNzk3
ZTMwOThmMzQ5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTA1LTE1ICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBSZXNvdXJjZXMgZnJvbSBub24t
SFRUUCBzY2hlbWVzIHNob3VsZCBub3QgYmUgY2FjaGVkIGluZGVmaW5pdGVseQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzNjI2CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2l0aCB0aGUgZXhjZXB0aW9u
IG9mIHNjaGVtZXMgdGhhdCB3ZSBrbm93IHdpbGwgYWx3YXlzIHJldHVybiB0aGUgc2FtZQorICAg
ICAgICByZXN1bHQgZm9yIGEgZ2l2ZW4gVVJMLCB3ZSBzaG91bGQgbm90IGluZGVmaW5pdGVseSBj
YWNoZSBub24tSFRUUAorICAgICAgICByZXNvdXJjZXMgd2hlbiB0aGVpciBmcmVzaG5lc3MgY2Fu
bm90IGJlIHZlcmlmaWVkLgorCisgICAgICAgIFdyaXRpbmcgYSB0ZXN0IGZvciB0aGlzIGlzIGJs
b2NrZWQgb24gPGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTYxOTk+
LgorCisgICAgICAgIFRoZSBmb2xsb3dpbmcgdHdvIGV4aXN0aW5nIHRlc3RzIG9mIG1lbW9yeSBj
YWNoZSBiZWhhdmlvciB3ZXJlCisgICAgICAgIGNvbnZlcnRlZCB0byBIVFRQIHRlc3RzIHNvIHRo
YXQgdGhleSBjb250aW51ZSB0byBmdW5jdGlvbiBhcyBleHBlY3RlZDoKKworICAgICAgICBUZXN0
czogaHR0cC90ZXN0cy9jYWNoZS9kaXNwbGF5LWltYWdlLXVuc2V0LWFsbG93cy1jYWNoZWQtaW1h
Z2UtbG9hZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL2NhY2hlL3dpbGxzZW5kcmVx
dWVzdC1yZXR1cm5zLW51bGwtZm9yLW1lbW9yeS1jYWNoZS1sb2FkLmh0bWwKKworICAgICAgICAq
IGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNo
ZWRSZXNvdXJjZTo6ZnJlc2huZXNzTGlmZXRpbWUpOiBSZXR1cm5lZCBhIGZyZXNobmVzcworICAg
ICAgICBsaWZldGltZSBvZiAwIGZvciBub24tSFRUUCBzY2hlbWVzIHRoYXQgY2FuJ3QgYmUgaW5k
ZWZpbml0ZWx5IGNhY2hlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9TY2hlbWVSZWdpc3RyeS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjppbmRlZmluaXRlbHlDYWNoZWFibGVTY2hlbWVzKTogQ3JlYXRl
ZCBhIFVSTFNjaGVtZXNNYXAgb2YKKyAgICAgICAgc2NoZW1lcyB3aG9zZSByZXNwb25zZXMgY2Fu
IGJlIGluZGVmaW5pdGVseSBjYWNoZWQuCisgICAgICAgIChXZWJDb3JlOjpTY2hlbWVSZWdpc3Ry
eTo6c2hvdWxkQ2FjaGVSZXNwb25zZXNGcm9tVVJMU2NoZW1lSW5kZWZpbml0ZWx5KToKKyAgICAg
ICAgQ2hlY2tlZCB3aGV0aGVyIHRoZSBzY2hlbWUgaXMgY29udGFpbmVkIGluIGluZGVmaW5pdGVs
eUNhY2hlYWJsZVNjaGVtZXMuCisgICAgICAgICogcGxhdGZvcm0vU2NoZW1lUmVnaXN0cnkuaDoK
KwogMjAxMy0wNS0wOCAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+
CiAKICAgICAgICAgUHJvY2VzcyBzdXBwcmVzc2lvbiBzaG91bGQgdGhyb3R0bGUgc2NyaXB0ZWQg
YW5pbWF0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJj
ZS5jcHAKaW5kZXggMDllZmFlYTllZjFkZTMyZGE2MTEzNzQ2ZmE1Zjk5MDg4OTc4M2ViYy4uMjJj
MjY1YzFhNTE5MGJkODBhZmUyOGJmMDc4YmRjODVkM2EyNThjYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCkBAIC0yNCw3ICsyNCw2IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKIAotI2luY2x1
ZGUgIk1lbW9yeUNhY2hlLmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VDbGllbnQuaCIKICNp
bmNsdWRlICJDYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oIgogI2luY2x1ZGUgIkNhY2hlZFJl
c291cmNlSGFuZGxlLmgiCkBAIC0zOCwxMSArMzcsMTMgQEAKICNpbmNsdWRlICJLVVJMLmgiCiAj
aW5jbHVkZSAiTG9hZGVyU3RyYXRlZ3kuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVk
ZSAiTWVtb3J5Q2FjaGUuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKICNpbmNs
dWRlICJQdXJnZWFibGVCdWZmZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUJ1ZmZlci5oIgogI2lu
Y2x1ZGUgIlJlc291cmNlSGFuZGxlLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkU2NoZWR1bGVy
LmgiCisjaW5jbHVkZSAiU2NoZW1lUmVnaXN0cnkuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdp
bi5oIgogI2luY2x1ZGUgIlNlY3VyaXR5UG9saWN5LmgiCiAjaW5jbHVkZSAiU3VicmVzb3VyY2VM
b2FkZXIuaCIKQEAgLTM5OSw3ICs0MDAsNyBAQCBib29sIENhY2hlZFJlc291cmNlOjppc0V4cGly
ZWQoKSBjb25zdAogCiAgICAgcmV0dXJuIGN1cnJlbnRBZ2UoKSA+IGZyZXNobmVzc0xpZmV0aW1l
KCk7CiB9Ci0gICAgCisKIGRvdWJsZSBDYWNoZWRSZXNvdXJjZTo6Y3VycmVudEFnZSgpIGNvbnN0
CiB7CiAgICAgLy8gUkZDMjYxNiAxMy4yLjMKQEAgLTQxMSwxMyArNDEyLDE2IEBAIGRvdWJsZSBD
YWNoZWRSZXNvdXJjZTo6Y3VycmVudEFnZSgpIGNvbnN0CiAgICAgZG91YmxlIHJlc2lkZW50VGlt
ZSA9IGN1cnJlbnRUaW1lKCkgLSBtX3Jlc3BvbnNlVGltZXN0YW1wOwogICAgIHJldHVybiBjb3Jy
ZWN0ZWRSZWNlaXZlZEFnZSArIHJlc2lkZW50VGltZTsKIH0KLSAgICAKKwogZG91YmxlIENhY2hl
ZFJlc291cmNlOjpmcmVzaG5lc3NMaWZldGltZSgpIGNvbnN0CiB7Ci0gICAgLy8gQ2FjaGUgbm9u
LWh0dHAgcmVzb3VyY2VzIGxpYmVyYWxseQotICAgIGlmICghbV9yZXNwb25zZS51cmwoKS5wcm90
b2NvbElzSW5IVFRQRmFtaWx5KCkpCisgICAgaWYgKFNjaGVtZVJlZ2lzdHJ5OjpzaG91bGRDYWNo
ZVJlc3BvbnNlc0Zyb21VUkxTY2hlbWVJbmRlZmluaXRlbHkobV9yZXNwb25zZS51cmwoKS5wcm90
b2NvbCgpKSkKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVtZXJpY19saW1pdHM8ZG91YmxlPjo6bWF4
KCk7CiAKKyAgICAvLyBEb24ndCBjYWNoZSBvdGhlciBub24tSFRUUCByZXNvdXJjZXMgc2luY2Ug
d2UgY2FuJ3QgY2hlY2sgZm9yIGZyZXNobmVzcy4KKyAgICBpZiAoIW1fcmVzcG9uc2UudXJsKCku
cHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQorICAgICAgICByZXR1cm4gMDsKKwogICAgIC8vIFJG
QzI2MTYgMTMuMi40CiAgICAgZG91YmxlIG1heEFnZVZhbHVlID0gbV9yZXNwb25zZS5jYWNoZUNv
bnRyb2xNYXhBZ2UoKTsKICAgICBpZiAoc3RkOjppc2Zpbml0ZShtYXhBZ2VWYWx1ZSkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY2hlbWVSZWdpc3RyeS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY2hlbWVSZWdpc3RyeS5jcHAKaW5kZXggNWNmY2JiMTdjYTMy
YTkxM2I0NTkxMDkxZWMzNTZiZDc2MWQ3ODlmNS4uYjI5NWRiOTU2YmUxMTFmZTg4ZTVlOTFkZjU5
ZWM5NDViMzQ2ZmEyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NoZW1l
UmVnaXN0cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1NjaGVtZVJlZ2lzdHJ5
LmNwcApAQCAtMTE4LDYgKzExOCwyMSBAQCBzdGF0aWMgVVJMU2NoZW1lc01hcCYgbm90QWxsb3dp
bmdKYXZhc2NyaXB0VVJMc1NjaGVtZXMoKQogICAgIHJldHVybiBub3RBbGxvd2luZ0phdmFzY3Jp
cHRVUkxzU2NoZW1lczsKIH0KIAorc3RhdGljIFVSTFNjaGVtZXNNYXAmIGluZGVmaW5pdGVseUNh
Y2hlYWJsZVNjaGVtZXMoKQoreworICAgIERFRklORV9TVEFUSUNfTE9DQUwoVVJMU2NoZW1lc01h
cCwgaW5kZWZpbml0ZWx5Q2FjaGVhYmxlU2NoZW1lcywgKCkpOworCisgICAgaWYgKGluZGVmaW5p
dGVseUNhY2hlYWJsZVNjaGVtZXMuaXNFbXB0eSgpKSB7CisjaWYgUExBVEZPUk0oTUFDKQorICAg
ICAgICBpbmRlZmluaXRlbHlDYWNoZWFibGVTY2hlbWVzLmFkZCgiYXBwbGV3ZWJkYXRhIik7Cisj
ZW5kaWYKKyAgICAgICAgaW5kZWZpbml0ZWx5Q2FjaGVhYmxlU2NoZW1lcy5hZGQoImJsb2IiKTsK
KyAgICAgICAgaW5kZWZpbml0ZWx5Q2FjaGVhYmxlU2NoZW1lcy5hZGQoImRhdGEiKTsKKyAgICB9
CisgICAgCisgICAgcmV0dXJuIGluZGVmaW5pdGVseUNhY2hlYWJsZVNjaGVtZXM7Cit9CisKIHZv
aWQgU2NoZW1lUmVnaXN0cnk6OnJlZ2lzdGVyVVJMU2NoZW1lQXNMb2NhbChjb25zdCBTdHJpbmcm
IHNjaGVtZSkKIHsKICAgICBsb2NhbFVSTFNjaGVtZXMoKS5hZGQoc2NoZW1lKTsKQEAgLTMyMCw0
ICszMzUsMTEgQEAgYm9vbCBTY2hlbWVSZWdpc3RyeTo6c2NoZW1lU2hvdWxkQnlwYXNzQ29udGVu
dFNlY3VyaXR5UG9saWN5KGNvbnN0IFN0cmluZyYgc2NoZW0KICAgICByZXR1cm4gQ29udGVudFNl
Y3VyaXR5UG9saWN5QnlwYXNzaW5nU2NoZW1lcygpLmNvbnRhaW5zKHNjaGVtZSk7CiB9CiAKK2Jv
b2wgU2NoZW1lUmVnaXN0cnk6OnNob3VsZENhY2hlUmVzcG9uc2VzRnJvbVVSTFNjaGVtZUluZGVm
aW5pdGVseShjb25zdCBTdHJpbmcmIHNjaGVtZSkKK3sKKyAgICBpZiAoc2NoZW1lLmlzRW1wdHko
KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBpbmRlZmluaXRlbHlDYWNoZWFi
bGVTY2hlbWVzKCkuY29udGFpbnMoc2NoZW1lKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2NoZW1lUmVnaXN0cnkuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1NjaGVtZVJlZ2lzdHJ5LmgKaW5kZXggZjNiZDA3MThl
M2YxZmRjMTZlMjY4ZTc2MDBiYTc2NGVjOWUzMmY0My4uMzcwMGI4MWRmNjBiNjE0MTE5M2EzMDJh
NzNmZGI3ODc4ZTNhYmRhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2No
ZW1lUmVnaXN0cnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY2hlbWVSZWdpc3Ry
eS5oCkBAIC04OCw2ICs4OCw5IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCByZWdpc3RlclVS
TFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5KGNvbnN0IFN0cmluZyYgc2No
ZW1lKTsKICAgICBzdGF0aWMgdm9pZCByZW1vdmVVUkxTY2hlbWVSZWdpc3RlcmVkQXNCeXBhc3Np
bmdDb250ZW50U2VjdXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiBzY2hlbWUpOwogICAgIHN0YXRp
YyBib29sIHNjaGVtZVNob3VsZEJ5cGFzc0NvbnRlbnRTZWN1cml0eVBvbGljeShjb25zdCBTdHJp
bmcmIHNjaGVtZSk7CisgICAgCisgICAgLy8gU2NoZW1lcyB3aG9zZSByZXNwb25zZXMgY2FuIGJl
IGNhY2hlZCBpbmRlZmluaXRlbHkuCisgICAgc3RhdGljIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25z
ZXNGcm9tVVJMU2NoZW1lSW5kZWZpbml0ZWx5KGNvbnN0IFN0cmluZyYgc2NoZW1lKTsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2ZmI3YTEwY2NkZTAxYmU2YzEzZjM1MzNk
NGMyZTQ5YTEzMjcxODU4Li42YzBhNjVhMjUwZTE4MWI1OWFiZDkyNWEyNDEwODQ0YTMwNjJjZTU2
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTMtMDUtMTUgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNA
YXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNlcyBmcm9tIG5vbi1IVFRQIHNjaGVtZXMgc2hv
dWxkIG5vdCBiZSBjYWNoZWQgaW5kZWZpbml0ZWx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTM2MjYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IGV4aXN0aW5nIG1lbW9yeSBjYWNoZSB0ZXN0
cyB0byBIVFRQIHRlc3RzLgorCisgICAgICAgICogZmFzdC9sb2FkZXIvcmVzb3VyY2VzL2NvbXBh
c3MuanBnOiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvbG9hZGVyL3Jlc291cmNlcy9pbWFnZTEu
aHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2xvYWRlci9yZXNvdXJjZXMvaW1hZ2UyLmh0
bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9sb2FkZXIvd2lsbHNlbmRyZXF1ZXN0LXJldHVy
bnMtbnVsbC1mb3ItbWVtb3J5LWNhY2hlLWxvYWQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvY2FjaGUvZGlzcGxheS1pbWFnZS11bnNldC1hbGxvd3MtY2FjaGVk
LWltYWdlLWxvYWQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9s
b2FkZXIvZGlzcGxheS1pbWFnZS11bnNldC1hbGxvd3MtY2FjaGVkLWltYWdlLWxvYWQtZXhwZWN0
ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FjaGUvZGlzcGxheS1pbWFnZS11bnNldC1h
bGxvd3MtY2FjaGVkLWltYWdlLWxvYWQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvbG9hZGVyL2Rpc3BsYXktaW1hZ2UtdW5zZXQtYWxsb3dzLWNhY2hlZC1pbWFnZS1sb2FkLmh0
bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvY2FjaGVkLWltYWdlLmh0
bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9yZXNvdXJjZXMvY2FjaGVk
LWltYWdlLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJjZXMvaW1hZ2Ux
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FjaGUvcmVzb3VyY2VzL2ltYWdl
Mi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL2NhY2hlL3dpbGxzZW5kcmVxdWVz
dC1yZXR1cm5zLW51bGwtZm9yLW1lbW9yeS1jYWNoZS1sb2FkLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaHR0cC90ZXN0cy9jYWNoZS93aWxsc2VuZHJlcXVlc3QtcmV0dXJucy1udWxs
LWZvci1tZW1vcnktY2FjaGUtbG9hZC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9sb2FkZXIvd2lsbHNlbmRyZXF1ZXN0LXJldHVybnMtbnVsbC1mb3ItbWVtb3J5LWNhY2hlLWxv
YWQuaHRtbC4KKwogMjAxMy0wNS0xNSAgSWdvciBPbGl2ZWlyYSAgPGlnb3Iub0BzaXNhLnNhbXN1
bmcuY29tPgogCiAgICAgICAgIEltcGxlbWVudCBydW4taW4gcmVtb3ZlIGNoaWxkIGNhc2VzLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvZGlzcGxheS1pbWFnZS11bnNldC1h
bGxvd3MtY2FjaGVkLWltYWdlLWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9s
b2FkZXIvZGlzcGxheS1pbWFnZS11bnNldC1hbGxvd3MtY2FjaGVkLWltYWdlLWxvYWQtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2ZTE1YWFjMGM1MTVlODA1NmFi
M2NjYzk1MTkwMzczMzI4ZjgzN2Y4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL2Rpc3BsYXktaW1hZ2UtdW5zZXQt
YWxsb3dzLWNhY2hlZC1pbWFnZS1sb2FkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDIgKzAsMCBAQAotVGVzdCB0aGF0IFdlYktpdERpc3BsYXlJbWFnZXNLZXkgdW5zZXQgZG9lcyBu
b3QgYmxvY2sgaW1hZ2UgaW4gY2FjaGUuCi1QQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2xvYWRlci9kaXNwbGF5LWltYWdlLXVuc2V0LWFsbG93cy1jYWNoZWQtaW1hZ2UtbG9hZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvZGlzcGxheS1pbWFnZS11bnNldC1hbGxvd3Mt
Y2FjaGVkLWltYWdlLWxvYWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDhk
NzAzZDUwNGVhYTQ1YjNmNGVmZmVkMGI0N2I0NzdlNDgxOGZkNy4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9kaXNw
bGF5LWltYWdlLXVuc2V0LWFsbG93cy1jYWNoZWQtaW1hZ2UtbG9hZC5odG1sCisrKyAvZGV2L251
bGwKQEAgLTEsMzkgKzAsMCBAQAotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQ+Ci0vLyBPcGVucyB0
d28gd2luZG93cyBjb250YWluaW5nIHRoZSBzYW1lIGltYWdlLiBGaXJzdCB3aW5kb3cgd2lsbCBw
b3B1bGF0ZSB0aGUgY2FjaGUgd2l0aAotLy8gaW1hZ2UuIFRoZSBzZWNvbmQgd2luZG93IGlzIG9w
ZW5lZCB3aXRoIFdlYktpdERpc3BsYXlJbWFnZXNLZXkgdW5zZXQsIGJ1dCBpbWFnZSBzaG91bGQK
LS8vIHN0aWxsIGxvYWQgc2luY2UgaXQgaXMgaW4gY2FjaGUuCi1mdW5jdGlvbiBydW5UZXN0KCkK
LXsKLSAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7Ci0gICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB0
ZXN0UnVubmVyLnNldENhbk9wZW5XaW5kb3dzKCk7Ci0gICAgICAgIHRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRVc2VzUGFnZUNhY2hlUHJlZmVyZW5jZUtleSIsIDEpOwotCi0g
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhUTUwgPSAnRkFJ
TFVSRTogaW1hZ2UxLmh0bWwgbm90IGxvYWRlZCc7Ci0gICAgICAgIHdpbmRvdy5vcGVuKCJyZXNv
dXJjZXMvaW1hZ2UxLmh0bWwiLCAiX2JsYW5rIik7Ci0gICAgfQotfQotCi1mdW5jdGlvbiBpbWFn
ZTFMb2FkZWQoKQotewotICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCdXZWJLaXRE
aXNwbGF5SW1hZ2VzS2V5JywgMCk7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3Vs
dCcpLmlubmVySFRNTCA9ICdGQUlMVVJFOiBpbWFnZTIuaHRtbCBub3QgbG9hZGVkJzsKLSAgICB3
aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHt3aW5kb3cub3BlbigicmVzb3VyY2VzL2ltYWdl
Mi5odG1sIiwgIl9ibGFuayIpO30sIDApOwotfQotCi1mdW5jdGlvbiBpbWFnZTJMb2FkZWQoKQot
ewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhUTUwgPSAnUEFT
Uyc7Ci0JCXRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwotfQotPC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Ci1UZXN0IHRoYXQgV2ViS2l0RGlzcGxheUltYWdlc0tl
eSB1bnNldCBkb2VzIG5vdCBibG9jayBpbWFnZSBpbiBjYWNoZS4KLTxkaXYgaWQ9InJlc3VsdCI+
RkFJTFVSRTogVGVzdCBzY3JpcHQgZGlkbid0IHJ1bi48L2Rpdj4KLTwvYm9keT4KLTwvaHRtbD4K
LQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvcmVzb3VyY2VzL2NhY2hlZC1p
bWFnZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvcmVzb3VyY2VzL2NhY2hlZC1pbWFn
ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNzE5MTkxZTc1ZjIzMWUwN2Q1
OGUwOTFkM2M0ODI5NDNmODIyZmM0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3Jlc291cmNlcy9jYWNoZWQtaW1h
Z2UuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDUgKzAsMCBAQAotPHNjcmlwdD4KLSAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgIHRlc3RSdW5uZXIuc2V0V2lsbFNlbmRSZXF1ZXN0
UmV0dXJuc051bGwodHJ1ZSk7Ci08L3NjcmlwdD4KLTxpbWcgc3JjPSJjb21wYXNzLmpwZyIgb25s
b2FkPSJjb25zb2xlLmxvZygnRkFJTDogaW1hZ2Ugd2FzIGluY29ycmVjdGx5IGxvYWRlZCcpIj4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3Jlc291cmNlcy9jb21wYXNzLmpw
ZyBiL0xheW91dFRlc3RzL2Zhc3QvbG9hZGVyL3Jlc291cmNlcy9jb21wYXNzLmpwZwpkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjcxZjdiMTEzMDQwODE2N2I4YjM4YzhhYjI0YzIwZmYy
ZmEzMTE0MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQgYmlu
YXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAzODYxNgp6Y21lRmExeloo
ZCpEeVlHTnwkc2EtNT8rIShqWjg4TkYxNiZtcTtwJmJjWjBfLUgzP05BVj8jNTEoYTRuTGheaEEK
eiMqT0ZSYCMkJUx8TF5eT3BMMmRRdi1qRzJ1ZjVpcWJAcERmWDRXM3FIMCYxdU0/cHFqMjdyVHkx
TFZMVDBERnIhCnpGWVJlPDBSVCEkMDFFJkJyfm5FYTkpSkwqO0pfYU1NK3pXYXJVQWVkal9nTzsy
SllJb0lgQ2l9WlU4KDIxbU54cgp6JE1ZaXs5QVhWMWVydVpub19vT14/Q31FWSpSekRWZ0RIZXMj
bWQzZSFOdG5La3k/PDAzKmgxNjt1WXJON1V0b2gKejxeZERAIWFVYyg+SHRERSt9SGtLRmFYR2d8
QUUmKDh7eWFWTU1aRSFoQ30jOTh9ZWBJaGE+dXhlbUtoQyhodGh3Cno4PVl7QkBJUD9sUig/aElk
enhXP0NjfHcyXk82XjFOaEpVdF81cn1VJW1MPjlBTzwrdEVidEooTGA2a0tMJlpjeAp6IV5GaXYk
R3wxVCM+QilYQipEaWcjSyRNVyNrfTBVb3hXIU5jIWF4eGZwRz12M0p3Kyk0Z25TeDdRd3s8aXtO
ViQKeis8eWxGPl5YcG8zaXQjNTJ5bkNqSlQ0cHBFKnh3Z1dFJk9NMmAzSXhpM0U0S2VQYkJgUjFp
Y1lXRTUwMWJQUH1wCnplcVJVJnokMUp3IX54KEM7U2tedjtnTHt+UUlRWlpkQkgrbDFWa0Q8Wlhe
ais2TVJ+eTAzS3c1KmVCSnU9OyNVNgp6SSF0LV9vQzhOQlE1ZlJYS2ZUPkNiS3hoLXNkPk9DNnxa
M357VVg7QGZPdTRNMzk/KUpAYTM0PkBARTtRZ3VJfS0KeiNMbkBSejVNI0ZpRmY7MjdWZzFHMXI2
UGs/KypsSndKa2tEa18jSnFyZEFKZTBlRTxqVEV0NzVQPl8tTUZHLS1gCnojek89dGFIN1JXO3Q3
Wil4UypnelpSOFUjejNFJSR6JkpeRExOZ2I+OVJ9bkowI0YkRlV5T284PFB3YHBZWU1uUgp6bVZT
YCUqQXlgUU4mOypLeihsejA2QmlIJV9CRzw8OEpPd2c8UH4lY18zM0VkQFpEOGVIbSlHd3FAMVU/
YUBzQk8KelN1MV5ebzNISnw2fDBxYWZYIX54ZGJzfDxtQ0E7aDtmQmMqeXxMd3V0a1pBPjMxMT1z
KT0mI3x0QTVnVD5xVHp5CnpUUnFMfmRzPmIxMUdTdityUkM4b2ZtRWRNZFdzJT93bClLbjZERHAl
eW4/aG52dHwoeXNhTTdgVW9PQGtjeCFmPgp6aXJfdmZjPWx3eUl0VEQ5JU0/JDlWLU9Cd2R6RCUt
VDlNTzNgTys1cU91XkR7YSViUGlaS2NZa2Fwb2h+c1QtYmQKem8hZy03USV6NUl7PSgwOElCNGdK
PWl3dVd4WVdJKHFpWEIpYVNDZWtebEAzUipJKVRsK25gVkA2Um9jIWJHQUUmCnpDaGh0cWU0STAt
KCVIeWBGUXxGNDBhQEo2c1hSR3BrTGkrV3VYVk12K141WEg+I04/cStCTyZIOD0pdEAhNzRCUgp6
dG9IPEVybHFVcGloZE5JblAyVkUwOUNQJVM2N2U2OCh+ZU9gbHROJGp+MyUrVlNyWE8/e1N2dUBr
PGt6ZylPNz4KekdDbkZGZjRgQzApQXNsNiVMSDV4R1I5PE9wNSM8MStWIzFIdWxWan40WHdheylq
QkVwSDtEZDhyeXQ3PVpAIXgzCnpCQEZwJj1mcHZeVXZqdCYxR3E1YHs4WmkjNi1jKG55JUp2K3VG
bnM5eTxNfCRyb1dpejgpZVYjU1d4TE8+UUZFYAp6QzdSViYoPFJjUHQqfkYtYTdycktjOGsxY2xL
bFAwdGk0QkteV31GKVBKS0lfSmNZYDtIWVEqSXxGfnJEPX5PS1kKenB4ZWtEb0FqLV5uPkRKdlFS
VGVsYXJIfURgPnFEN1UpMz0pPCgkSWlDfHViK2JLNiEpdHhpXjk+M1oqfm51VTRHCnprQG1mXkZI
biM1KWJvMz9SQXZXM1BNIWo1JEhQSjZ0YjRuZyMwYV9CJGtYRHJyeFJJVUBUI0x6ZWVyIXEjQEo3
Ywp6TldATShzOWdOdzxgPDUkUEQzaTM0PlRkSzNYMyV5Y1pVKkp4Q1k0WWxpaiFYSjV9MFhjPUx0
MCFNSjhEVWwteDEKejczRyohOXxxKHMhVHxsLSs7bmN3WFY9O1VPSEI3IUw9OE1fX2BJPkF0azAo
RTRVQyozQ2hVa2F3ckpLWU42d2ZDCnp2VFEtPWA8a19MIStAMDVpdWVpYzt7cX1zRHtmKVlrZmJJ
Yk1qPDNZUCNGP24wQm1HbWdEb1N4K0cocXxkRGdaIwp6ZV5eWHsoMXB0MkdkVD5YKiRhPHVXazE9
RC1tPz56SiNtbml5WFB4Z2NKaSNzXjcodUxLbEUpbWx8PWcraHFsZUUKenE1ayVZX3JqWmZDeHJD
ZENhO0FTYChlT0gqMT40KVdYLSY3PlI1STMrRDc+RUVkIyZMM3xacWFLLXk0TEFXK1lhCnpEJG5s
JGFeKlk+QWtSY2ltNGxuVzw3Mjx+ZF8mOC0mKjZeQXF1ZCMyMEQwcnVhPHZgTGYhMnRqbkpwPHpI
WSgxSQp6QnA9Xkk1YFFVUWRuSWR9Kjk0LUA8KFFeTGJ8amVkKiE0KmV0KT1hOUNoUG0ldVlLfW8r
WFpMZFN1Jk4xR1pvZjEKel5Ne3o8SURiRz57UT1YeHI+NkpwKXVPeTluWilYWUg/OU9HNSQ5ekJ7
bSZOX3YmYHQ4PDhLSV96RH4kTktAKGxTCnpyUl9FfF5NSlpPYHdrcHV5O29Vb29Id0hvblZ4fHc5
UF84O3UjRGJGblUlX310TTV7SnE4TUcwVm5mfHJEbXJTKAp6OHtRdkJgVWRBUDhxU0MoKUgyc0Al
e3ViSjBMMkc+NEgxOylidWkjYl5+aDJDRkhwXm13a2gzPiRIPFlDMiM0KTsKejV6eFczZDhQUko3
eGQySkNBbHZjKGlxSzJtWGtqX2lIckpXaCMhX2NlSTkoKGApPTR1XnllQlhDZ1AoZUtiT09pCnop
d2t3bUdncCspRU1uVjkkSWtLRWhmMFJ1YDV4RXJ5SHF3fWheRjRzazRUWEEoIyNzWHpmSSg0dk1A
I2FSKFM5Zgp6TWIjd1pza1hQXyglVWBwP1Vfa1JDRUFSMCtRXlgpNGlDb2ghb3NOY3F+eGVeQ2ww
NzN7cG5RUGtjM3x4WE5eOygKempfTkNRSjlDcDsqTGFFZXJGKSZYZDI0TjtgTjJsX0hDTn09dWp9
cm9pKEVTK0MrKUtQUVVgP3JyVDZ3d05Ed1FUCnoySUBaKW1ZNSY1RzdNJklaPWEodnd+bSR5JXk5
VlRAeSs7aDl5RmNAP2BPdlBvPEU3VCM+ZCo1az1Qbk9sV1N+Jgp6TlItdXgjfCswSHp5UVlQPFRy
LTUtSUF+Sz1rOy15d0hvekxGX1JAayRESFUwZ3tmUmcocj1aTE4jKEJXZ0czYkAKem9MOVYtYCoz
I1dEQlJlLXpqZW13dCQ1bV4payFNKWRaKUwjdk16QVg+QHt6ZUklZn1DRTlvbUFtMHc8dUVLYjst
CnoyTS1UeEpEdTBRYjxHZWsoR1opcSY3NmMxUndkKG9HPjsmRVV4dHlJSEZqUzR0bmZJWXdhOVJm
aXFeS2NvU2BHKwp6akNJQEx0UlpPQnd8dz44Z3BzLXB3KjhRY2pvRXlpaH4tJUklN2JJazk/U2lT
YCs7PWlnKXV1YU9rKlZYJEpuTUwKel5XKFVKWm1DZmctIyklZSozZXBEc01gPTtwMSg0blY+REdH
VVMxdW8+IUlnTndMVnBEN0FGRCYtWkxNIUg1Mkc7CnpGO3p7TkB6dUhQVDA2WEZoWEV5cUF+fG5I
N0JlVDlpel5eZVd4Q0tiTmpuRj4hZWk8OU5YWXhvUFZXJi15NGJtfgp6d2M2Ozt5aE5JdkAyKXN7
LSslaEJJZFd2KmEmfk9JPWE3MS1hZThgNU5TaismLTA7PHZNdHM3ZDteVWVaZFh1cnMKelo2OW5r
cFhFPmJSO287P2syJVVuSHRuLT41PUk5PkomSXQhRFZsbGhDZiNPdGM+fV9SN0x7JmkkVVY0OSZO
QndQCnplZkpOdShCWFVZeFQoPHY8bCtsM3BiY0M2ISVoNHk0JGNvU2ZZPWhGJjwjXyQ1XnxeMWVX
cWFaWUFHQ2B2cERLUQp6dkd+Z2JSYXcoNHRKQDxTVGhJRSg+UntDcHI3Xyt8c1hDSGAhekJldGxn
QlRJK2tLK2txVEZ1czl2O31BYj47NnoKelJVWiYlZUY2VjIoKjRvPTJ2O05LcVdrSXhkUCZsemk0
R15jV3lFIyk1ZVFlOGRFUjVxcmZ4Z0lmUUNpQUUkeiVSCno8Tm8+ZHtkPmJoe0trc3lBS1E8JUA2
bEVhZjx4S1p6VGc/a2VkM2ZpcH5rTztPUD9RX1M7b050WU5OJXx3N3AkPQp6b0YrWUhsd3UjcVN+
US1FXkAtK3s5WTw/dSlfIStBMU04SnByLWs/SDlNKCp8ITd5TSZUVk5xUmNDNGs4V2gwZk4KenFx
RlV5dUE0eXBxfWBTTSFjaH5xI1hMOG90azFTQ0lkZVEqdlNIPl81cXZQOVNsNFRoOTluSTMqRG1I
QFBTQTBVCno9WG19IWJLOUhublN4UVY+fHd9bUw4RC12OFJ0Q3ZQLVhhRilaQFgmblBXREVjXlZk
am4rVXFlY1BZMURITH08SAp6aTAyLTI4WHItdSNrTHNoQUdlTUg/JjhXLUdlUnZkcm97WnBkXyZJ
YyZHI2BZbz1pOStvIXdmN0YyM0pEdSgjV1YKeip6aGdzYDstK0ZCPHFAN0ZfVSVIOTA/X0g5UT1+
VDB8UFFTJEUrI01yV2A1WnBUbUdPYXA/YEVJdj5aRHZVe2woCno7JV5LJF5iUkdFOEA9dCEzPklf
RThmczEzciY8YXFEWHUqNHd2fXt4al4meVp7P2NgQ2RTa0F+O1MyXmltLTtHbQp6UENRT00hMVJj
MnhCPX5KYXdlQUB2RHxHUnNqeUJPT1ptalI7ckZDUHcmMU1kIU9gJkNFYXw/aXxHUSk/RX10VSUK
ejZNZiRtJERSbHAlQn1BOT5TQ3w2e0t1I008bkpsVUBmV1M4QytwaT1hfjN1enM1cHNwbWotK1No
SEtXdz5weENVCnpoUUkqUncpUURLLTdgKjxvVn1nSXV+fnVVU0dHe0VJWX5MTzRSR0dDSU08cXBq
KmoqNVpYPVYhS0RKTkFkaDg9Mwp6RzZNcyluUmpHcD4xR0p3WG5wakRqUG9Zbl5DKDgxYm9NKWtC
N3w3VT9pbm9CXjNSMXl3b195VylVaXRfQVB2cksKekJSYE9+TDdjc3YpUDZnPXdiO31qRWtiWGJr
OEE4SDM+WXRPRlJPU25ZT3VQaTw5MSNmXlFgaTFJPEspU0pUcjglCnpfakw4ZF59S3J6eVloJU8h
KHlySzxndWkkKCZ+QkkoNWpedWFRMXAqbXokMC1ZbX1YO0Jxe3d+cWphezVQUm5xRAp6QVVMWUU4
RzZablkwaDNiR1psMG02YyhzRU5YS21RT1k1STFFaCVxPWpxaHVBYFojaX5vakRZcS1LfHZFXnZq
SjAKenw1enJvTyl4LXB2ciN1b043JkYleTxrNFYpYE5lV0l5ek1UJlhve2JWTHlaMzdrMmpxVEJv
YGB2SFB7Jmcja3IrCnpoVDRWcUNZMHtRZSQ0QUdAUW9LUVRZfnxPIzF0K3lCQFdYY25HVH1teHEy
U2s8QG17KFppYGo4KitJKkxTKmlsPQp6dUp+QFk/e1grVmo1TWJnWDNzIWVHSWklYlYyd3EmQzRg
YiM4QF9RJiR1dyZxeEtBRzMmMkJpfDt9YDYpeUxDR0oKemgySyZuVW8wfVpQRnVVIUR3I0FpKjVx
XnkyRT48c288TUYoKS1+SUdjaTQxTiN4I2ZoO2lQQCl7M3dTOWF8RSFhCno4YXc7PXA7O345LUZ4
ey08MG1LV2khTjsjKDdGfSMqNzQ/VXd7YkxTTFJPPT1KTE1mdz8wQ09tLXEjSDZsdFMlUAp6dkFJ
Sk4lTSk5cHBTKHxNY2w+UDcpQGEwQG41VChlZDM1U288dVJLSkFeQU5SQWFgVEBTYlRiYHJgeEtw
N0oqT2EKemVjUVhCeUBsUUZMSGsrTVY+V05yR3A1JW4+dmdrb3s1cTE0MWNhKyh2ViR8OWpoKGN7
ayN0SHV1UHpuX2ppXkl5CnpeVkZDZ1RGKjlHVkwkRHxibWhCZEB8cyU9VE5XWiRJaD14ezdvMH0p
YFZNYnN5O2lLbExDb35AKnctNENTcXFMbwp6aHp1MiFBfnxNQG9gVjVGRmtza2tPMnZHRCtfQVA7
MWxmUnVEYW47RGRSP0FMQHd1Zl5OQWpBRTtJcTV1Rl5feH0KelRNYWxsaiVPIT05bkA7TlEla2FK
I2wlP2FqYCNQfHA2Y0NFPmh4SThwY3kkVEh9VzFpSGtAfVUpZU8+TSU+SEZfCnp7eGxUXnczcWVD
XmA9cWApUlRrOzs4dTw3OFNtKGk4Yip2N3Jgd3YmSDlBYkN5dl5GdmJ9YXFIUjY4V2hOWXM/SAp6
K2FJTXZNfWlZSnY5Qj4jRDk+PDFhNE1eJHZoVHtxYip7a3teWG1Cdz82SEYzRkN4VG5MRjNMYEhE
QCohPjZfZzQKejlJcWVEUn5UKFc/NWwmS0BVVXFke3EpYXNkRCR8YS1XZ2R5UEotaFJjYitgPSMj
OHNwX09WKCYoK2dmK2M/cEZWCno1Um53YCllfnclZTtQZj9iPz4zUD9RQ3ZgPSR6UTJfTClOJUBQ
ZD1QdEAoX1hUMDV5bntqUyZtJTgyLVE/VV8qdgp6JERAN0ZPdGB4WiQlQU4haHspYkBnPE1NeSVW
fV9vPzd7Uz4+KUkkXnpwQndmXjhPNn5PbDJ2fW8lSFBzR19JWDUKekZYVjh3Z3EoRiUxdWlqXkdm
OVlqdzMyPWExRmxsdyg+IVVtY2pMR2IoczFrOWE5Tyo/SGQpWWsqcFZOUz41Y2FpCnpPLVJNIUEq
TTs0SnYlT3IhcGlFfjVjZGdSUUxRVG5Gfjw2VzV7SlM5QyRWZDV4PTFHJkd1Pktpd2w7QHgpOH1g
cAp6cE1CaG0oeX45RSp3K2RXRTA+RGlfQ3Z9e0o/Q35KY2A9OVNHM1NqbDl8OzQ1ZEtFTUotTnpn
Izs7Qk8zbEZjPUsKekklPTAqYjM4VEB6KD5nMW54U3MpSHEhcylNNl59Xj85UGRraT9OPlhHcVdZ
YFg7SFFhJlFNTj01ITNnPUooSjRLCno2TDdAKDJsdWVRMm9MJllucyMtckh+WXZlJUElelFoOzNx
U1E0I3hrQ3B5YXVDXmg3Z2JaU1VyQmV6OGxaZF40agp6SVcmJjxUNVVkOEopN2p6SWdafWZzKEFF
fXRxUiYoSjh3Mmp8SE1jMkk1QiNSZ3ROKF5aS25BSGMrYSQ9KllYTCMKejtlJGdPJGN2TF9oRTBD
RyF7ZGZ+ZmZ8IVpwUm5aU1M0dHYhdEM0QEE/ISZ0WkFoMWNmXz8qTjNOIUomc25gQTleCnpUaEBe
UDQ5SUJIPHAkUUlAKE1mSSk8biQrVUtTRDZkNlh8NjRoUiVMYE9ENWRrVXhHVl8xamdQdjQ3cyN4
SVFfeQp6dDJ6SnIqYjQ/QTw3dFlpcz9aJWglV0BKMnp9ZXM4RFA/dXMlfGdOaWdyaXsqKDdOfENk
YnwpZUhycipRUTtBSmwKemA5ejBgek1TQ2JRMjk3MEhldHVZZCl7aSpgaz9tb2Iqb1k4WXNWSUVR
aiFrI0J9QWFrQUt+RlRnRUBHPW5oKztYCnpVa0d+eCt2Y0RDKXhwRklJKyg4Q2wyPH14eGIkPTJl
RGlrdkk5LSQ+WStQaDElNVI4IStTXmdQTCE0YyM5aVhETAp6KyNGb0EpRFduZGdTaj0tUWp9SXhM
eCVsMnQrKkthNEh+SUNre1lAeSgkdFEyKS1KQnBEdz8tJCVTJSR6dlU3NHUKekk2QiV2czNqZmo5
bzx8WiZZWVo1OGRCNk14OD5DfXM2a3wkb1lLbSkpVTtOdnU4elctb0V7ej85M35nbElte2dGCnpG
RGtsbHN5STcxTFkhVF9aaTg2YSEzR0BXdUk5OTBlX3ktIzliRipRK31nfWwzPzEhO0V5UE88TURZ
IW9xcTg7Qwp6bHwja0U1K2RXXlk7T1c0bUU7X3B0P3hOTlR9fHhOQVRCcEpGWTFITXpCVHt6X084
fXV3aCZoaUdpUWoydEFxM1IKekhmVDNvVHRXMWZmOXd0ZipfJU1ZRjJTMUxZTWBWMkVuO2d8aGBv
ZmZ2eChRUXM3KUBpQVlvdmBAMSo/Jmp7bGdzCnozblU9dmM0QzQmSCNqZDc3a0t9Y0F+UVF7Mi1O
aWxJYmh7fiF0M0FUd3MkYT5HSTUzYzdQJmM/N3JTdEx2VTcyPgp6XllDaEwyP30lWjNHO0k2LVFj
X3xgVlotS2FSbzhSKnFLPVY3QXR0XkE+ZFVJPEdSODVKJFdmbSZoSFl2IVREWHgKelVfYndee0Bp
aUM1UkhpfF9eMF5aKl5mKX5yYHFAYkFNTj1RKS1McXF5WVJTd0ZVT3c+ZyFaM09BYXllbko4K0Vu
Cnp6ZkYxbXp9QW1KMmheSU1XNnFFOTx2KnR+VEhyaXI0WFZ4bWcpYFFsdT1ZY0JlJEgzXzRmRUFe
MHNyQ3VgRzNvdAp6XiV2fkAoNG44aCZ4SSh5bj5ZWFZAWjtpVXNgMXQ4YnU8QzNhQVJ3emdAZkB8
T1hsQzN4UEU3ck58QFdZeHd0fmkKekZNdyhndnRKRiVBNm9lTCM+NXtDP3wqMkd7Kyg2IXVja05K
anFnVWBoMlh4TWlXbGtzQFlkb2wqfVExfDg/MGROCnphIVRhbDA4UF9oQyYmSylFWGQzRVhTTWtT
MSUzenEpZ31SWntkMXpmVGNtJDleOGNZK3t+cjZsbikjcUt7fmJJMwp6Wil5SEJMO3FJYF4kKFcq
Wn1rMippdkp0dktlP3BmenVeQX4pJV8hJWYxJGhWK31ENG5jSGRPYEZUakY9ZjNDWWkKenpYJCkr
LU9DJSt1ZVpCRCNfV0hqeVdyKU0yZ2hwQShWPW9OYTRWYkd8OVlxVz51QzA7aXZOOUJfJX15ZTRv
NzxxCno2JGNrcmJ1KHZjTXtyMzApenxVMnxLUmBuaTJIWGVVVEV0I0xaQnc+YmBWJDRAJEBePXso
aks8N3IpMDNZPTg3QQp6e1diR3stXjFTeGkoS3FuZzZ1cmtIRiRXMGA3YjttempKXjV0eCo0ZFNw
MWg4X3k0TURYK2xsQHpuUmhoN3dGakUKekBjSWArPElpZFImKWokYTFeeFlSbiR+fEVILTM5ZkxG
b1ZCeSNCdlRmJmErdFV1ZmBPJTtKOW17eURqVzQrczghCnoxcGFUPFVgSSN1e30oM3N6aGQoQGxs
PCtVR3lLSVBqe2xZIXsrczxMcCZ9MURSVzJVLWVaU05IVkZZbjthcXhodQp6e0h2dytjWGxOQj85
Q20jLUBFTiNYOFM4NTNsbHBSMjxPRnZ0LW92UD5nRCh3dE0kKHhKJUxhNHo3Nk9hbXlVfHgKemtv
Q2plQHBwYXZFMVRhOSQzSnJVY1ViO30kczBkLXtKVnl+VyR9QipmM3pgd15gWlFjI3FTKjY7Smti
cUR1I2FmCnpSMk8wV0A8RmNXPDsodzwhM19XYXpXeyN8XzV0PCowVTJIbSE0bH5qIXMlc3IhdVFm
P18tbUtwMjxCaSpGdSh4ZQp6R1ZIKyoyQnQ1OTZuPD0wc0s4YVluOUQ1bjU4JUhmRX10SDZVeElQ
STFyMXlUU3pLVS15THtAKmN2KiheWWVSOD0KejtPcTB+RTA/Zn5BT3k8R25wYzBITkJEZjFONHE/
TjJlX31UJkBifktyNUEwT3pDTylIfDNVZD5wOXVTeGI+c2p9CnozayRIczRtXlRFNSNSPio0ZX0m
ND9GV1NDNjBRZHh6dGBjdmdzfWUjeCNhTittPElxeUZuSHVvSC14b3w7eSoyZAp6e2E0Ql5DM0Fy
cXlzWTJrYmBmXitZWXoxP2NPZUgqQ2gjfUU/JSElc2Y+N1d4JTtUJTxOSDRNb081b3V1dU5QU1cK
empGMCViViorTT8xN0h2R1hhY3heS011ZVp1bSZ1Xi16OUdGYDF8ZCorVHNydVVGXlR4ZXB9JnQh
OGJ4THZRUmZXCnpKTWVWRDR6ajYoOGBSdzhqO1cwcW5FVGRGJkNIYj4ldn5yNXBhRGs4KmZ+SGdG
Vll2PVpIUl5JWn1ZY1k5cWhtNQp6e1YmU1pFVW10bVUqd1RwPzV4Y29FP1JjQ1VCRGROQEFeVHlF
Q2EhSztFcjtjayhjQG5aV0sjcjJSRnl4ZnNuIVgKejJgc0lsNVU4NnkqYWxOdHtRXjdxQm8lfiNg
NzApRnRgNCNnRDh2flkzZTc8UHBhRzY7LXp1WWp0JFlFd0QzUTBmCnpxeXxzXylCR2QySW9vTVM+
dTcqb2VHfjQ1QFA3fGNhPFBRYDR1V2lBPWMtfDFgOHlidjgzYiR4QHBQNFVrPChEUgp6WlIrNClj
WXpTfkpOUzIlKFgxU3Q/QDhFTVRZaUBtX0UrWT8qRD0wPSFJbWlJNURPREdKNkFBPzxfPHBjYGpo
R3gKej8qMj5nQDJneyZUMXE8RElYTTREeFZUXk8tOyhgTjA1JD1YOWlTSm9Nc3N5PXl5TkVUMHtO
fk83aUgqbnBkJFNYCno2d31uZjY7IUJ5Zm4kSnwqeUBrZkZhTSNxN3N2cChaKTRPJlB9bzwrTVl0
QCp5dlg3WGZRSmlWYEc0S3YhMUhyMwp6MzVIeWVmQntvS0wjJSM9U2lMe144RGpNXyNPaH49KXox
KkNwQ01MMUwjJSM9U3A1dktgV2EmTkdzTm09aH1GKiEKenREaGxPS1NRajNoRkphWTM5PFU+UG8p
OWZIdnBncz94NSFmMEkmZkd6I01kO25nUzRqOGMrZU96X2NzNHlJaUl+CnoqRC0rcUFKbWAqMVZP
aGUqOUYzX0okJmBrcUpScSZmJk8mM2ktbjhpekN9KyNUe3VpR21KKyVRcDdKenQ8aCtRbAp6MD5B
KCtOMFc9bEMyQ1UkPSMzTypgcTxqZUx+VSZAJUIwUCYjSEhqWTM5Kyk0eVhPcDF6bylFV2NGKSNL
JGVpZ1MKem89Zn1eNis0S0EtTk09cWUxRkQ7OHNjSW1OLUw+JDhTZHBONDNea0tUdXJGS0BHeiow
dSV7QH5XZG1VX2VGNWZWCnpxUTAhK1lBZWQ1cW9oTFozYzNZdHR6RF5rSUllVD51PURiPVFDbTJK
RkN9PzZJTk8zQFZFanlBa0l2PjYhZkh9Nwp6LXc9WDFRS3NMN2c/YUZESTU9QiFhdGpGd2FkUG8r
XjY7Pk9IUH5JZXojdHE/Y0JsJi0qeHd9fik7ZDMke1oxYSUKekkreC1BSjNePHY+YERxYD1pLSRt
QENnXlMzRnZIZzY9aWFCdm87c3o2NXRYTDtKd2J2JlNQUTAjbT4hYkYzNWlVCnpJdXtxYTg4PCl3
YiNzMWg5eGY5dUNVb2xXZTQ5OGJEZ0FrbS0+LW5aSnR4PkpIVDRZO3Byai0kPHpWSiE1NV5BMwp6
T05vN3puN00tKSpzYklEPCk2TTIwRVImUUgzMnNge3s8UHk3VXpXc2Y1UjhaPnNKXmtSIzNwNEtR
N3RASXNmejkKeiZyYmY0akRMI2pyP34hKzFwWk93cFc1fFBUPm5Te3xFVGckP2ZOT01lPFhvX1JR
YWNOe1M/PGZsRTZRens4UEpyCnppdDhVcTsyJX1+c2EtJENeXllYKmsxR0ZYd0Z+c2BlRD99THBy
OStyMU44YSlYMklzMDd3KUZaMSlJTXZoeH42SAp6O2VYeDBIJVB5MnppRH1+SlRkJXRfYGlNciY0
U0l+M2RnQEwqbypffjFkMmZfNSNobF9oa3RENzBKdjUmNTs2aUoKejIwUj8tOXojUmBrM1RqUEkz
IzNMYUxyfmtibnVsIVdVd1c7Vmx4N2B4LShiLT8oMCZ7MDReUlg0TCV3LUVyQTR+CnpEamt1QEVx
WT9+Q3A+RC15ZCtONWZzI0BUT2R0dHhBbkQrdSY8RkAxXjI+JCpFK1FUaEc3VVpvSD80IyEwamRl
Twp6KS16cX5FIzZPUmd5NXAzTD47RGFJbG9eVFN6TCkoUTkqNHFwKVF9RFMlcz1XN2FheUwjQnA7
UEktU250JWJ4YnoKem8yUz83bmg/XmxCQloya3UjWVIkOFlnUm5Db3h6UzJ1PEU9I3V4NmdPOTZh
PlJZS0hxTU9RSkY/PCpnQF50YD07CnpfSzI1RT4lQ3w0VFo8IWU9dnZ6O1V0U3o8JVM2aSo2VyRL
Zkg1VGEhM21KQkM/c24+SGZ1PCUlRUZDVFJpTDEzQAp6czV1TXZWZitmeStodmlFbV9lME9FZUQy
ZE0pU0p7M2lZOzQ0PlQ8Tj57MEg8YGk9KWRreHAqJTw7I2AtTzdsMTMKenthfit1PC1gb34tdDti
QXJzOXglUlk8c0xPeGJ+Zz5hc2hnOXhYaDsoKEp4MjYoYj5iMyQ4ZzV1NCFHTm9QNjE7CnokZXI8
eG1NcDVvSmcwfXYpMGJ2MTdmU1AtRylnQlFXOH56Iy1RZ1Y4WTAqdjlPVU1gKGFhU0pXUiMxPDNM
cm8zTwp6N3U9eUREeFNaVlIyMkMhYEN8akNQc0otdmghPy1BaSgkI3QoITtwKmZ1MHQ3bE4ob31Y
M3BtSHdueVBiTTNPMnIKel9kZzVibFhzMEtHTUk0UmVvWHghSmE1dzVeXnIwJXNjNWMxWT1oXjBs
QEJeNDAoVytqUkw2NkJyJm51T1NYPl99CnoqOUs8MzJ6VFp3NmI+eylQbUU8I3d1fT19RWoqLTY8
QCZVTVlnZXlNK0Q8cjVnPilOQFhsQHt5MWBmTjxWPkl6fgp6T3J3Vn04NmNFYXRpcEBRZFJJNn50
MXxPbWVVTiM/RlZ9SjQjdVk1N0RpaXVpKW9LWlJjYX5DOS1Sb316RkYwVHMKeldLaSYtO2xffCsr
UE80WkZifSQjWmthcTQ4RCpyT2paS2h+Yih8S1lVfHhUSEpsPTEhVU9TSEdKbVErc3NQajtqCnpB
eDVQbkZVUnM0TmVFM1p0dlcjJCNxKm8pSUhRVGZgT01ZfGRUTDF0bTlVWC1tbWB0bjFuJGo3MXMr
Tk4wNVg8Qwp6cz5OJmdPaiorQipFQVc3cGZ8K2Ioc2xBUnNgJlFeYTFleGFUOGtYJmN+V2teJn0w
IyUhWE1CaGl8NnBMXyV0X3wKej93d0QpTHZJI2p3JDRBVWhWMiMwWFRgIypCeTV1dyM0PT12SGlT
NT4kJkMmT3RDYnFwX3pDSH15eEpFPHkxYEM8Cnp4RVhIcVNiJjhrM3xeNWV6NnJgZWphJXlaeykx
X2RHcz11SlY/eFhxKyFmTWRNM3IrbGVMPWd+LUtePERvOTU9Mwp6NEg3WTJIX15WQTNtbilHcm1I
ekVlSjY1IUhuI2Q/WWVBdz8leCVoTXFeUlRvQjd5QCE8NmNTaFEyR25FIXp5JT0KeiZGUiptP1ll
LSQ8Wjl1NHBzJHsjdzFoYnVrIzlTeVhmdTNCP0RhfjMpUktzZyN9KCQ/XjRNVWBaRnxxPkhoI3wy
Cnpad1JIOz15OCtUP3o4ZiVucjNUdXc3a1U9ZDxVJGAlezM2OVkqOEJEcTVVJCFKWGRmPylqa2NV
T2hqdHFRQURJcgp6KDMpQz80fmV9Y1JWMDlyVkp6MTNzemJkK2lDUVI5SlhKJU84bElYSzMzcUlD
ayVjbThlWThMbmVgT1FYVUhPV18KenhrPHN4NmAyVH10KEN6XjBvdmszK0tkeHwpQXN1Y3I5YG9B
dUcxJDB1VyFFUWw9TyRnPD9iPFkmSHVQbDcob1ImCnpuTUEpXkFocHI7aDQlby0+YShwZmQwTEZT
cU5yNTIlMF5SVUJ3OXxBWn5SPmV7MHYxWj5KKXlSbkA9Jih7N0UkUwp6X0RsVVl7VmMwM0UhUno7
Si1uMVhZe1h8UkJpZ2FsSE1KVHtffCNXRHklQkhDOEZJVmNyMDZ4bCo2VGI4SE5ubkYKenE7Jjx5
OGJ0K2QqeXlFPlhiNjc1dyRYRTJzPk8hV0c3bDtoRyo2cmU9X1pJdlBmYyluRTloUl9JV3tqZGsl
RTFmCnpMT20zeXMzY0lJZHR0KG9OY2hWR2Ejd0hpODQ+T29qMGRgTmVQLXNGIU5WMytLPWJgcVc0
b3dieDRMQzxVTmsqYgp6SEQybE47e09Gb2tGeWYxUHx+TWVuSkBsUGFeaTYtQDNjZGxePGhufHk5
aEd3aE9VO1UpdGN2T2BBRk4hK1ZxcSUKenA2K1oyWXZOTmdQcE9JYm4pSmxmNjVKfXY1aStBIz1z
RDZRdFJnSjVhVnloczw4ZUwhM3xNKj9NOWxiSHQxQGBACnpzcWNeXilte1lBYkgxez1geyhlPlh7
JHVCazl5PTR5OUBsd0NaV0hHdGd1YmRZYiFZTngpLTg4UkY9TE8jPWpxfgp6SHs1V0poai0yU2gq
QUEhb0dmfGxpek1Dd3ZpTmEpKllFKzAhJDlTSEImfGJ8NEBTb3JQeFcxSSQhYjk/cGBucXYKeisy
VGFhXnhuUXdiMkFlSCt9ZCo2MHZQI1I/NVU8Wjg4ejMrc1oxbGZLZT5uQVcpNFNQZGdlRWY1LUJR
IXRWZ0xlCnpXKmo0fGttYDwpX2MzND07TVNuZGxsRXdqdCs4KTxiMHhhQUQ+XmNBYjBMPTAlYnVZ
d1d7YHhBeH41Ym4lJVhZVQp6cnY4dzN3OztAWCgzKzcoSWYkME88djBSXj0qb0NaPWJTSG0/Wko3
ZW4rQUlgYGhAcEoxRC12LTVTQyNebSZJYl8Kel5zc0k9YEdXcktyIT5TMFF5NnJsSSh7PWJMdnkm
JDlQXzt4fDE8YHZ1NyVHTG5YUEFIPFJzflhANFVIVikoJkwwCnpzJVUzKUM/c1o4PW5jNShHakZ3
K2NaUmdgI1Z2SlhIOGp6IypyTDFfV24qYFVzVl9JQzh8NnJPMjR5Z3IrSCVtbgp6JlcmdDBaYFNL
I0NSO1liN2VMP01BI1hPdDl9KzJPJmAqdlBfKXc1OD5TYzleeXhebjVyYkA8VGBtRGI0KX0kRWoK
eipKak9GQnZrZXhgZz5HQ1pla3A/QFI7YmlPMkp3NyFSM2EwKEB8fUhkTHcwcUdCcCEmKnE+eTRv
NFAwalpHfHp0CnooaGBpaFJTMENLPEdTdCtYe2lwfTRtMDQlV0A0dG1Rfmk+Q20ke0FjcX5CWChu
b01UdDUjYCV6c1M0V0JucT9TKAp6dV87IXUjITNFQWhtMjV2S0Ilak1hP1l6WmhnTUR5bkxEe3pV
VWNjQGlBSSs1IWZOPyZfV0d1MCg3bXV5VTNNcWUKelhRUnVqXlk+bmpxN3tyak5oI1RWT1FUI2Im
TGJydmdYM2o1WmJzNklVdz8zYipLNztUJkIrc009KlBYdzlUeHVhCnoxYHszVylrZ01jeTNLfXxF
eno4QG9YUyF+UkpJTytsaVB2b1BRQyQyaGpXSEFMUmFxJkN7SFNkNmQmTzRZT1Foagp6eEVgTnBQ
b2pDZW5YTUV8JHRUeHNGTXZqJjt3SWNeQ0oyOFMmR1ZBKy1LbD8kYXJTJmdpfldrR1R9ckI0JFZR
MkMKemgjPkF6QX5SKyZteEVES1g8SXZ+LSVmfSVvN0Y8Klk4bU0oSHBtK1RzNyRkWElsO1NgNCF6
I2BTT2NNb217NEdGCnpsQSR4P2hIST1rdX5VPzYhMDllK2lTaFZNXypuNkxQUzA3eCVUR2REITda
VH1IRUNrUWB1Rk1TQ3ZMcVNGZlUtTwp6VyQhbjtIX3puXms5Nkg5Zn5vVHpNVG1rJSU3cmNCMk85
JiYyMGJJMFVQMyFmJDtPclJ4O1NuXlZRRjhyMGRkO3UKekYmaDJ1JlUpM15EOVE7dW5ra0xxUGpW
VWw4WSo0YXl1Y1lxRzZqWDJYcD1rTVNHRT1KTipaUWJZNF9Ya2hhYyhSCnpYcURgJmIxYiEhcSVq
YTIqeTU1SCZxMCokdzBTVldxZVZlYjtsPTRST00tXjNEc1MjJHEoQ157QVB0TmshKz5iVwp6PDJk
eDF7Zz1WRkVBU1Qqd0F9TUxXKyh2WkNONXp0TSY7MGlTMnsoTCUjfiNXRFFuSXVMbWp5Q3JnclI7
dERqJiUKem1sSGpwUT1oeml0Wm9UUnZ8Qk1MJVVqfWNReTcrdXYlLWJrT15lfjcyeXBDKHkoKytp
b2w5KG9eQ2hhbXlzUEUqCnpZK20+c0ExUD56Rk80UkdAKHMmfiQzb0dSLVgtRlV2NjZIfiViMDxa
Ymx1WEM2P3EyeHVROEJEVTBadXZFQXxBMQp6KGtUVFhHcUdqIT48ZnFuMWgjdzk7XlEtaTgke2hY
NHl1fihGLXM+cEBrMEg+WjYzUGJifEpEflA3I1EoUD8zKmcKem1hUCtkWktwOXg8Q21tUGc2e0I8
WSh2b0QlWnRARW1JdkpRQCFwd0E2Sj5II1dUejxhak9hNClvQG5ANDdXVkZ+CnozMlF5UVUkVE1F
c1A+S157VDd+Pl5ycWg0cWxYe2tBezNxdVMkJnwlJVRJX2k5RnhrND5nUTNGaj8/TVM/fiohMQp6
MFF8QXFgcyVfeUAjTn1Zdjs9bjhEZCNsWVoyJmYhaUQtTUNSUHRDRGJEKEltcU9JTUB1WUEzSz01
WCk2diFMeGUKej1QY3RLVElWNDd2VG50Nj1Ldj1ldmsrVkluJmopcE8yckVNO21zfjAjMHJnOTwm
ZzByVEJMVmJ1MHZoUGZlKEB1CnpJaSlpUD1pRWUjWjNCI3AzRjswS3I/MHQ5dlV9NEs8Q2FINChL
ViokPyUobyVtWFd6eyhJR1Y7eHNNMmJtTFBELQp6PVNxSEpgM2BhMDhKaSF6ZHNxMzxwcVc2P3dH
fU0oYml0YmdJMCRCYF5tM2B1RTNeSjJpcyRvJiRfdyEjSUJqVCoKeml7KHlBTHVmWSp3Rk40aS1f
ZXFFNWZYRGg0V1VMeiRmMmZFeGZWKS1QRF56TXBgalREYm1GZW4mK3d7QjJkd0xxCnole3oyVitQ
U1lrVEI1KShOOEdfUmVJTFJ+OFFEUUdZIX5SWCNzalNpLTBXeERUSUhwZGpSYCRsJUF1I3Q9Umd9
Zwp6aW8lVyokWmgqNVJNUjhVT1docW9QQ1BpMnJlMUw0IyZ3UDBCKEZ6dEZGTjJqd3UlYSo8OElo
NEtiQyNCQU9RbV4KemNJPlhGKCk3ZiRALW9wcClEZHdmTjY/Yi1eXzdIQWBPPnVNP3FPVG9rZGg8
TTc8Y19Ld3RBc19fO35uY3JBZCV0CnpyRDA5RChsNkRJaDhGb0VCajwxMzRaZ3FBYUpfenJ4KzVh
TTEtPTl8c20rdSZ5UDJGPzFxc2QrMiRBe1Ijb0t1SAp6KDdET3xkWCo1Vl51bkNMN3R9YSUmNjwt
cTcxIVFQemczLWFZQytFKW8xcGBebWhCVmg9aCN8X21TK35qXlcwMUMKemRWPlhmdDQpZUpwKENZ
d0pEYjh+SEAhdENedmJxX2NxbTJjcytgbypHPiZYM2RzXnlEQV9JUnhrTXB2bjZ2U2lUCnptdUBL
LSZ4ZH17akZVbGptaCpTSW89T349a2V3cTx1Y1hVUntOPkJxJDF5aFNPcSpzJVRHU0hQa1ZCJTBe
c3M5bwp6T0c/KTNNcnV6dkV1dSFZMTBNRnJUOHo8Tzk1bXRNPVA5M1BhR3pQbi1fZzUmSm8yS31l
Zn51MnFhSXMmYUsodHkKek9TY2dyNFM5MWQ+VDc5WE1HfC0hQXZGRnNDNz03UkR7TlVTentiSExN
Pz8yQmNRUVRHNzV7dHNuKGo1dXNnclkkCnpZTl8rNEgqcURwI3x2TFlXIU5tbUhmODFxX1VGKjYx
ajhXfE9uMi1wRHJqblcrK2g9flljRkBwQkhfNVItWGNMYAp6Xj1kWlQxUXs8V3Ejez0wY0BzZk1T
UTt9SXF2TXVSKCp0QSUrKXR7bl4pa2l2TFZaJVdHO0VzfE9FclgwcyVgYUMKeml2Jio0JGNvKFB0
Wip3TiZZc05HSlFfLUFpMF5nZ0d7QVg1KiYmaClNTWU4MFNEPnU1PDNhSTJvUmA8e1JSRTsoCnpN
TUckMzBLSGZHMGlXcmF4MiQ0JWY+Q3pKSUQ3X0VuZ2FwfjVqcEJBd18+Y0x1eztELVJBUE5oci1e
OSU5K215MAp6bXAjU3w3NklYOGRgY35IZ3pDQXR2Zi02LUZDTWVOPCZuZlBqT3Y4bGFOZmY9TF8q
OV9LfHBucStsWGRSN2J4SngKemUzS3NMOyhVT3Q/TTlRNGIhU18zWSF+NFdLbmdBRGB9e1RuTyQ4
Xy0/SmFwOzYwb18kUkMkaUprNmZRKWxtUEY0CnpmKGhRVDFDLSEkP3pvPnpMcnh1PSpVI0pZXzBu
REdXMVM1NyVlTG5UKXJFenw8XkFlNDY3ZSM1O25QRDlWIUY2VQp6M2VJa05UKUMlP0N0Wl9HT2h2
ailIdW9ITE4qPlVCSG98bypndEFQQChfIzM/TExXPUMlQTc2MGtqPmp3JkN0cW8KemVIfVVKJVpv
JlVVWGoqX3lRTUw1eyQ/QyspOE9fZz5XTTYmbU1GYyQoUSZLUUZ8a3JwVnYhbW8hKXUpd1N2T3ps
CnopfGZxOGV1LT9MOGVKNSZBbUk+MGV8XyhaenRTXiRedWtwa2BYIzQ1dyNMXztUdCZyKlBvP2Uk
VT5yTl9GUkVqVAp6MjtSOUR7JGx3UmpuQmMrVVlpP0hgXyp7RGw/NHVGLWtUKzs8TzRXP0hEVVBF
dTRDTGkwZGlyOG1eQjRCd0RkVW0KenM0MU5eemVKMDlFazV3WEhvY3Y+ZU97VGteNWped2defVdE
d2d+SHR0VHVgKV9qVyYyTE1LaWFJZWd8JGdMczI2Cnp6MGQzMmhNNnlRVyo4eEZ0Mzt4PGcmUmpy
ZFFMKS1IeThXTm48SzgwQFZhXiNrc3U1ezNiSHZrZTx5T0x2QTF6Zgp6aFIzJGhGZ0lIZWZlYU51
ITdHWnJeRkI/K0FaUkhxbkVBRiR5V2VCMCNIWTlpNkNHWkskd0c4ekZUQWBXVFQ0LXQKejNRND0x
cztKRUA7ej88aGxUQUZBViNBenNaVTxZX1RRTXF5cFMxMjhLUlJYWWlrPmxeVTI8PWw8TFRqfm8+
TjJ+CnpvZDBhUE5xJHdXaCZiZUd3QTs9JllIbXN5T0R4R1FvO0tiJT9wM2o3Q2l5eStQaUJtQ2dC
fD57JShaTCNffHluWQp6KyFid1d0bU47KW9AMiZeTWJwfGh5aW1vTkpiNTxIaCk0ZyRHdjtZKjZe
JUpueDFIPXFsfG1nRHVwejY0KGt6RTUKeld+dE8jOUEkTDYlYVRaXj1EWHV9NUdOaEl7T0poUyhW
VTNYT0p3PiFGfCQtbmgyXzsrdnwqQjFfMGtyKm1YQ0ktCnpSP1NZdj94biUrbkE9SERHKytTd1N8
UF48aGdwVVBrM141PSk5N3h4PEBCQlYqUVZgLSUkamt6PnVqKnxzJmxIRAp6cT9gPmswd3Q2TEVH
VTxgSzAmM3RrT3ZFQ3JwfDk2PGxMayU3dzVCSjlhR05fQlNJdmIqVnJTfWp3e3w7ZG8jfXkKem8w
MSNsTytpfXQhQVN1fS1RbFhZXnBqWG0zOHB+bXJ3e25YPD0kYnBQUVQmJmg/Vj5LWHdwKDlgcVND
OGU4JXR1CnpOazMjaz5mPGdIS0Z1UShzd2t8fS1gZ3Ujbkc9e3VoVmN0UTk2VilAc2BJUFkwRj10
fVhmKExvNjEqTG41U1EzbAp6QGVSbm9DZitLWWojR0MoKWpnTn1oREp+RENqWFU4Y3B4R0pZeU40
dUd2WCs4RDBtZ1ZmTWQmTG1QOVBhNnRIaXkKekxmdEY1RlJLP05zI1YkQ3NERXtWc1cmJDxVN09L
YUR6RyQhN2M7LWwxRDh1bWVnQSsjJERVcC1kZDx2I1VHdDJFCnpWdWZ0I1dBaD1tez01S2RKUHFH
e0FNfCY1SEt3PF4pdj9AJUMxaDVtcnhTPzx4KHU3fkxoYFZpP0RyNkNVNzkjYQp6bFFGYGI9NUI2
Zl93M2A5I2wqYWpAMVg5WHpKfmYqIXlwV0cxQzRsO3piRDFBRUFgb2orU1l4UHgqKzxkKFdHWn0K
ekclWlArNHRLP30kcVd2Ynd2OFh0LSZEQEEyfkNrO2U9ZmhyTnBvIXJ1NCNKfTIzKWJnK3FVM3oz
b3k+U3RCWVRFCnp2IU9NK3lnb2gxZkZzVjdMbj5Jc0tmNH5QdHc+MTIxc0B7Y1IxfllGQF5CWGtL
TCt1PkdqXyQoU0NOR0JScWFkbQp6RnUqd0UlPVFLRUp7TmBrZEhZbmthQFJmRl5hNTc1JjIhPEgw
Jl9jY09SMT43NyFzWV8lfnZlZEZCQDBjVnsrXmkKenhub08oRGBOPUdVZU8yYT13eys0UGRtWnl6
TC1rNGkhb29oMyp9YWRadDFrMnhufEpvMyh1JCtmO31jNz59S0ZmCnpWVn5TY3hVa2FHSnR3ZUVu
YEl3Z2xwdElydkdidkhgaWIjSjFRbVQ7bXp7KEpzYHdrc1Z8Sm9POWglNzM0JCR0IQp6KXZqYlY2
YEdud3ZFYmIpVCtNcW8tJXdlfEt4VWczQTdXdi1HIzhhb1lrMzQ9cz43cUUzZXxDYnNeOWltPkFs
WksKej1BbmdKcSVxMHxlRXpnMGZzPENfLTFVMjwwX2lqRnIlS09mUn59X1duVjQ7KmJYeEwzXzcj
aHkkJXNybHNjR0lNCno3KElfXnRseHNHKkFgOGFFIVduWS1FPjBfTzQjVzw+RklSQio3QXJjQl82
IzBVaThIViRKPjVoQHNXTFJNZGFJWQp6Km1+QmUqTkt0MUp1OSpoUXJ3MD1JREdoVyk/UFA5VzxF
VVl1fUVMMTE7T25qe1JRdD9BMX1QWitIVT5KMC1oUTwKej9MfCZ8UW5CfkBLQUFwYEp9a1A3RXF8
XyVNU2swSkRvUT5qTD5pa249UEheUDs9b0I3NlpuY2VIN1pWJEVISVFZCnpOcitERnMkRzMrP2BL
R2JfUU1hUWMwQHxWaXMwOF8zVkIpLVQkSXdDc256WHEhcVlTNjBRQUU2Jj02V09KPzRYPgp6Qn0l
aEhpZyRLVitBRT9qbkZKKGhobnZoNWwoUCNASnZYRzIxUU04fnJCR0E4dGVzVzA1WilQZVhjPXhZ
TE85NUoKemQ7MVFWcj9Hd0t0Wkw0RXBIQG1aTTsqOUBwQGVGU2x2e0dYRTNmRkBMM3NHdXgrWGhi
TDtBMHoyI0N8ZUFyNio0CnpEM1h3U0tASVB3ZDdUOF56NSNuYD9+MmRuOF94cio7WU8zfmJmfmF3
NyY7M31IciExVzB3amNOJj8mbkl6IXw1cgp6a0h4TStUWjZUSHBeQU59ZF9rIWhOZnM5TE52Mlpf
VmYxbEllZXxhYEdFMn1XOT1SZTxrZ1ElI0dyblh7JSM9WDgKemhIP01GTSVAKnQ3OGVaZ1NmdyRr
UmhFYCtWWSFiZnRwO0B8aXxaNi15akNXTyF8cHhJe21UdW5VQnw7YDVfbEhmCnozUXpDSz9YdW52
bXgrNzwxS0A4Vzt5aG0kRUs3RCtuKkZkSDklczU7QlRwWFR4S2N2WC1wUHd8PChhNV9RKz8lVgp6
SmB2Jk8oRVhRWnQmUVZfUjtCVys2Y01DQ2VGRlhJa2JHK3smYXw2U2hHdi1nKSFFRGgpPHVVKk16
fFZTTVg4enIKej5hXzRgSHJUc0hHQ2wyfD9DaDVqdUd0dldkQDhHSE4tNmRUbSVpPGVoJnFqIXU5
bVB5dFlUKTxjaSQoaFpSWjBkCnp6Vl5MWWImczcyTVErJF9uIXdXQjh5Z1pGWHI2JnAoOGtmNVpQ
SG5CeDI8JlVvbFpQdjBIa2ZZYFo0SGxRcVg9bgp6KXApTz1wZ0NnfF4kVmgwZD5DNit6LTtKdHhu
MSNiYFA0R3tWM09ibXtxU15JMXYtdUdKSzlBQHpETlBHP3hpelUKekFNaFJ9YEdCfDhvX217WTV7
TklXcUQkP2NJdXgjdENkaVlqd1prVUc4Y1U5XncmPmk0d19APnUwcT59ejUtTFNjCnpZYXQxNzEm
MkxNNncqUU9QSEhFUTFFVTctOSRiPyZrRGw/bGIkMj0jdSUqMHRDRkhwJFJZZXkxZVZaWlNKfXYx
Owp6X1NhJGJYYVVGJSlEYGJ1PkJ1dWMpRDdZfWJIfDIrOE4pM1BDNm92eUpAemxZQnxseGtZZm9j
Ri1qfTMwbn5ZbjgKeio8WlA7PXxla0BZeEJIUjFqJF5rQ1dMOUZCJG9WTTxYeF5YNm88VDRqI3FK
P0lsIS1pMiZpQEElUlNjM01mYjtlCnphN340TSV7OU1rZHZaVSZiI2djSiY2fDlSVHNwRllTanZe
aEEmb198RTR1eXk/RiFiaj8pUj19R2phJDlLOGtUJgp6YlJvSm17bmlydFdwQGJAU0hZe0JFKXxN
MkV1TDJUMCpLQ2YmN1ZxMSN3JSstPGU/IXhPOUo/dlAtbT9YT2owRUcKekBzLWtGWiR2ckMwNiMx
RD9qSDdkK0teeDdScEF4JDwlfkI+Qm83YGloTUJTa01qe3xKWns0RGVNP1k1V1lzTSNnCnpQUzdQ
M053P35Ce0FEKExkbTg5KCtOcSomNlA9RDhZfS1FQ0JNZzFfUUtZUVZ4V2IxaTgqUTcpemVhRVcj
JihSPwp6WDg5Uj5SPl9AWWRLSEw+UyNsSl89REAkfFchVlhkc1hgZkk8aWwxfVcrZVRoIUE0dCg/
UlhDOyFPYXBlWXNAJXsKemxATitnPntVQS1sdmVFUVFoZHtDRFJTYC1kIUcxYihhTklkS05zQWx6
cGE0KXV8YHspRHl5Kz45T0NTbEMzWkgqCnpARGpXfndpVH51Z3o1UEAzQjZOQztxeF85PXtJSHdD
NmhyRCpwSHJtUFBLSj8rVkNRPGYwIShtc29aaDs3PUc0LQp6e1RBTnlBVChyfEl7bV4kKFRHQHsz
NmVLTDFheFY2WiVgQ148eGZ6fXJFNUpIUTVgLUVeIXdoTlk0fiNBPjIzS0sKejI2V31CWVYrWFMz
ZDZoU1ZUcztPT0h3NWcwfngmZHlqM0o0Nj95Nz51fX01YzQtJWgwbH1+Un5Ub0ojJTxzSDE8Cnpe
QCQ7UnQpYXxeVGVrVzMpeVV9TnhJeGt6SCspenlvbWo7KkR6al4oMzM2bns4aX5CJEEkSkp8R1RQ
bypvME93dAp6PnBtWDtLLXp7TWkpfHdQa1VUKmxpY0RfT2grbFJORCtZKTdRSXRrIVNuXiEjdiNX
Tkw4MUwzc3h+QiFUJE9eZ3AKejJqUCppTSRzT2RtQXpCZ157I2liakxtfXFNOUh6IUczMzZYTjg8
Q0FLLUxSWT1mXl8wWipGKm1HeyhrWGprPk9mCnpffjQ3U0wqVnNqSjd5WiVGazAle2wtRT5QWVUl
V3xJQD1BOEVsdC0/JitsJitUPF5rLWIxT0A8Pj96dyQja0pUYAp6aCRROCUtK1pWVkche21IeHpS
OylYOGRLSEhrIVpsUU0/a34yVV50PStANGVLLWMhYk9QV1lZazx6eFhQODNIZHwKeldKM0NabjBM
OHBZRVA2Q0x9VC1+Pnp1NSRPZU9JQFZXKVdjblNDRGVxdUNWfjRaJFBWYVdOKT5XQSU/UT5uNzU8
Cnp0SG1IJDZCZDx8ZUhGcy1Sd2Yme0AodEY/c2p1MGozcWUkY257fGFvNShgSn1Yb0dwKikxO1Jx
ZF59LUFEYzRRWgp6PExtcjEtO2trJmd2Rl47LUs0KEpUbF5mc0N1dkRjY28oYGdlRzxhO28oWT5n
WDE+ZmRwYSVQd1E4dTVaO1UkcXAKeitNTjNLSTR7OzdaPiMlOE94QGspeHVkIzlDY3ZyWSlzeUhX
VDtmNHw2PWI+PGNkZ1AjPilafFdgSjs3e2JrMGkxCnpsOWspak1pRW4/WD5JUn5YNFY9TkcoQ0E8
c0VwIy1ifVQlVyV9alY7NygtTW50VFktUDRzbD5vZTdpQ0BVJVMlOQp6eXIpKSYmdFl4bFRifnpY
TXAxME1VZTZLfFdGUmJQRDI8TlBZLWYxbUI+QD9mJH00PiVNdj1ANmolZkBySFkxR0EKej1wYiYh
OUshTjR7e2JATmpJbWdxTVVRKk5sUyN5Q3NyK1lRQHsjY3NzJShqSlBhfUE4eS1PUEhzem45dVFq
JjlQCnpxYmwtLXhZY3lxOXB3RVJXMSV8bCsyTGU0NSlqeDU7OHVwWHhTQ2M0QlJyI284a3hFdXlD
dTkkIVkkSiZzcVJpQwp6aiYpblcrZDdWWURiaT85NVROUztfZz1vKW5VYjs5SmZFdmA5aU01dUIt
dGBHYipeS313N3IqNWdPeHAycnR6K2wKemw1d293NT5yUW1DQ1k2U0BIMHNIczchZGY2dTtPLTVs
TWMpSiFhSS1maml+QEpsVXZGSHluTGhjeXlIZWNJWlY7CnpyPChLLSVhJEAtSmghcTVWUnxEaW5v
UXNlMntgVV91OTYxa24rcTV7Sik4TUttQyhBWGBnMTw+OEYwWCE2MSFUMwp6OHlYS0JNLVdxIWBC
QUFoenlONE13cjE1Kmh9cyNfJEd2MEpAVk0paUU2N1MrQGpYZGdwTXtpaC02TSlqe1pxUEAKek9f
PjZLRTZyWXU1PDVwQFpgRF9FZExOTElwTTI+YzVOR0w3T0VqRXpCRTslaXEzflF7LWgkVXE9Y2JK
ITN0cH52CnpVKSYmN0U3bFN6QGpAdWVFVU1JS3dhJjJmdkZKR0IkZmNqMGpkVDI5b35PJWBxTjx+
e1hnKm5VP0tMWXRaej9tOQp6Ui1ZY0xYTi1IRDVkTDheR2RmNGxEU2w8WGo+ITNaLXhwdFpLZGp+
SCk8KmlDQm1wX2RpKnpjSXt2cW03TmM8TkoKenNoWVpuWHM9JHhUbEtXQDhIOzFISzV9bFY3THF2
Pm8yXzA2PExeJlpSa3xMQG9VUmZrcDI4Tik2fWFRZGhCU0FnCno9WFVVc3hYYXg0bmRZdjgtYVc7
TEIxN19BQSlCUiVuVWgpO0xlNz57RDZPYmV7czdhfWR0MEt1ZnYwT1Q9RDVnOAp6ZWE3ciVvNmJh
b2NmT3FXd3dYU3E2SVFCPmVgan1FYFdVan1nLXdsMUlnZ3VXVXdRUz5sJW4qKiZsdWY+PlF8cC0K
elVAdVpuU2VOViFVaUlKKkItKmFwTDhiakEpLVBWYlhrN1BtKFY+a2wmbV5yfG1kJTBwTnxwX29r
KzRmaypaZ280CnpgMDMxTz8/PUs7dT9CYFgobG98Jl45PGByMH49QSZkPHIkPzdMUUJQWkQycl5E
a29vI3pIQjQrZ1A2am0oQ0ZrTwp6JiM4V2N1RG9kWFJoPzQqSjk0elRXKUhDJWtOfTJsS2kjWGRK
RWZMbnlNQitabXZvO3ZWRCRAU3lRUnM1JVI3OT0KelJFcG55cX5jNCtQNSExUk9NcXozQygwJnE7
NjBycHZUcGk8Z1RVNElCZkl3Vys9LUVXKHQ0WXBNeXB3YkFeNDdvCnpVV0FtbW92IU1IWUtkPENB
I3xFSXh3S3xKcEQkSzx1K0tYNmJxfFJ8R0xvb2JGZElCUGwtVmpiOWwyJlhzcmBDZwp6S1g2bDVj
WDtPNkZEfnhlZyY0JGluRChQIzc5TVpgMGI0YitIRklvYm50YUlud2Z2em4jYTtfVEJQTjVhM1BH
Q3sKem9JJDBIcDxQJCModVE4KT5BQU9+TTRHWU1xclM+aVpXR25Xc3UqVDRXc3kmYXYhKHglMmhD
ekUzSCo+YFB8bU5ECnpJVFpeWG5sYk82LStmMHZaUjZvaUE4Jkc7Nis9Yk1ZOH50VFNnNE5IaHxN
cXk0PH4xWk1KNSEwVSlAN2t4LSp6WQp6a1h7O25rflFwcEJkUk41RXxNJXFvMGc9UVN7bD1PPzUx
cE9LdX55S0kzQzUzaU1qKTJmUUtfPXpEP3RDKlBzVlcKem5iUn4zQW48QTFvQDB0eF5gZVZXVHYr
alBkPFlsSHowe3FKQkE1Tzsyfk1pITkjRnU/cGVOJkZ7PCZ4RlZDVTVyCnpYdmRRQmpYKjVjZlM2
cjlFLWkhUiUmMEkrVkRVfSkzSFNNdWFXbk9KYilOZ2NHfWh5SEh8fnNgIWg2SU5tamdwJQp6SzJP
YUB4cDYjcWIzTk9jKUIrIXhofExvdXZKI0M8WX1qaHF1eD4zU2wkMTFUcGdUI3ZxMSFSQ3RvZTk8
R2NIZWsKem1pe0hDJmZ5d0VGZ3slP2pYPCt5VmhWO3FIe3M7NjxgWGc3N2hjMzxKTUgqczJLc05x
Uj99SlVHKFNuRnN8JjR4CnpeUHc+ZFFjMGd5Jj9XN1ctaS1YUkIoJjM/VGVQUjhmKyhQKDFfPTZ9
TmVQP19yentRazEtVypLQW5fdypCb1d1QAp6WGd6WXptWjRuX045eikjMzZHdU40eXlKZmI4KjVG
QCVLO2ZpTnpMa09WfDw7IWpsendDUDkwIS17d1olaXRYYTMKend8RzF5V2g3Z3BiRVNxWWxURF5z
SXNiWip0UHBhZystVXVebkhOVklRLXteTzRtfVZPSF87JVNMVFZoVGMxUHJACnpiYEpBYihIJW5m
PENlS1EkbjFVKlJ2eE1IR1A5Q3Q+aHxBUmtad3RLb1RCY3dnRylUK2B0PEplMlgrRzh5QX5PMQp6
ZVg+REAzVXB7X0A+biUteEAxTEN0Un5qTj4zVVJzWXlvJExeRj9VYm9SSD41LWdpYzErJDwkTm9N
a0RXRXI1RF4KejFBZUhvISYlIT8wfl5PNG55RVk1PTZZa1oqcFc4cXRsbkQxd09pOGJyVX1gOGl1
N2ktZ1opZSNAQWxDcT5wWiFSCnpLM0RtK18kSjx6Wl9oNyUmNmYyY2BDSjdDXnp4TlYhQ3MzXiRw
Xm01cGNqfE1SZTFuQEtyb1AwRXI+RWlOZ21wSgp6ST1kJGZzYXwtdHJBJXUzI140VVlFaHA5ZSRI
SyomQm84YyphMHRucFptbEFBYiMlfiVoOTtZUXUzR243emNaUEoKem04PyVAWmJ3Q19tWCk0N1Vo
cy1NPH5GPUB8MHNjT2VCUktWVihxaWstSURFSisrfV5QYFBkKz8+ZHszKT1Gb2l8CnpXdz9ueXEj
MTdMSXR3eDk7VFh7bG1ibmhkOV9ZRXdzLUtNYyE1PDcwUWdeciMwTCY/XkBSX2BeTzQwNGxzOCtF
MQp6bz8yNTUoRGw7WCpBK08qPDdHTH1wPEAmPSVRPE9uKFdUdE4rMSNqVSk+TTUkWCpDbH53MHJB
Z0VEfSVJJlo7Q3sKej1PQ2tAJX4paUoqdXVtX1QpJTtKNkwqb2pTOyt5JEhGdTBnRlN2M1RQPF9Q
eT9zWmlLcDwzcHhhMD91Z2d7Wmt4CnpebUxZYnJJem1LeVd2KX1haDV2SWI1fGkhZiFoTlFmRHtX
Yz1JKjk7PGU1ZGdDMiEmN1JOJXdsdDRkbjRzanw0NAp6bUFOPCtEZzh7O29hYGEoUzYrN249WXJx
JGRqd355SlJaTCQ7JkA5O3dmbC1jeEdxKn1lU245VlBRTVhUXiYmZ3IKenY3cnBeLTFnJVV3cih0
Qml0eEswSmF9OyZzMXYjNyZ0SVUkVjNxaFkzUG95K2FsR2VCJGZsKHtKP3BgP2N8SV9BCnpOUyt2
aGpRVkROSUh4MmMmUjR2IVNRSklDWmhQbmJOM3ZrYnNmT29jbU1lMUEtNFd4cClpblhASk5yITg2
bjcrfgp6cX19P2l6ZyleSzdlNj9SRHBSIV9OKW5KKVVkNDxqViRlUEgzNl9xN0BKWU1nJT0yNl9O
IUxjUSN0VHFUbSN4Rn4KemU0XzVXYTtHeFc7QU08NjZfMU9TUGI7WlJIJWVwbCl3OE0+KmRKcnwo
VDdofnBseDskTUoodll2WWk0UExUe20xCnp4JGM5fmVSUiNTT3I9V1BSNWpjcXNwPHpaWk5pNExA
fE9KYXhJfTNkSHAhO1pDVHFsYSVQKihaVD5ENnNaPnJUPQp6Kl57b2pfbSVUb0xSZldMSSZfUz02
bGROc1c9fldQbkg+a0k/N0QwdnFrVmVqaHg1WEkqbHc8Ul9QJitSS3kzNyEKekV7VlpJd1ZJZG8r
fF5aZGBiMVM4NiE0R3FTQj50PzkwbExvKS1RTXkofkFDVCt3T2tVU2EtcW1SI3Nefjdsb1ZeCnpa
dnlyYG5oa15iQStKcCR7SXohRG5SbX5jeVBCTmJRPiEoeW13REtxRWJEOEdMKztySzgrUFFDJFFP
MGgtJFR9UAp6JiR+dUBSRWo0ZzZAbnxiQjkxXnp1dFopT2R2cXM+bDdFMUxaazhyY2B9em97MTx5
X201STNGZGlaVXRTTG16PTcKei1PK2JIc01CKlF7RU5jd1c2RzxJc1dyNHgxRX4qM1NyalV8bVJk
cWJybV5CIVA9SStJR0YkX2FpfF41dm4oXmZHCno+fk9zeXFvTUhBa2prOXlsWUFwanBCbkcwc09o
Y35aREkjO21raVRGRFc4S29xfTFQbCV6R30oJE0wPTZaPnVJZgp6akdFT35scjIwcyRoJD07YV88
cGxkeXZpMG59TnBwOytrfigxcS1QUktgI3YzRDBAUV5DOTtodUx1MU9OYGc4dUUKelRUa31Salgj
flFJaDtLZms3fUQ9VC1WdFllWTlUS0Badz1ZNyN2WX1CSiE8UEV9YyQ2cSlEa1I1cjU3QVV+bCZk
CnozPCFgeV5uRnNjMzM8NCpZIWZGQHpCU3BqaEFuO0dlej5tblc+Km85NUtZeSRKKk41bUxHY2sq
SiolJkgpJFcxOAp6aDxSJi1kbnM+RWVmPCtVZD43SX1AUk5rPGl8TGk5dkFLcTljV0Z5XzAjUD1A
IyVfQyhfPihgTXdiZVVjWnJsbXoKelVZQDNaYnZ0c2YlcGItMTNWeHBJakk0UEk7LWckXjUlNHA9
PGM0O2RjP19yYChGY3Z5NFhlRjhVaTY7cShMcy0qCno5QTxpX3FJVFBzcjlJezJxIVFIKXZpZ3xv
Q3pBTkopeVN+MyRgVkc/QTNicnBWVmlAUGFHSWQkN0BBaXNiVHRHMQp6MXtHX2twa1VibigmWG5v
OTRAVDcxZyUzVjwkM31iRnFXKDZtTUE3XkpsRFo2PkF5TE5MQXFzfCZCU1ApKGZoZjsKelRlIUR9
Pnd+UCkrcyY4KEo0KDslYTFANi1ZRVU0MVotM249QVQzfDN7cWw5Q1RsMmY7ZDVhMyhtRSo+LUd3
VmJTCnpJKSE9elZaNWZqMW42XjQxPElhN1R5YiVMJUtOdzFGeSFAXlNEai1TNjFjdXhWT0dKdyhs
eCFleWx8czZhSnBwYgp6Nz1HUEswTWUxV2gxVnJzViRoLU14OEFKfm4jeFp+Qih4ZCY1KX5WcSNi
cTZ1MWokWnF7NU9hUmBDR044T2J0dGwKekVBP2V9JCNYUWZufDd0amByal9FUTFOa29uMFRuNWYr
WCZtV1lAdFohSG98QzRvMDRiR01hSkY2bm5nVUl3ezg3CnpgeiU/SWhHeTJ+WDVgPz1wKn1AbCU+
WVN6VTk3OF8xcmR1T2d9UXZte2ZVbTFjYytHaDlYKCErd157cUUkfTtuTgp6SEhvPTs/TFgraEBv
I3pqa1M8czNpOGUwKDU/aWNfQ1NCZVV7WlcoNiQzTz52cDtZbCspIzZBRGRUQ3t7P2FwVl8Kemw8
O2FLaCk+I1FFbkpiPTRBbDl1Ryk5dWc3K1VpayZTZWt8ZzQ+P2cxbyomZDZpWGp2S0o3XilJQkdV
Yj44NGVqCnpXaGQ7RSpnbUljb0pqPn1MZk1vZWxKMGlRXmdDcl9gZWxEZktpeTR3Ymp6ZHVzdHVl
QjNES2k8YE9hWVIhcj15MAp6cz9TKFRFaTM7ZyZrLT4wU2RDfXk0UzlhcDJTYEIobEFYY0RNQkV2
PHdlIWgyYF9HZk5ye0Z3WSoqTkFMei1NSFIKenNgQ1NKaitWQnc1Zj4/WTgzb0A7IzJEOzxpe3Nk
UU4zcH0/SzN5OGclWDlKQncpe2VEKFBKS21FPmRzV1MtKXlFCnp3SFc9ZT5vUGN3eChpQ1FVMlA5
P1BGSSMlKHxWUDM8Pys4SVd1N3NHSkokd3dzIVlZZ3RfLWBndTVtaWY0cjhkWQp6IVlVbDxEWX5Z
WF8lRHo0VUtoODtrQjVwby0zdX1JRj5tKWZTWlomX3FPWU89MEh7bUl6RjZQNj1IKUklWmVqWDwK
enA7VFF8RlopcSU/TjdxeG83TEVvWH4wNk96dElzTjkoTkFgezYydFBOU2NqQmpnfDlpdXVJUWtz
eTEocnhDfm94Cnp3bWBKRTwyPVBpcTYydjtzTWhYQFVYcmF8cj5LaU5OeX4meiopdjkwLSR5bmVo
VVlBQjJ5ZUtFTDtFKzZjUlVYQAp6VyQoTGcrYmVDRWAmTEZwKWZsZ0ZDQzg1LTBzKjx6RU9OMjxj
U3p8fD8oTzdBeDlfKmlFc0hYM1RkdiFAVzgtPkAKel9GNWQ3YW9HTD1WfFljY3t2YzFTTUojPF5E
SlBva3ohUCRjc2cmRHBRLVBCTzJuNyhfeUJtbEk0eTMqUFo/e1goCno+UVdFbyozfCVFPHF4UHVF
JFIoRmw1cHQ2TT4lP18ybStkQl5wTStzSERMa3VrTmBGait+MjQwKSlSdlpXQE48egp6LW8qN2tB
QE1iRyQ7YzJ5QC1nKUV7Nz1mNmBTKHN8O3AqNyM5PUwrQ15Eb1RHSGFxLVVzb05+RkNObD0/bHlH
TTIKem03fU17ZTQlfG8kUUNMNyhpanJoRk1FXmlgJUpyKGA8JSNQbmdTSCRTI2gpdXVNQGFlME8/
UmJXR3FGQFlhdEU9Cno9Vlgmfi09ZipEYn50Mk5hcTwrbiNVPTlmeDN3b29uVUl5IyMxZkpQUjxN
PCMxfnpObD5sTy0lPmpuQC0lK2o4eAp6JmBzVDB0UDA5SFYofTVrKHZnaXFOdmQqZntoem8oUXFo
bX5sfCEhTnlwVkVhbG9WRC1xNFU/cyt7TC00QiVnNEUKeiR+S3Nud1R6TkdKMHdhOz5kcnxlK19S
Z1RqWGB9QjByZ3dPKyE9VG02dmYpKzVWckZ2PyZWMW9YJlQ4aDA2SG9LCnpQIVImNHU8Tjlec31l
eGQ8KWdNT3YkdGR9bUxAVkxUQTdhdz5iRmB0aWg8RWBgNzxud2hyblgpTGtPS1U2ajEocgp6cmMt
fT1TUXNBfmtsNVZWZFFuQ0gwSHcjT1FkcHleSFoxWE5pJj40a0tVdFQhQ0AjQERQWURLXk55a0BQ
dTl+R1AKenM0bWhLc3R1Sk9fIUdBUzJpSGB0YldfPz16eUghZE8oe14xPE84ZXFVZjZaQkJqVEc+
UWN8KEBJP1RMVmhRPXVTCno2bUlwQnM0M3w9MWdhKndVflh4Z3E2USpgRFMmcWtEUERXbF94Vnor
el8+cGtKJGpkR2RMPUFJUmpVSnAmZX1zTgp6VV5RT3ZPMUhJQz1IMXg8amUpYjIlNDNuTV5iQy1Y
bGE4dTctdTEtdkh6JWJOY2dIdHVHMXFZTF5KPUEkXkh9UkUKekc2SGY8UiM7R1RVOWo7WFM5bmQj
NHBNYFpTclZ2b2ZPMlQkcHR0RDApVW0zQT5za0VXKXJwIU5AYzl3fmpOWnw2CnpWeW9HQWJlQnhp
YX1Ta2ZsU21IK18qPDs4OF4xZU1PbExCWEJ2bDBEe2JXMDNOWkQ2dW10cCpVPCFyJlh7e1pUewp6
dyY+V2hJK2FZZDNUS2dZWGg8NGE3JVhMMDt1JWV9SGotVGV3IUs+TnVaOGZXLTR+a2RuPTxDQ1kj
SCFldSpaJHsKej53Sn1sQmBxanN2N1FtRHhTR0k4M29tWGFNb2RMcT1XU0VEaThuS3U3SCYqfEhF
TUFFUmNFN1RLT001fUEoXlFwCnpuaGxIKzNLWFNWQHpIS1ZoWCgxa1pyUVVZako5YFYrSHR0ezl1
N1hxbkdBblUhWHBpQDQhTUgway0hRTx2bXI3WQp6eXB7filkelE0MWY4PCViaSQ4Vjk8aFZJQU50
UFFVPkpMZnVLdl9OVW1TdSlEP1hvMDckcT40emF6dXc3b29Lcz0KemY8Z3R7YyE5Vz56I3BlMDZz
NnBEQCQ/UDwwRVZRMT9iRH1QaD9eKFkkRUFFcnomJmRURnlieDB4PWplRjE+P35hCnpgVEppYShQ
T2tzTkZZNDx4RzYoIypMYH1oYCUtMSUkQ0JaMytDPmIwTj5+T3pwdUtxfiR8NU5sMFdLN2ZLNCNy
Mwp6bzJSRDN3cnFXYTw1XzE2am4oWUAtejNgTT49cEAzYVFnZCNkcENFUnhIcH14TCokMXI1KTIt
dzx9dzAkSXZuWHMKekQwV2R2QU0rYSNIQ0lfeEl7ZEEqXjlgJGY9Mj1xa3RQVkBUJmZOXkwjRj1a
Mnhvc0hIenxxWW5EJDE8M2QxOTd1CnpVPihWcmM0UkU1aW5DdmR4anpacklSNXwlentscXF7OWxA
YDtWY0c4RnlBTEAtTGY4S2tfZlV8Q1JQT15tS1h9bQp6ZHZLfW1NaXJmenV3ODRXKnkpV1ZZOEY+
NDxsTilAayFQY2BrIVpQe00hI2NTZTRKWCZCSHQ+U048RTRSRm1oSlAKejJ8enRYRFJ3OVQwQUJv
b2xlVFY7aUAwcy0oR0EwRml6dnB4RVEofVplKUkoQ2FFJXt1MykhMmd4JDZlKXNoX3VJCno/cFFn
RHZOaklrQ00hc1V2YG8+dkNEclQhUiVDTS1IWX09NXgqSkpNbDJDbXgrT1ptcHk3R2x0cVktSHg5
OUtgOQp6dHV7Z3VLNH5gVTV5QjI0JDtpU2tJNFk4MmlyJktpMDN+MX5GU2hSM0lHYit5RT0kUF4j
OHE5P3NBJHBwRWNZYVYKejVNJE5JQVFmUUJMY09HTXU8bSlndztvSWdWYW9jMlhPMSEpdGtPbkZs
TjVqZkduRX05NDZNcldseUs1VmRuKU90CnpOfU4paDIxPzBfd3tkO15SVClTVHZXMFV+cSQxSmc9
Jkp4I2Z5djglYmI+K2VTK2NeTU5tVWQ/JWYzdkNIUHY0JQp6ZDI9aDI4TVltcERUZFF2eGVfVTE5
I2NsZ09HZ2BBI1RUTyQySlVQZm9udUJuTFZPa0FZKDVobDlHajN+c28lUTMKekVLYUNwIWJ3cWVx
X1VzX2Q0YWx6QVNgUWg4cGhKZHFPIWhwekR3WS1NTEV3YGFLeXBeYyRyfFZZfnJ6d1FSN21CCno1
fHBrJSQ8aDslREhtbChKKWNpZDZyfW5scnRtNkAqbkJIeip5JEplJn5eMCh0VHh7TjBRU08lZ0RY
dipKZjwrMwp6WEpFPEdXSm53IWxtYyVQUnB9bDNOQDV2JTA7dk9YcmY/N3p6K3hFMTZPaEFHKTFk
VUtBbyFafmMpPDlzM2slfF4Kelc7KDkyTjxLMlAxc2ZGRXN3RCFFQiQraSR4P35OIWp9ajBBYXE+
VHx4WXMmKEdeS3o0KD8zbHFVbihYPU5PYVVGCno3PjZqNyNTcSpDcThrVlpYLVhDRW9MYEdNb1Rp
KiNXeEQqRU5EU2VRT0N0S1dCeEg8OHN8PDdHJkhNSHx4ZFU+Rgp6ancqSmZMeXRYIyUkO3l0ZkZL
R0hNTm9eLWhoY3VqLT5ePHdSX3tua1RPRE0ydzkoP1Mxfjs0SiszYWxGVzBZaUoKekItYCMobW1g
aDZqYS14WTU4SWZGQnctUXp4cFkzQndieWN7amhtcEtDfCFLK0p0ezk4V2M2Y1ZacGIlbyV9Vl56
Cno9KFVoOzx1Vmp+bUdeNnpBOFNINTBXeFM5JChhKipLPFNSallKXigzaDZiaWlXJDR2XkF8QDYl
SHRFXmtIdlBmTwp6WkpHc0VrKylWNzU9QShSPkRDVTYhWEViRkJDNDtLJEImZHk5NHBFMyNONCRl
QFpUKFFqdmdeRihuWllMcGUkcDgKelYjUS1EdGZpdTVBJn1YS3deYWJKM047ZkAmeWhTOCFufWt0
QH1gT0tIQHVMN1QlMiUkPHkzV1dsUGY3JTdVfks4Cnp0Vm1LPT0+bl81JkQ2WjVPcCs4fkNTZEpF
WVNJUVZvSVN6ZDxHWG1LU3dUKzF7cClMeTtOYXc+UFp7ZX1mZ2RGIwp6M0xPQ2cyI05SYFZmRyg5
QGhyKDhsUSR6SDZDb3BsNjxtUFF0JkRAfUJ7SVoxbEEyZi1qMnAmbUo9U2VPPC1jbSYKel9XfkBh
d3liPGk+YDVsZCRZI1lVM3RVM3FNKl9uKz1tZSRJZ3BqQ05NYWp7MSE4WEdnXk97RksyRlRDYXhT
TnVWCnpOeVVEckoyc1A4XzZXI3VsNjJ4U0o/YWpWZGk5M0xvZylIZ01hbXs5bV5fK0YreChObnJn
eE03MEJxWH5Re31wVgp6Kj5LMCZqVXltMlN5PjJJYyYtSjlTJUxOR1BAZURNWnpBS3drZDZudXRr
fkVRdmwjR2xCQEBqZyFJPVg+dkk1YVoKeks5WUwkJDY7JCYpXmBKU0xudXd6O0FfX0UyN0FSK3Q0
bCYjRlYxNzAtKksldSY5TD5VSGY1UVdYMmJUejEyRypTCnpiY0hTZ0I1K2l8VioxNVNlbStDeXtq
VT5eIUk7X200Jn08UncpZ34zRlZXPm4xNEBRYGJ6JnNZd2dpPkdyPjJzTQp6WWJvS0wwcD9rcHd0
Yzh6YSglMFQ8bkViVylyQENpTWBlYVZpPEhaRmpFbzZZUng0fFpIbFpWbWIxNUFkelBnITQKejVx
bGs4elhNbVdtN0g4MkZpcCtzV0A0QH1EV0sjSVhyKW9CIUshSGBqXlEpUHpHQTJ5QjZDYXhQR2Qp
JHF3WTZqCnpwRGxNeElQeD5NVklnNjQ/SjE1KFAmYHR8I0pONTFjayN3aihJJTU/OGpgcVkrMjwt
NHZ1I199Vy1iUUxCdWNNbAp6NlVaaXVDUE4oWE0yWmoocnVKR3tMeFZpR1UrdD9mIzlkIzxJNFR7
eXc5MTE0YCghZkE5IXBHNXApRyF0Zih8TWYKempnSGB3YW0tPk5UYygoa0AjRTdXZmc+RU56aTxq
RkRyKi1nPVg+YG1EOzh2ezdUJjVBVlRAXkFEb0heamUpKT5ACnp2cjVjdkhGUlEwLUVJcnd0fGg+
UGxrSXF8RjZ8PjFsT2p7OCVlc0xoTSEofk1VIy0jPU1YfVM+UlkwVlZsKXMoKQp6ZVRTa1phNCVB
dyNvQlRiT3hCQmlXUVFfRXNaaH1Nb3c9MXcrOChyNGRWbVA8Njc5cik9PlFNJmIldWRAaz1jVGQK
enY9U0I+VCkpeyZzRCg8Zm9aZCp3bkxjQlp0QyY9OT9kcTxUQ18wcHBQKChqI3Uwe2Q1NyhfQE1O
Q2dpJjBDUDU5CnpQZz8yJG93WFlEOVFaJUB0KnZ4IzQ3OU09bmp0TmZFK2olfjw3Uk53cTwxQU92
TEdUPGQ1MUoobT14Wm88bmdmcwp6ZVNrUVd5PjtLfEw8T1pPWC1mYXBLVFJvMU4+KEN2NGw+NlU/
akJ2TFBaJkshPXFgZjkxQ1ljfXFFWVo1QUBtKDcKekxUQj50QE17YTA5NmlpZmNZMWI1azdsX2V0
JndzNjBGO343MEFucyUtUUZQK0JtRzVPMS18NXMkZDRFdE1EM0k9Cno9T1QpczBGSmE5Y2VXWWRz
K1o+VmU5MnAkJDk5SEt5KjBhPlFAMTY5cEVGfCFCPDhQZk5SNjlHMiFWSX1NP2xfMQp6NXt9MUEx
SVk2WWFic08mTlZ5ZXJKdjtnSj9RZFZuN1h4ZnZtVGFjN0RvN0UkITtgU0t2fWxAc3V0fkdDRHc+
TGoKejBlbHBTMj9UemlJJSZWOUpDOzctTEBrSXYpUD5UVmtqMVFLVn5EVjBzVEdLazlrUkdxKTAy
cT4xd0dIfWRCRnNmCnpORTg3czt6YX4/JDRVOERGdkApbU9JVXhCZX5KNTJDNlFeNnUoTTtYMEl8
NUtgeF5WNG9jQjZ5bV5UOExMdyY8Pgp6XlF1KlBBQnwleXpiWEYhNl9oa29jc0k7VEFtSVFMcmJH
YnQyTD5gXys8PWx4JEYzKGFmUDRvYSgkdSoxeStkNVYKenstVjR8NEhvNyV1REZ1KGtyem1jQkZY
RElffHZKVzlISXFHPmRlVWtPXlZ6NVEmfU97SE9OTm89cXJPdTh2M31RCnpgMGVrPjJZNVNYLWJJ
eiheWnIlaVhHVCEhUW5CbVQ0M2wpPGtkRnpnZ015P2tqMEReYUVzRXMrTWBaKERmKzgkaAp6eCpJ
MDsycystWUl9LUtGRHxTfVdsQHx0OFNEUXN5MDdoMm07ayk5fXBxd3NvX1BjIzNaY2MxK3E4b0BM
ayhFXjkKejBzPHJ1Kmw1aDRTYkVuYmpoTmxOREJiPWZ7dVZMa1IzVGRBMyNAPGo3RGt5I3YkQE1P
PDdBQzVCRGV1bkRgWFE4Cno2MihJfFF+cn13X0FpYWl6UXFGZFNEKmp8ZyVSNms9cmxubCY2NnI5
QjB7RWBXQkA1aExXYU5xMGs4KFo4ZFluWAp6Tj5iOTV8SjZUREROOU9IKHZ7YkEoWC0/ZlowIVd4
QWdONDY1PiRZNDdeViRgMWZ+SEdBVWFhM0ZTZnJLNyhjUioKekdifCkod2Y3fkxOa0R4TUYlLV45
OFRwST9KRmQ7ck4rYnM8eXAtU29WdmZRQjB2Ynw7X3B7JlcoWGB7JkA+MkxsCnpWI2lIdDNuO29a
YDNCNDFYa3J9MS1uT21YeGtrK2pmdyROU2lfQGYtNTg5djVIQmlKPzV9XkRsdTxSV1k/Znhvbwp6
cWdpWkwhdFRLWjNgNG8yK0RkfVU2cjtFcFl1NGw8NHVPWnJhUnBUa3t7VWF0VTRsPVR1OWskS015
e2tASD91QDIKejEtNWxfRiM3ez5Qe2AyaEdLQ1dxYn4lZFN2azV7ZWBWUlkhYHM1QHx5JHk3akNp
cFBecmtfZilNT2xHPXJ9fjRNCnpVYi0oSDJVWnBhdGx5ciZ3PjhfdSNKREx5LWJaQnNjS1Vob3Uw
bU1Ien1Idk88UCs3IXpnbH0+RnBxQz9pLWEwZQp6RmZBKEBIKmpEZ2I1X3xtY1BhTWRGfTR2U0xh
OTlBSDRFVE4jWipKfEB1Ti0rPzNMS0tVKzw5cW9ocmZsXllBciYKeiVGQGhpb3JiWWtacG9jUW9H
bFh8M1JmeFZoYn40O1ZPZ3FZKG51Rno7I1VpYUx2UXpXKDlYXjNZdTFyUkFNSUt2CnpqPGZWVDQw
WHk5Rl56dDs1RHVlfE5oYWxPOUBWUWhVX3lYI1h3P0xoTUcpTFJwY3t6IUEzRWIqbHttO2tDUV58
eQp6bCFQYiU2cn0oSGZDcXA4ME1lRTlyNzNBalQyakNOKTt+PXRPRztBR2woZU5TRFA0Q2g4b1ZI
Oz5BRWZ4Rmw7MVEKekdNdTZ4eihCd3w9fUt5PnhGOzFgMFJJNUpRKDtgMFA1Q0cra3BxYTI+JG5z
TGVKTT1+P3ZWQk0+QlEheUdmWWUoCnpCa0srIT1sY1VuUzd0WSpVNE0pQFI3I2VgTGxrIXBYI3Fn
fUtqUG9ANEpsN1djTXhOV3NZbm8mRDBWYGcrKWtTYAp5Syo2d1YxSFRSVCh2OyZRaWJ4YSlpYlAw
Jjh2Iz0oTiZvQCtZeWNXa3hpcUNNRE45T0godi1CTmZCKUh9Ql9CYCMKCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2xvYWRlci9yZXNvdXJjZXMvaW1hZ2UxLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2xvYWRlci9yZXNvdXJjZXMvaW1hZ2UxLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGNkNjlkYzNjMmEwZDZhMTVlMDg5NjM3OTEwMzI1NGY1ZWFhMzRkYzEuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9sb2FkZXIvcmVzb3VyY2VzL2ltYWdlMS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNSArMCww
IEBACi08aHRtbD4KLTxib2R5PgotICA8aW1nIHNyYz0iLi4vLi4vaW1hZ2VzL3Jlc291cmNlcy9v
dmFsLnBuZyIgb25sb2FkPSJ3aW5kb3cub3BlbmVyLmltYWdlMUxvYWRlZCgpOyI+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9yZXNvdXJjZXMv
aW1hZ2UyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9yZXNvdXJjZXMvaW1hZ2UyLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMwMzdmZmYwY2U2NTY3NzdjYzAyZThh
ZTZjYzgxY2Y2ZWE0NDJhYWMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvcmVzb3VyY2VzL2ltYWdlMi5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsNSArMCwwIEBACi08aHRtbD4KLTxib2R5PgotICA8aW1nIHNyYz0i
Li4vLi4vaW1hZ2VzL3Jlc291cmNlcy9vdmFsLnBuZyIgb25sb2FkPSJ3aW5kb3cub3BlbmVyLmlt
YWdlMkxvYWRlZCgpOyI+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2xvYWRlci93aWxsc2VuZHJlcXVlc3QtcmV0dXJucy1udWxsLWZvci1tZW1vcnktY2Fj
aGUtbG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci93aWxsc2VuZHJl
cXVlc3QtcmV0dXJucy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE5OGY1M2YyNTdmZWVjOWVmYThjMThmNjZkMDQ4
M2JjMDdlYjBiNGQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvd2lsbHNlbmRyZXF1ZXN0LXJldHVybnMtbnVsbC1m
b3ItbWVtb3J5LWNhY2hlLWxvYWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSAr
MCwwIEBACi1yZXNvdXJjZXMvY29tcGFzcy5qcGcgLSB3aWxsU2VuZFJlcXVlc3QgPE5TVVJMUmVx
dWVzdCBVUkwgcmVzb3VyY2VzL2NvbXBhc3MuanBnLCBtYWluIGRvY3VtZW50IFVSTCB3aWxsc2Vu
ZHJlcXVlc3QtcmV0dXJucy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC5odG1sLCBodHRwIG1l
dGhvZCBHRVQ+IHJlZGlyZWN0UmVzcG9uc2UgKG51bGwpCi08dW5rbm93bj4gLSBkaWRGaW5pc2hM
b2FkaW5nCi1yZXNvdXJjZXMvY29tcGFzcy5qcGcgLSBkaWRSZWNlaXZlUmVzcG9uc2UgPE5TVVJM
UmVzcG9uc2UgcmVzb3VyY2VzL2NvbXBhc3MuanBnLCBodHRwIHN0YXR1cyBjb2RlIDA+Ci1yZXNv
dXJjZXMvY29tcGFzcy5qcGcgLSBkaWRGaW5pc2hMb2FkaW5nCi1yZXNvdXJjZXMvY2FjaGVkLWlt
YWdlLmh0bWwgLSB3aWxsU2VuZFJlcXVlc3QgPE5TVVJMUmVxdWVzdCBVUkwgcmVzb3VyY2VzL2Nh
Y2hlZC1pbWFnZS5odG1sLCBtYWluIGRvY3VtZW50IFVSTCB3aWxsc2VuZHJlcXVlc3QtcmV0dXJu
cy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC5odG1sLCBodHRwIG1ldGhvZCBHRVQ+IHJlZGly
ZWN0UmVzcG9uc2UgKG51bGwpCi1yZXNvdXJjZXMvY2FjaGVkLWltYWdlLmh0bWwgLSBkaWRSZWNl
aXZlUmVzcG9uc2UgPE5TVVJMUmVzcG9uc2UgcmVzb3VyY2VzL2NhY2hlZC1pbWFnZS5odG1sLCBo
dHRwIHN0YXR1cyBjb2RlIDA+Ci1yZXNvdXJjZXMvY29tcGFzcy5qcGcgLSB3aWxsU2VuZFJlcXVl
c3QgPE5TVVJMUmVxdWVzdCBVUkwgcmVzb3VyY2VzL2NvbXBhc3MuanBnLCBtYWluIGRvY3VtZW50
IFVSTCAobnVsbCksIGh0dHAgbWV0aG9kIEdFVD4gcmVkaXJlY3RSZXNwb25zZSAobnVsbCkKLXJl
c291cmNlcy9jb21wYXNzLmpwZyAtIGRpZEZhaWxMb2FkaW5nV2l0aEVycm9yOiA8TlNFcnJvciBk
b21haW4gTlNVUkxFcnJvckRvbWFpbiwgY29kZSAtOTk5LCBmYWlsaW5nIFVSTCAicmVzb3VyY2Vz
L2NvbXBhc3MuanBnIj4KLSAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci93
aWxsc2VuZHJlcXVlc3QtcmV0dXJucy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvd2lsbHNlbmRyZXF1ZXN0LXJldHVybnMtbnVsbC1mb3It
bWVtb3J5LWNhY2hlLWxvYWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTNj
YzBkNDQ4OWM5MGZjNGEwZTg1MzNmMjZmYTE1Y2NlZTZlMGE5MS4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2xvYWRlci93aWxs
c2VuZHJlcXVlc3QtcmV0dXJucy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotICAgIDxzY3JpcHQ+Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAg
ICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLndh
aXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcFJlc291cmNlTG9hZENh
bGxiYWNrcygpOwotICAgICAgICB9Ci0gICAgCi0gICAgICAgIGZ1bmN0aW9uIGxvYWRDYWNoZWRJ
bWFnZUluSUZyYW1lKCkKLSAgICAgICAgewotICAgICAgICAgICAgdmFyIGlmcmFtZSA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChpZnJhbWUpOwotICAgICAgICAgICAgaWZyYW1lLm9ubG9hZCA9IGZ1bmN0aW9u
KCkgewotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICAgICBpZnJhbWUuc3JjID0gInJlc291cmNlcy9jYWNoZWQtaW1hZ2UuaHRtbCI7Ci0gICAgICAg
IH0KLSAgICA8L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxpbWcgc3JjPSJyZXNvdXJj
ZXMvY29tcGFzcy5qcGciIG9ubG9hZD0ibG9hZENhY2hlZEltYWdlSW5JRnJhbWUoKSI+Ci08L2Jv
ZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9kaXNwbGF5LWltYWdlLXVuc2V0LWFsbG93cy1jYWNo
ZWQtaW1hZ2UtbG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hl
L2Rpc3BsYXktaW1hZ2UtdW5zZXQtYWxsb3dzLWNhY2hlZC1pbWFnZS1sb2FkLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42ZTE1YWFjMGM1MTVlODA1NmFiM2NjYzk1MTkwMzczMzI4ZjgzN2Y4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9kaXNwbGF5LWlt
YWdlLXVuc2V0LWFsbG93cy1jYWNoZWQtaW1hZ2UtbG9hZC1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwyIEBACitUZXN0IHRoYXQgV2ViS2l0RGlzcGxheUltYWdlc0tleSB1bnNldCBkb2VzIG5vdCBi
bG9jayBpbWFnZSBpbiBjYWNoZS4KK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FjaGUvZGlzcGxheS1pbWFnZS11bnNldC1hbGxvd3MtY2FjaGVkLWltYWdlLWxvYWQu
aHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvZGlzcGxheS1pbWFnZS11bnNldC1h
bGxvd3MtY2FjaGVkLWltYWdlLWxvYWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOGQ3MDNkNTA0ZWFhNDVi
M2Y0ZWZmZWQwYjQ3YjQ3N2U0ODE4ZmQ3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9jYWNoZS9kaXNwbGF5LWltYWdlLXVuc2V0LWFsbG93cy1jYWNoZWQtaW1hZ2Ut
bG9hZC5odG1sCkBAIC0wLDAgKzEsMzkgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorLy8g
T3BlbnMgdHdvIHdpbmRvd3MgY29udGFpbmluZyB0aGUgc2FtZSBpbWFnZS4gRmlyc3Qgd2luZG93
IHdpbGwgcG9wdWxhdGUgdGhlIGNhY2hlIHdpdGgKKy8vIGltYWdlLiBUaGUgc2Vjb25kIHdpbmRv
dyBpcyBvcGVuZWQgd2l0aCBXZWJLaXREaXNwbGF5SW1hZ2VzS2V5IHVuc2V0LCBidXQgaW1hZ2Ug
c2hvdWxkCisvLyBzdGlsbCBsb2FkIHNpbmNlIGl0IGlzIGluIGNhY2hlLgorZnVuY3Rpb24gcnVu
VGVzdCgpCit7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAg
ICAgICAgdGVzdFJ1bm5lci5zZXRDYW5PcGVuV2luZG93cygpOworICAgICAgICB0ZXN0UnVubmVy
Lm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0VXNlc1BhZ2VDYWNoZVByZWZlcmVuY2VLZXkiLCAx
KTsKKworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0JykuaW5uZXJIVE1M
ID0gJ0ZBSUxVUkU6IGltYWdlMS5odG1sIG5vdCBsb2FkZWQnOworICAgICAgICB3aW5kb3cub3Bl
bigicmVzb3VyY2VzL2ltYWdlMS5odG1sIiwgIl9ibGFuayIpOworICAgIH0KK30KKworZnVuY3Rp
b24gaW1hZ2UxTG9hZGVkKCkKK3sKKyAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgn
V2ViS2l0RGlzcGxheUltYWdlc0tleScsIDApOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdyZXN1bHQnKS5pbm5lckhUTUwgPSAnRkFJTFVSRTogaW1hZ2UyLmh0bWwgbm90IGxvYWRlZCc7
CisgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7d2luZG93Lm9wZW4oInJlc291cmNl
cy9pbWFnZTIuaHRtbCIsICJfYmxhbmsiKTt9LCAwKTsKK30KKworZnVuY3Rpb24gaW1hZ2UyTG9h
ZGVkKCkKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0JykuaW5uZXJIVE1M
ID0gJ1BBU1MnOworCQl0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30KKzwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorVGVzdCB0aGF0IFdlYktpdERpc3BsYXlJ
bWFnZXNLZXkgdW5zZXQgZG9lcyBub3QgYmxvY2sgaW1hZ2UgaW4gY2FjaGUuCis8ZGl2IGlkPSJy
ZXN1bHQiPkZBSUxVUkU6IFRlc3Qgc2NyaXB0IGRpZG4ndCBydW4uPC9kaXY+Cis8L2JvZHk+Cis8
L2h0bWw+CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvcmVzb3Vy
Y2VzL2NhY2hlZC1pbWFnZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9yZXNv
dXJjZXMvY2FjaGVkLWltYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzg5YTVlYWRkMTg3YmQ1OGYyYWFm
MjlmMDQwZjBhYTMyYzcyY2UxNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FjaGUvcmVzb3VyY2VzL2NhY2hlZC1pbWFnZS5odG1sCkBAIC0wLDAgKzEsNSBAQAor
PHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIu
c2V0V2lsbFNlbmRSZXF1ZXN0UmV0dXJuc051bGwodHJ1ZSk7Cis8L3NjcmlwdD4KKzxpbWcgc3Jj
PSIvbWlzYy9yZXNvdXJjZXMvY29tcGFzcy5qcGciIG9ubG9hZD0iY29uc29sZS5sb2coJ0ZBSUw6
IGltYWdlIHdhcyBpbmNvcnJlY3RseSBsb2FkZWQnKSI+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9pbWFnZTEuaHRtbCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvY2FjaGUvcmVzb3VyY2VzL2ltYWdlMS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNkODljZjVm
Y2NjN2QwZDE0YjY0MzliMjU4MDY3YTM5ZjliNmQ5ZmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9pbWFnZTEuaHRtbApAQCAtMCwwICsx
LDUgQEAKKzxodG1sPgorPGJvZHk+CisgIDxpbWcgc3JjPSIvbWlzYy9yZXNvdXJjZXMvY29tcGFz
cy5qcGciIG9ubG9hZD0id2luZG93Lm9wZW5lci5pbWFnZTFMb2FkZWQoKTsiPgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9yZXNvdXJj
ZXMvaW1hZ2UyLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3Jlc291cmNlcy9p
bWFnZTIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZTM3NjhjZWM3M2M4ZGNlNDc3YzhiYzRjZWQ0MDI1NTQ1
MTdmZWE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9y
ZXNvdXJjZXMvaW1hZ2UyLmh0bWwKQEAgLTAsMCArMSw1IEBACis8aHRtbD4KKzxib2R5PgorICA8
aW1nIHNyYz0iL21pc2MvcmVzb3VyY2VzL2NvbXBhc3MuanBnIiBvbmxvYWQ9IndpbmRvdy5vcGVu
ZXIuaW1hZ2UyTG9hZGVkKCk7Ij4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvd2lsbHNlbmRyZXF1ZXN0LXJldHVybnMtbnVsbC1mb3It
bWVtb3J5LWNhY2hlLWxvYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9j
YWNoZS93aWxsc2VuZHJlcXVlc3QtcmV0dXJucy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWVjMzU4ZGM2ODkyMjgyY2NjNGVhMzQzMzA2MzQyMmRj
NTM4ZDE5NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUv
d2lsbHNlbmRyZXF1ZXN0LXJldHVybnMtbnVsbC1mb3ItbWVtb3J5LWNhY2hlLWxvYWQtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsOSBAQAoraHR0cDovLzEyNy4wLjAuMTo4MDAwL21pc2MvcmVzb3Vy
Y2VzL2NvbXBhc3MuanBnIC0gd2lsbFNlbmRSZXF1ZXN0IDxOU1VSTFJlcXVlc3QgVVJMIGh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZywgbWFpbiBkb2N1bWVu
dCBVUkwgKG51bGwpLCBodHRwIG1ldGhvZCBHRVQ+IHJlZGlyZWN0UmVzcG9uc2UgKG51bGwpCito
dHRwOi8vMTI3LjAuMC4xOjgwMDAvbWlzYy9yZXNvdXJjZXMvY29tcGFzcy5qcGcgLSBkaWRSZWNl
aXZlUmVzcG9uc2UgPE5TVVJMUmVzcG9uc2UgaHR0cDovLzEyNy4wLjAuMTo4MDAwL21pc2MvcmVz
b3VyY2VzL2NvbXBhc3MuanBnLCBodHRwIHN0YXR1cyBjb2RlIDIwMD4KK2h0dHA6Ly8xMjcuMC4w
LjE6ODAwMC9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZyAtIGRpZEZpbmlzaExvYWRpbmcKKzx1
bmtub3duPiAtIGRpZEZpbmlzaExvYWRpbmcKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9jYWNoZS9y
ZXNvdXJjZXMvY2FjaGVkLWltYWdlLmh0bWwgLSB3aWxsU2VuZFJlcXVlc3QgPE5TVVJMUmVxdWVz
dCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAwL2NhY2hlL3Jlc291cmNlcy9jYWNoZWQtaW1hZ2Uu
aHRtbCwgbWFpbiBkb2N1bWVudCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAwL2NhY2hlL3dpbGxz
ZW5kcmVxdWVzdC1yZXR1cm5zLW51bGwtZm9yLW1lbW9yeS1jYWNoZS1sb2FkLmh0bWwsIGh0dHAg
bWV0aG9kIEdFVD4gcmVkaXJlY3RSZXNwb25zZSAobnVsbCkKK2h0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9jYWNoZS9yZXNvdXJjZXMvY2FjaGVkLWltYWdlLmh0bWwgLSBkaWRSZWNlaXZlUmVzcG9uc2Ug
PE5TVVJMUmVzcG9uc2UgaHR0cDovLzEyNy4wLjAuMTo4MDAwL2NhY2hlL3Jlc291cmNlcy9jYWNo
ZWQtaW1hZ2UuaHRtbCwgaHR0cCBzdGF0dXMgY29kZSAyMDA+CitodHRwOi8vMTI3LjAuMC4xOjgw
MDAvbWlzYy9yZXNvdXJjZXMvY29tcGFzcy5qcGcgLSB3aWxsU2VuZFJlcXVlc3QgPE5TVVJMUmVx
dWVzdCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAwL21pc2MvcmVzb3VyY2VzL2NvbXBhc3MuanBn
LCBtYWluIGRvY3VtZW50IFVSTCAobnVsbCksIGh0dHAgbWV0aG9kIEdFVD4gcmVkaXJlY3RSZXNw
b25zZSAobnVsbCkKK2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9taXNjL3Jlc291cmNlcy9jb21wYXNz
LmpwZyAtIGRpZEZhaWxMb2FkaW5nV2l0aEVycm9yOiA8TlNFcnJvciBkb21haW4gTlNVUkxFcnJv
ckRvbWFpbiwgY29kZSAtOTk5LCBmYWlsaW5nIFVSTCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL21p
c2MvcmVzb3VyY2VzL2NvbXBhc3MuanBnIj4KKyAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL2NhY2hlL3dpbGxzZW5kcmVxdWVzdC1yZXR1cm5zLW51bGwtZm9yLW1lbW9yeS1j
YWNoZS1sb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL3dpbGxzZW5kcmVx
dWVzdC1yZXR1cm5zLW51bGwtZm9yLW1lbW9yeS1jYWNoZS1sb2FkLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
YjIzNGI5N2Q0Y2NjZTZkYTdjMmM0MjI2ZmFkYmRiYTBkYjcyNGI3MwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvd2lsbHNlbmRyZXF1ZXN0LXJldHVybnMt
bnVsbC1mb3ItbWVtb3J5LWNhY2hlLWxvYWQuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAg
ICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICAgICAgdGVzdFJ1
bm5lci5kdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKCk7CisgICAgICAgIH0KKyAgICAKKyAgICAg
ICAgZnVuY3Rpb24gbG9hZENhY2hlZEltYWdlSW5JRnJhbWUoKQorICAgICAgICB7CisgICAgICAg
ICAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgICAg
ICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcmFtZSk7CisgICAgICAgICAgICBp
ZnJhbWUub25sb2FkID0gZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmcmFtZS5zcmMgPSAicmVzb3VyY2VzL2NhY2hl
ZC1pbWFnZS5odG1sIjsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
CisgICAgPGltZyBzcmM9Ii9taXNjL3Jlc291cmNlcy9jb21wYXNzLmpwZyIgb25sb2FkPSJsb2Fk
Q2FjaGVkSW1hZ2VJbklGcmFtZSgpIj4KKzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="223286"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
      

    </bug>

</bugzilla>